Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->系统管理 ->正文

中小异构Linux网络故障分析与排除

来源:Linux-cn.com 作者:Webmaster 时间:2007-05-05 点击: [收藏] [投稿]

  由于Linux的桌面应用和Windows相比还有一定的差距,所以在企业应用中往往是Linux和Windows操作系统共存形成异构网络。中小企业由于缺少经验丰富的Linux网络管理员,所以对于Linux网络故障分析与排除经常是头痛医头、脚痛医脚,缺乏全面的考虑。

  据统计,Linux网络故障有35%在物理层、25%在数据链路层、12%在网络层、10%在传输层、8%在对话层、7%在表示层、3%在应用层。由此可以看出,网络故障通常发生在网络七层模型的下三层,即物理层、链路层和网络层。对应于实际网络也就是使用的网线、连接模块、网卡、交换机、路由器等设备故障。这些故障可能因为产品的质量或性能、磨损老化、人为误操作、不正确的设置、管理缺陷、黑客系统入侵等原因造成。

  Linux网络服务功能非常强大,不论是Mail Server、Web Server、DNS Server等都非常完善。但是,也经常听到有人抱怨Linux没有办法连上网络等问题。下面首先看看Linux TCP/IP的网络模型(见图1所示),掌握OSI模型、TCP/IP模型及相关服务对应的层次对于Linux网络故障分析与排除是非常重要的。


图1 Linux TCP/IP网络模型和相关服务列表

解决问题的思路

  解决问题的顺序应该是从Linux网络的底层开始,然后慢慢地向上检查,问题的解决流程可以如下:

  ◆ 检查网卡是否能正常工作;
  ◆ 局域网络硬件联机确认能不能ping到同一网域中的其它计算机IP(局域网络);
  ◆ 检查DNS是否设定正确;
  ◆ 检查主机的服务是否被关掉,检查 inetd.conf /etc/xinetd.d;
  ◆ 一些服务的权限与端口是否打开。

  例如在局域网络接线法中,一般造成网络问题的情况可以分为网络硬件传输部分及操作系统、通信协议或者相关服务的软件设定问题。

  1.网络硬件传输问题

  (1)网线

  在图2中可以发现,网络接口设备中使用最多的是网线。由于网线常接在墙角和门缝处,有可能被压坏。所以,需要注意网线是否因被截断、网线过度扭曲变形、自制网络接头(如RJ-45跳线头)品质不良造成讯号不良;网络接头与设备(如集线器、路由器、交换机)接触不良等。

 

  (2)网卡、集线器、路由器、交换机等网络设备

  网卡不稳定、品质不佳,或者与整体系统的兼容性不佳; 各网络设备的接触不良,造成讯号衰减; 网络设备使用方法不良,造成设备功能衰减等都会造成传输问题。

 

  (3) 设备配置的规则

  各个设备的配置是有规则的。太长的网络线会造成讯号的衰减,导致网络联机的时间太长甚至无法联机。

  (4)UPS电源

  UPS电源是一个容易被忽视的环节。由于路由器、交换机、基带式“猫”等网络设备对电压和接地都非常敏感,因此,应当使用性能优良的在线式UPS作为供电电源,最好使用2000W功率以上的,从而可以将所有的网络设备都连接在同一电源,避免不同设备间的电压差别。此外,机房和机柜要有非常好的接地措施,并为所有设备建立一条地线保证接地电压相同,确保网络设备正常进行。

  2.软件设定问题

  (1)网卡的IP设定错误

  例如,同一个IP在同一个网段中出现造成IP冲突、子屏蔽网络设定错误等。

  (2)路由问题(Router)

  这方面的问题出在Gateway的设定错误,或者是路由设定不正确,导致资料封包没有办法顺利地送出去。

  (3)网络负荷问题(Loading)

  当黑客对网络实施拒绝服务攻击时,同时有大量的信息包涌进Server或Hub,就有可能造成网络的停顿甚至挂起。

  (4)其它

  例如,一些端口被防火墙挡住了,造成无法执行某些网络资源;应用程序本身的Bug问题;应用程序中使用者的网络设定错误;以及不同的操作系统的兼容性问题等。

解决问题的方法

  以图2为例,解决问题的方法可以从自身PC的网卡查起,然后到网络线、Hub等硬件。如果确定硬件没有问题了,再来考虑软件的设定。


图2 网络拓扑结构

  1.检查网卡工作状况

  (1)使用lsmod查看网卡的模块是否已被加载(见图3所示)


  # lsmod

图3 显示Linux硬件情况

  图3中倒数第二行显示已经检测到网卡,并且已经加载。如果没有检测到硬件,用硬件检测程序Kuduz检测网卡,它和Windows中添加新硬件差不多。如果核心支持该硬件,并且有该驱动程序就可自动装载。

  (2)使用ifconfig查看网卡工作状况

  如果已经检测到网卡,网卡硬件就没有问题,接下来检查网卡的软件设定。使用ifconfig,如果没有任何网络硬件被驱动的话,使用下面命令加载:


  # ifconfig eth0 192.168.0.2 netmask 255.255.255.0  up

  图4是我的网络设定,设备名称为eth0,IP是192.168.0.2。


图4 网卡基本信息

  如果没有检测到网卡就麻烦一些,通常要重新安装网卡的驱动程序,网卡驱动程序安装方法步骤如下:

  ◆ 编译并安装模块;
  ◆ 修改/etc/conf.module 文件;
  ◆ 修改/etc/sysconfig/network文件;
  ◆ 修改/etc/sysconfig/network-scripts/ifcfg-eth0 文件;
  ◆ 以ifup eth0来激活网卡后再查看。

  如果还有问题,基本上可以确定网卡发生物理故障需要更换。

  2.局域网络硬件联机确认

  最重要的网卡设定确认没有问题之后,接下来要确认局域网内网络连接情况。根据图2网络拓扑结构,对局域网的要求有下面几点:

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:一种动态网络负载平衡集群的实践方法   下一篇:调谐LINUX网络性能之调试工具篇

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号