Linux下网络故障诊断
| 导读 | 由于实现网络服务器的层次结构比较多,因此当网络出现故障时,解决起来比较复杂。下面由我来为大家详细介绍Linux系统中可能出现的一些网络问题,如网卡硬件问题、网络配置问题、驱动程序问题,以及网络层、传输层、应用层问题等。 |
网卡故障可以分为硬件故障和软件故障,判断硬件故障最简单的方法是把该网卡插到其它计算机上使用,如果还是老毛病则网卡损坏,否则网卡正常。实际情况下,大部分网卡出现的故障都属于软件故障,软件故障一般分为两类:一类为设置故障;一类为驱动程序故障。
[root@localhost ~]#dmesg | grep eth
eth0:registered as PCnet/PCI II 79C970A
eth0:link up
eth0:no IPv6 routers present
[root@localhost ~]#
以上命令列出了引导信息中包含eth字符串的行,如果出现类似与“eth0:link up”的提示,表示Linux已经检测到了网卡,并处于正常工作状态。还有一条lspci命令可以列出系统检测到所有PCI设备,如果使用的网卡是PCI总线的,应该能看到这块网卡的信息。最后可以用ethtool查看以太网的链路连接是否正常。
[root@localhost ~]#ethtool eth0
Settings for eth0:
Current message level: 0x00000007 (7)
Link detected:yes
[root@localhost ~]#
如果看到“Link detected:yes”一行,表明网卡也对方的网络线路连接是正常的。
在RHEL 6中,需要先查看或者设置/etc/modeprobe.cong文件,它包含了有关模块的安装和别名信息。
[root@localhost ~]#more /etc/modeprobe.cong
alias scsi_hostadapter mptbase
...
alias eth0 pcnet32
[root@localhost ~]#
以上显示中,最后一行“alias eth0 pcnet32”表示为pcnet32定义了一个别名eth0,也就是说,目前使用的以太网卡接口eth0对应的模块是pcnet32,可以使用一下命令当前系统装载的模块中是否有pcnet32模块。
[root@localhost 2.6.18-8.e15]#lsmod | grep pcnet32
pcnet32 35269 0
mii 9409 1 pcnet32
[root@localhost 2.6.18-8.e15]#
可以发现,pcnet32已经安装。因此,如果网卡已经被Linux检测到,但执行“ipconfig -a”命令时却看不到eth0接口,可以按照以上方法把网卡的驱动程序模块找到,再看看这个模块是否已经安装。
网络层问题诊断方法很简单,就是直接ping外网的某一个域名或者IP,能正常连通的,则说明网络层没有问题。 引起ping不同的原因很多,可能会是网络线路、网络设置、路由和ARP等问题。建议先ping一下网关,看是否能通,如果与网关能通,一般就表明网络线路、自己机子的网络设置和ARP都没有问题。可以通过命令“route -n”显示路由表,然后得到网关的地址。如果路由表中没有设置默认网关,则表明路由设置有问题,此时需要设置默认网关。 有时,局域网内存在ARP攻击或者其它原因,使本机ARP缓存中的网关IP的MAC地址是错误的,这样也会造成与网关ping不通。此时,可以使用“arp -d <网关 IP>”命令删除网关的ARP条目,或者通过“arp -a <网关 IP><网关 MAC>”命令设置静态ARP条目。
诊断传输层和应用层的故障最有效的一种手段是使用抓包工具抓取数据包进行分析。在Linux中,默认提供了tcpdump工具,利用它可以抓取所有访问本机或者从本机出去的数据包,并且可以通过规则只抓取感兴趣的数据包。 与操作系统有关的一种可能的故障原因是防火墙配置不当。在Linux中,默认情况下系统启动时会启用iptables防火墙,而且只放行少数几个端口。所以当在本机上配置了某种服务时,而这种服务需要通过TCP或UDP的某个端口才能访问,则要求防火墙开启相应的端口,否则,其它主机将不能访问本机的这种服务。
Linux下网络故障诊断的更多相关文章
- Linux下网络流量实时监控工具
Linux下网络流量实时监控工具大全 在工作中发现,经常因为业务的原因,需要即时了解某台服务器网卡的流量,虽然公司也部署了cacti软件,但cacti是五分钟统计的,没有即时性,并且有时候打开监控页面 ...
- [原创]Linux下网络性能测试Netperf工具介绍及安装
[原创]Linux下网络性能测试Netperf工具介绍及安装 1 官方网站 http://www.netperf.org/netperf/ 2 Netperf介绍 Netperf是一种网络性能的测试工 ...
- 通过/proc/sys/net/ipv4/优化Linux下网络性能
通过/proc/sys/net/ipv4/优化Linux下网络性能 /proc/sys/net/ipv4/优化1) /proc/sys/net/ipv4/ip_forward该文件表示是否打 ...
- Linux下网络服务的安全设置
Linux下网络服务的安全设置 Linux操作系统由于其良好的稳定性.健壮性.高效性和安全性.正在成为各种网络服务的理想平台.各种网络应用在Linux系统上部有性能卓越的应用,例如,提供We ...
- [转帖]linux下网络监控神器"iptraf-ng"
linux下网络监控神器"iptraf-ng" https://www.cnblogs.com/dupengfei/articles/iptraf-ng.html 优点:监控的网络 ...
- Linux下网络socket编程——实现服务器(select)与多个客户端通信
一.关于socket通信 服务器端工作流程: 调用 socket() 函数创建套接字 用 bind() 函数将创建的套接字与服务端IP地址绑定 调用listen()函数监听socket() 函数创建的 ...
- docker在windows下和linux下网络底层的一些区别
windows和linux下的docker运行时的网络结构是有区别的 a.windows下,默认使用Hyper-v创建一个linux虚拟机,承载docker.所以从外向内的路径为: windows - ...
- linux下网络程序遭遇SIGPIPE的解决(转)
http://blog.chinaunix.net/uid-20135786-id-3409085.html 问题描述: 我的一个服务器程序, 在Windows下运行正常. 但当在Linux(cent ...
- Linux 下网络性能优化方法简析
概述 对于网络的行为,可以简单划分为 3 条路径:1) 发送路径,2) 转发路径,3) 接收路径,而网络性能的优化则可基于这 3 条路径来考虑.由于数据包的转发一般是具备路由功能的设备所关注,在本文中 ...
随机推荐
- Angularjs 异步模块加载项目模板
ng-lazy-module-seed(Angularjs 异步模块加载项目模板) 相信做过SPA项目的朋友都遇到过这个问题:页面初始化时需要加载文件太大或太多了,许多文件加载后很可能不会运行到,这是 ...
- JavaScript基础---语言基础(4)
函数,对象和数组 学习要点: 1.函数声明 2.return返回值 3.arguments对象 4.Object类型 5.Array类型 6.对象中的方法 函数是定义一次但却可以调用或执行任意多次的一 ...
- linux用终端上传文件和文件家到远程的服务器
文件上传:scp 本地文件地址 root@aifei8.net:/var/www/html/landrover 文件夹上传:1.先进入文件夹目录 2. 执行命令:scp -r . root@aifei ...
- Callable、Future和FutureTask
创建线程的2种方式,一种是直接继承Thread,另外一种就是实现Runnable接口.这2种方式都有一个缺陷就是:在执行完任务之后无法获取执行结果. 如果需要获取执行结果,就必须通过共享变量或者使用线 ...
- hdu1231 最大连续子序列
#include<stdio.h> #include<string.h> #define maxn 10010 int a[maxn],dp[maxn]; int main() ...
- Eclipse-maven项目发布到tomcat没有附带lib拷贝
在做web开发是,经常都要在eclipse中搭建web服务器,并将开发中的web项目部署到web服务器进行调试,在此,我选择的是tomcat服务器.之前部署web项目到tomcat进行启动调试都很正常 ...
- Maven-本地安装
本文测试安装maven3 安装 Maven 之前要求先确定你的 JDK 已经安装配置完成.Maven是 Apache 下的一个项目,目前最新版本是 3.0.4,我用的也是这个. 首先去官网下载 ...
- 【转】Eclipse下导入外部jar包的3种方式
我们在用Eclipse开发程序的时候,经常要用到第三方jar包.引入jar包不是一个小问题,由于jar包位置不清楚,而浪费时间.下面配图说明3种Eclipse引入jar包的方式. 1.最常用的普通 ...
- codevs4927 线段树练习5
题目描述 Description 有n个数和5种操作 add a b c:把区间[a,b]内的所有数都增加c set a b c:把区间[a,b]内的所有数都设为c sum a b:查询区间[a,b] ...
- [NOIP2009] 提高组 洛谷P1073 最优贸易
题目描述 C 国有 n 个大城市和 m 条道路,每条道路连接这 n 个城市中的某两个城市.任意两个 城市之间最多只有一条道路直接相连.这 m 条道路中有一部分为单向通行的道路,一部分 为双向通行的道路 ...