我正在运行带有双网卡的 Ubuntu 14.04。我发现一个问题,其中一个网卡似乎不想使用它的默认网关来路由流量。一个网卡使用公共 IP 地址运行,另一个在 LAN 内运行。eth0 运行正常。
以下是 /etc/network/interfaces 的输出
auto eth0 iface eth0 inet static address X.X.X.71 netmask 255.255.255.0 network X.X.X.0 broadcast 1.1.1.255 gateway X.X.X.1 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 8.8.8.8
auto eth1 iface eth1 inet static address 10.2.8.13 netmask 255.255.255.0 network 10.2.8.0 broadcast 10.2.8.255 gateway 10.2.8.254 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 10.2.14.5 10.2.14.6
服务器可以通过 eth1 顺利 ping 通默认网关,但当我跟踪路由到 8.8.8.8 时,服务器似乎甚至没有尝试使用为 eth1 配置的网关
user@myserver:~$ sudo traceroute -i eth1 8.8.8.8 traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets 1 * * * 2 * * * 3 * * * 4 * * * 5 * * * 6 *^Z [8]+ Stopped sudo traceroute -i eth1 8.8.8.8
最初我怀疑是防火墙或路由问题,但查看此跟踪路由后,我相信是服务器的问题,因为它不会向其 DG 发送外部地址请求。该私有 IP 空间内的其他地址在访问外部网络时均没有问题,而且我已检查各个 ACL 是否阻止了该 IP
编辑:进一步研究后发现,似乎您实际上无法为每个接口设置一个默认网关。默认网关是为整个系统设置的。有没有办法解决这个问题,或者双网络接口通常如何配置?