这个问题大约在 4 或 5 天前才出现。我运行的是 Ubuntu 12.04 桌面版,运行大约 12 小时后,环回设备似乎停止工作了。如果我执行 ifconfig,它似乎仍然存在,但如果我 ping localhost 或 127.0.0.1,则都会失败。此外,ping 已知 DNS 地址 (www.google.com) 会失败。但通过 IP 进行 ping 可以正常工作。
其余网络功能似乎没有受到影响。我仍然可以从我的 Windows 机器访问 Samba 共享。此外,我运行的 Apache 服务器仍然可以从外部世界访问。查看资源监视器,发生这种情况时 CPU 和内存使用率似乎正常。
如果我重新启动机器,一切都会恢复正常。大约 12 小时后,这种情况就会再次发生。您知道是什么原因导致的,或者如何诊断吗?谢谢。
编辑:我运行了推荐的诊断命令。以下是输出。不过我真的看不懂。有什么异常吗?
~$ IP 地址 1:lo:mtu 16436 qdisc 无队列状态未知 链路/环回 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 范围主机 lo inet6 ::1/128 范围主机 valid_lft 永远 preferred_lft 永远 2:eth0:mtu 1500 qdisc pfifo_fast 状态UP qlen 1000 链路/以太 00:1b:fc:64:dc:82 brd ff:ff:ff:ff:ff:ff inet 192.168.1.132/24 brd 192.168.1.255 范围全局 eth0 inet6 fe80::21b:fcff:fe64:dc82/64 范围链接 valid_lft 永远 preferred_lft 永远 ~$ netstat -rn 内核 IP 路由表 目标网关 Genmask 标志 MSS 窗口 irtt Iface 0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0 169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 ~$ getent 主机 localhost 127.0.0.1 本地主机 ~$ ping 127.0.0.1 PING 127.0.0.1 (127.0.0.1) 56(84)字节数据。 ^C --- 127.0.0.1 ping 统计 --- 已发送 572 个数据包,已接收 0 个数据包,100% 数据包丢失,耗时 575551 毫秒 ~$ ping6 ::1 PING ::1(::1) 56 个数据字节 64 字节来自 ::1: icmp_seq=1 ttl=64 时间=0.020 毫秒 64 字节来自 ::1: icmp_seq=2 ttl=64 时间=0.023 毫秒 64 字节来自 ::1: icmp_seq=3 ttl=64 时间=0.025 毫秒 64 字节来自 ::1: icmp_seq=4 ttl=64 时间=0.021 毫秒 64 字节来自 ::1: icmp_seq=5 ttl=64 时间=0.028 毫秒 64 字节来自 ::1: icmp_seq=6 ttl=64 时间=0.025 毫秒 64 字节来自 ::1: icmp_seq=7 ttl=64 时间=0.023 毫秒 64 字节来自 ::1: icmp_seq=8 ttl=64 时间=0.026 毫秒 64 字节来自 ::1: icmp_seq=9 ttl=64 时间=0.021 毫秒 64 字节来自 ::1: icmp_seq=10 ttl=64 时间=0.028 毫秒 ^C --- ::1 ping 统计 --- 已发送 10 个数据包,已接收 10 个数据包,0% 数据包丢失,耗时 8998 毫秒 rtt 最小值/平均值/最大值/mdev = 0.020/0.024/0.028/0.002 毫秒 〜$ ifconfig eth0 链路封装:以太网 HWaddr 00:1b:fc:64:dc:82 inet 地址:192.168.1.132 Bcast:192.168.1.255 掩码:255.255.255.0 inet6 地址:fe80::21b:fcff:fe64:dc82/64 范围:链接 上行广播运行多播 MTU:1500 度量:1 RX 数据包:5537467 错误:0 丢弃:0 超限:0 帧:0 TX 数据包:7700200 错误:0 丢弃:0 超限:0 载波:0 碰撞:0 txqueuelen:1000 RX字节:2390500721(2.3 GB)TX字节:8274946292(8.2 GB) 中断:23 基址:0x4000 lo 链路封装:本地环回 inet 地址:127.0.0.1 掩码:255.0.0.0 inet6 地址:::1/128 范围:主机 上行环回运行 MTU:16436 度量:1 RX 数据包:1441430 错误:0 丢弃:0 超限:0 帧:0 TX 数据包:1441430 错误:0 丢弃:0 超限:0 载波:0 碰撞:0 txqueuelen:0 RX 字节数:2084259522 (2.0 GB) TX 字节数:2084259522 (2.0 GB)
答案1
我可以通过将 Squeeze 中当前的内核从 2.6.32-5 升级到 Wheezy 中当前的 3.2.0-4 来解决我的 Debian 机器上的这个问题。
如果您无法更新内核,我已经能够通过告诉它们通过 IPv6 而不是 IPv4 访问本地 DNS 解析器来解决我的两台服务器上的此问题。这是我的resolv.conf
:
search example.com
nameserver ::1
这不是一个完美的解决办法,但暂时来说已经足够了。