当Linux操作系统出现网络故障时,应该从系统的硬件和软件两个方面进行排查,从系统的硬件和软件两个方面进行排查。详细描述了失败的解决方案。
1。检查网线和网卡
到机房检查网线两端的灯是否亮。对于普通的服务器,如果绿灯常亮是正常的,交换机的绿灯闪烁表示正在传输数据。可以使用命令ethtoolethX查看网卡链路是否物理连通。其中,speed为当前网卡的速度,为千兆网卡;Duplex表示当前网络支持全双工;linkdetected表示当前网卡与网络的物理连接状态,yes表示正常。通常网络速度和全/半双工状态在主机和网络协议提供商之间自动协商。
2.确认网线连接好后,查看物理网卡
ifconfig可以看到加载成功的网卡,使用ethtool-iethX查看网卡驱动,lspci可以看到所有连接的设备到pci总线,lsmod显示所有加载的模块,加载成功的模块也会显示在/proc/modules中。一般情况下,加载网卡成功后,可以使用ifconfig查看。如果找不到网卡,应检查物理网卡是否连接到pci总线。如果lspci检测不到,网卡可能坏了。另一种情况是网卡模块没有加载,先去lspci找到对应的厂商和型号:EthernetController,然后用modprobe尝试加载正确的模块,比如modprobe3c509。如果出现错误,则该模块不存在。此时应该找到并重新编译正确的模块。3。网卡物理层没有问题后,查看网卡配置
可以用ifconfig查看IP、掩码等信息,永久修改/etc/sysconfig/中的网卡信息network-scripts/ifcfg-ethX(有些Linux发行版不一定有这个文件名,但路径类似,上层的network文件就是修改hostname)。该文件也是放置DNS的正确位置。修改后重启网络。4。查看路由表是否正确
用route-n查看内核路由表,通过route命令查看内核路由,查看具体网卡是否连接到目标网络的路由,然后尝试PING网关。检查与网关的连接。如果您无法ping网关,则可能是网关正在限制ICMP数据包或交换机设置有问题。一个很常见的问题:两块网卡分别提供内网和外网服务。如果默认网关是内网卡,则无法访问外网服务。在这种情况下,您需要使用routedelete/adddefaultgw命令删除并添加默认网关。5。检查DNS
可以在/etc/resolve.conf文件中看到指定的域名服务器,但是这里不能修改这个文件。修改后会自动生成networkManager文件,所以去etc/sysconfig/network-scripts/ifcfg-ethX中修改。6。检查路由和主机是否通畅
当远程主机无法连接时,应该如何追踪路由。traceroute命令是用来跟踪从发送主机到目的主机所经过的网关的工具。traceroute命令常用的参数选项如下:- -i指定网络接口,对多个网络接口有用。例如-ieth1或-ippp1等。
- -m将在传出探测数据包中使用的最大生命周期设置为max-ttl转发,默认值为30。
- -n显示IP地址,不查找主机名。这个参数经常在DNS不工作的时候使用;它也可以用于检查时排查DNS问题。