我的设置是调制解调器 – > Linksys路由器 – >笔记本电脑与2设备(wlan0 / eth0) – >台式机
路由器是192.168.1.1网关笔记本电脑wlan0是192.168.1.4与gw 192.168.1.1笔记本电脑eth0是192.168.2.254作为第二个网关桌面是192.168.2.100
在笔记本电脑上,我设置ip_forward为1,并插入了2个iptables规则
-A FORWARD -i eth0 -o wlan0 -j ACCEPT -A FORWARD -i wlan0 -o eth0 -j ACCEPT
笔记本电脑可以ping通外网(我,e,yahoo.com)它不能ping 192.168.2.100。 桌面可以ping 192.168.2.254,但不在networking或192.168.1.0子网外。
在笔记本ip route show列表:
192.168.2.0/24 dev eth0 proto kernel scope link src 192.168.2.254 192.168.1.0/24 dev wlan0 proto kernel scope link src 192.168.1.4 127.0.0.0/8 dev lo scope link default via 192.168.1.1 dev wlan0
我错过了什么让我的桌面通过笔记本电脑,以访问提供访问互联网的路由器?
谢谢
如果您只想在笔记本电脑上透明传输stream量,则可以使用桥接。 这样,Linksys会将IP分配给您的桌面,并且您的桌面只能被路由一次才能访问互联网。
不过,你可以用iptables过滤笔记本电脑上的数据,如果这是你想要的。
http://www.linuxfoundation.org/collaborate/workgroups/networking/bridge
直接连接到桌面的笔记本电脑无法ping通桌面,但您的桌面可以ping您的笔记本电脑? 换句话说,A-> B有效,但是B-> A没有?
你可能还需要设置一些SNAT或伪装。 我的直觉是,数据包被转发到192.168.2.100来源的路由器,但路由器不知道该怎么做,因为它只是直接连接到192.168.1.0/24。 也许你的路由器上的所有192.168.2.0/24stream量通过笔记本电脑的静态路由。
所以,基本上你正在使用笔记本电脑上的无线连接到路由器/互联网,并且想要“共享”与桌面的连接。 正如吉时指出的那样,这正是“搭桥”的意义所在。
如果你喜欢单独的子网,那么你需要使iptables做networking地址转换( NAT )。 Iptables可以做到这一点..这是一个教程 。 开始之前,确保笔记本电脑可以做你需要在互联网上的一切。
但是,除非这是为了学习练习,否则我build议您购买台式机的无线适配器。 他们并不昂贵,安装简单(特别是USB的)。