我有一台家庭服务器,带有内置网卡,华擎E350M1主板。计算机上有一个 SSD 上的 Debian Jessie 系统,以及 4 个采用 raid 配置的 HDD,用于保存我的数据。我通常可以通过 SSH 访问该计算机。除非出现问题,否则我不需要对其进行物理访问。
最近我的网络开始出现问题。有时计算机可以启动,但我无法通过 SSH 访问它。连接到我的网络需要很长时间。但这并不总是发生!昨天我花了两个多小时试图让它连接到我的网络,但它不起作用! ping 我的路由器给出了network is unreachable
。然后突然又起作用了!
因此,我将屏幕和键盘挂在那里,并开始调查。当网络出现故障时:
我的网络硬件 (eth0) 使用热插拔和 DHCP 来查找我的网络。这是 Debian 的默认行为。
该命令
cat /etc/resolv.conf
返回我的路由器的 IP (192.168.1.1)。该命令
ifconfig -a
仅返回 IPv6 IP。没有 IPv4!该命令
route -n
返回一个与我的子网无关的错误IP地址(169.254.0.0)尝试添加我的路由器网关 (
sudo route add default gw 192.168.1.1
) 失败,并显示“SIOCADDRT:网络无法访问”。根本没有设置防火墙!
网卡信息;该命令
lspci | grep -i eth
返回:09:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd, RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
已安装非免费固件。
这件事让我发疯!你会怎么办?我如何知道这是硬件问题还是软件问题?
答案1
查看输出,dmesg
如果存在硬件/驱动程序/固件问题,您应该在那里找到一些提示(警告/错误)。
您可以尝试从 live-CD(或 USB)启动,例如https://www.debian.org/CD/live/。
如果工作正常那就是配置问题。
答案2
在界面上使用mii-tool
或ethtool
来查看 Linux 是否可以判断以太网卡正在工作,以及该卡的连接方式(速度、全双工或半双工等)。另外,检查布线。 (重新)安装所有插头。查看路由器和以太网卡上的连接指示灯。如果可以的话,他们将电缆连接到另一台计算机上。