我希望有人能为我指明正确的方向,以便设置我的 Linux(Ubuntu 12.04)盒以将流量从 eth0 路由到 wlan0。我将尝试解释我试图解决的问题:
我目前有两个独立的网络:
[RaspberryPi/eth0] 192.168.2.2 / 255.255.255.0
^
|
v
[Ubuntu/eth0] 192.168.2.1 / 255.255.255.0
和:
[Ubuntu/wlan0] 192.168.1.100 / 255.255.255.0
^
|
v
[ADSL router] 192.168.1.1 / 255.255.255.0
因此,目前如果我想访问 RaspberryPI,我可以从 Ubuntu 盒子通过 SSH 连接到 PI。如果我想使用互联网,我可以从 Ubuntu 盒子获得完全访问权限,但无法从 RaspberryPI 获得任何访问权限 - 这两个网络是分区的。
我想要做的是进行配置,以便 RaspberryPI 可以通过 Ubuntu 盒子访问互联网并连接到互联网。
我尝试创建一个桥接器,但收到消息“wlan0:不支持操作”(无线芯片组是 Ralink RT3062)。
我确信在这个配置下让 Raspberry PI 访问互联网应该很容易,但我有点迷茫——有人能给我指出正确的方向吗?
答案1
以 root 身份在你的 ubuntu 上执行此操作以打开 MASQ wlan0
,然后 rasperry pi 的路由应该可以正常工作
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
/sbin/iptables -A FORWARD -i wlan0 -o eth0 -m state
--state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A FORWARD -i eth0 -o wlan0 -j ACCEPT
启动时启动转发和 MASQ
在/etc/sysctl.conf中:
net.ipv4.ip_forward = 1
创建 iptables 配置(应用上述 iptables 命令后)
iptables-save > /etc/iptables_masq.rules
然后,在 /etc/network/interfaces 的“iface eth0”部分下:
pre-up iptables-restore < /etc/iptables_masq.rules