Ubuntu Server 14.04.1 静态 IP 中断互联网

Ubuntu Server 14.04.1 静态 IP 中断互联网

我正在尝试通过 /etc/network/interfaces 设置具有静态 IP 的 Ubuntu Server 14.04.1

当输入

auto eth0
iface eth0 inet dhcp

我从 DHCP 服务器获取 IP 10.10.10.228,并且可以 ping 8.8.8.8 和 google.ca

当我修改条目为

auto eth0
iface eth0 inet static
address 10.10.10.116
netmask 255.255.255.0
network 10.10.10.0
broadcast 10.10.10.255
gateway 10.10.10.1
dns-nameservers 8.8.8.8 8.8.4.4

并通过执行以下操作来刷新网络接口

sudo ifdown eth0 && sudo ifup eth0

我仍然可以 ping 通我的网关 10.10.10.1 和其他设备,如 LAN 打印机、服务器、PC。但是,我无法 ping 通任何公共地址,如 4.2.2.2 或 8.8.8.8,也无法 ping google.ca。当我切换回 dhcp 时,互联网又可以正常工作了。

我检查了 route -n 和 ip route,发现 static 和 dhcp 都给出了相同的读数。我不太清楚为什么它不起作用。

编辑:这是路线 -n 输出

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.10.10.1      0.0.0.0         UG    0      0        0 eth0
10.10.10.0      0.0.0.0         255.255.255.0   U     0      0        0 eth0

这是 ip route 的输出

default via 10.10.10.1 dev eth0
10.10.10.0/24 dev eth0  proto kernel  scope link  src 10.10.10.116

在我看来还不错,但是不起作用。

任何想法都将不胜感激。

答案1

使用 DHCP 和静态地址之间的区别在于,这里讨论的“网关”框知道在使用 DHCP 时设置 NAT(网络地址转换)表,因为它知道它为您的主机提供的 IP 地址。使用静态分配的地址,“网关”不会更新其 NAT 表。因此,虽然数据包可能被成功转发到互联网外部,但网关不知道如何处理返回/回复数据包,因为其 NAT 未配置。

因此,我们需要配置网关盒以使用 .116 地址的 NAT。如果网关是标准接入点,它们通常允许通过其 Web 配置界面通过 MAC(媒体访问控制器)地址进行静态 IP 配置:为其提供 .116 地址和(.116 主机的)MAC 地址(使用标题为“HWaddr”的“ifconfig”命令显示),并将主机重新设置为 DHCP,这样您的主机将拥有网关知道的 NAT 静态 IP 地址。

答案2

我实际上通过关机命令关闭了服务器并重新启动了它,现在静态 IP 可以正常工作了。我以为使用重新启动命令就足够了。不太清楚发生了什么,但它现在可以正常工作了。

相关内容