我正在尝试使用我的 Ubuntu 服务器设置 wifi 接入点。我遇到了一些问题,无法让一切正常工作。主要问题似乎出在路由或 iptables 上,但我不能肯定。
我的网络设置如下;
服务器是 NS01(Ubuntu 11.10 服务器 amd64)
接口:eth0(主)、br0(桥接 eth1 和 wlan0)和 tun0(OpenVPN)。
什么有效:当我将接入点联机时,网桥就会启动,并且我的笔记本电脑可以通过电话从我的 DHCP 服务器获取 IP 地址租约。
不起作用的地方:当我尝试从我的工作站 ping 新主机(我的手机或笔记本电脑)时,我收到了回复Destination host unreachable icmp_seq=1
。我已经检查了 iptables,我很确定它工作正常,我已将 INPUT 和 OUTPUT 设置为 ACCEPT,因此 iptables 非常宽容。
我认为这是一个路由问题,但路由表对我来说看起来“正常”。
有人能给我一些我可能需要看的东西的见解吗,我已经快要让这个东西工作了。
答案1
由于您的网络是扁平的,因此您不需要 iptables(您可能需要,但我不这么认为)。首先要确保您的内核将通过检查以下内核参数转发 ipv4 数据包:
cat /proc/sys/net/ipv4/ip_forward
您将得到 1 或 0,1 表示已启用转发。如果得到 0,请尝试运行以下命令:
echo 1 > /proc/sys/net/ipv4/ip_forward
然后尝试再次从客户端 ping。如果仍然不起作用,我会在 Ubuntu 桥接机上打开两个终端,并在每个接口上运行 tcpdump 来监听 icmp:
1号航站楼
tcpdump -i eth0 icmp
2 号航站楼
tcpdump -i br0 icmp
然后尝试从工作站内部接口 ( eth0 10.0.0.15
) 执行 ping 操作,看看是否看到数据包到达两个接口。您可能需要进行一些调整,brctl
但由于网络是扁平的,因此您不需要任何特定路由。我还会检查以确保您的 wifi 卡处于正确的模式,可能是基础设施或可能是临时模式iwconfig
。虽然这看起来很奇怪,但使用不同的网络和一些 iptables/routing foo 可能更容易做到这一点,至少它可以更容易地识别流量被丢弃的位置。