每天一次,eth0 上的网络都会出现故障,我们需要执行 sudo ifdown eth0; sudo ifup eth0 来恢复网络。
这是系统日志:
Feb 11 12:48:01 www-tech-1 dhclient: DHCPREQUEST of address> on eth0 to 131.121.113.228 port 67
Feb 11 12:52:35 www-tech-1 dhclient: DHCPREQUEST of address> on eth0 to 131.121.113.228 port 67
Feb 11 12:56:23 www-tech-1 dhclient: DHCPREQUEST of address> on eth0 to 131.121.113.228 port 67
Feb 11 13:00:28 www-tech-1 dhclient: DHCPREQUEST of address> on eth0 to 131.121.113.228 port 67
Feb 11 13:04:29 www-tech-1 dhclient: DHCPREQUEST of address> on eth0 to 131.121.113.228 port 67
Feb 11 13:09:16 www-tech-1 dhclient: DHCPREQUEST of address> on eth0 to 131.121.113.228 port 67
Feb 11 13:13:53 www-tech-1 dhclient: DHCPREQUEST of address> on eth0 to 131.121.113.228 port 67
Feb 11 13:18:16 www-tech-1 dhclient: DHCPREQUEST of address> on eth0 to 131.121.113.228 port 67
Feb 11 13:22:25 www-tech-1 dhclient: DHCPREQUEST of address> on eth0 to 131.121.113.228 port 67
Feb 11 13:26:52 www-tech-1 dhclient: DHCPREQUEST of address> on eth0 to 131.121.113.228 port 67
Feb 11 13:30:44 www-tech-1 dhclient: DHCPREQUEST of address> on eth0 to 131.121.113.228 port 67
Feb 11 13:31:49 www-tech-1 dhclient: There is already a pid file /var/run/dhclient.eth0.pid with pid 3198
Feb 11 13:31:49 www-tech-1 dhclient: Listening on LPF/eth0/00:e0:81:49:fc:e0
Feb 11 13:31:49 www-tech-1 dhclient: Sending on LPF/eth0/00:e0:81:49:fc:e0
Feb 11 13:31:49 www-tech-1 dhclient: DHCPRELEASE on eth0 to 131.121.113.228 port 67
Feb 11 13:31:49 www-tech-1 dhclient: There is already a pid file /var/run/dhclient.eth0.pid with pid 134519072
Feb 11 13:31:50 www-tech-1 dhclient: Listening on LPF/eth0/00:e0:81:49:fc:e0
Feb 11 13:31:50 www-tech-1 dhclient: Sending on LPF/eth0/00:e0:81:49:fc:e0
Feb 11 13:31:52 www-tech-1 dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 8
Feb 11 13:31:52 www-tech-1 dhclient: DHCPREQUEST of 131.121.14.17 on eth0 to 255.255.255.255 port 67
Feb 11 13:31:53 www-tech-1 kernel: [265383.991682] eth0: no IPv6 routers present
请检查此系统日志的最后一部分。
有人能帮助我吗?
答案1
我认为这与服务器有关,因为它位于 SF 上。
您确实应该为服务器使用静态 IP 地址。尝试使用 netconfig(从终端运行)为您的机器设置静态 IP。您还应该查看用作 DHCP 服务器的任何设备的 DHCP 设置。为您的服务器设置一个例外,即新的静态 IP。
答案2
您从 IP 地址“131.121.113.228”开始。对该地址的请求似乎没有得到答复,然后 DHCP 释放,最后您得到地址“131.121.14.17”。
您是否手动执行了 DHCP 释放?如果没有,您可能会遇到以下几种不同的情况:
- DHCP 服务器的稳定性如何?它是否能够可靠地响应请求?
- DHCP 服务器公布的租用时间可能异常短。
- 您的 DHCP 服务器可能在其范围内没有足够的可用 IP 地址。
- 您可能有多个 DHCP 服务器在分发地址。客户端从其获得地址的第一个服务器未能响应原始地址的请求,这可能是它最终获得新地址的原因。
如果您的网络未使用 IPv6,则禁用它也是好主意。这可能会提高性能。
答案3
您使用什么 DHCP 服务器?当从 GNU/Linux 机器提供 DHCP 时,我遇到了一些非常棘手的问题,即 DHCP 租约并不总是能正确更新。使用 BSD、Solaris 或设备(人们期望它们内部有 GNU/Linux)DHCP 服务器时,我没有遇到同样的问题。无论哪种方式,我现在倾向于避免在较小的受控网络中使用 DHCP。如果它不是必需的功能(例如支持最终用户的便利性),我建议不要部署它。