我遇到了与这位发帖者相同的问题: 在 ubuntu linux 12.10 中桥接两个网络接口并能够从该机器访问它 并将感谢任何有关如何调试的帮助。
我假设具有单个端口(eth2)的网桥的工作方式应与没有网桥的 eth2 的工作方式相同。
系统:Debian Linux(Wheezy)64 位,单 NIC,Belkin 无线路由器。
我的/etc/network/interfaces:
auto lo
iface lo inet loopback
iface eth2 inet manual
auto br0
iface br0 inet dhcp
bridge_ports eth2
bridge_maxwait 0
bridge_stp off
bridge_waitport 0
bridge_fd 0
启动 br0 后,当我尝试 ping WAN 主机时,ping 命令会一直挂起,直到我将其终止。我可以这样做
# dig google.com
并且一切正常,我可以成功 ping dig 返回的数字 IP 地址。
@MariusMatutiae:尝试添加 dns-nameservers 行,但没有任何效果。这可能是因为 ifup 导致 /etc/resolv.conf 被 192.168.2.1(路由器的 DNS 服务器地址)覆盖。不过,这可能是个幌子。如果我这样做
# dig google.com
它仍然给出了正确的答案。事实上,如果我编辑 /etc/resolv.conf 并删除所有名称服务器条目,那么
# dig @192.168.2.1 google.com
仍然给出了正确的答案。那么,如果 dig 可以做到,为什么 ping 不通呢?
答案1
您忘记包含 DNS 名称服务器,但您必须提供该服务器,因为您的桥接器不是路由器的 DHCP 客户端。
在 /etc/network/interfaces 中,始终在 br0 节中,包含以下行
dns-nameservers 8.8.8.8 8.8.4.4
或者任何你喜欢的