浅谈Linux网络故障的解决办法

时间:2023-03-06 13:52:50 网络诊断 我要投稿
  • 相关推荐

浅谈Linux网络故障的解决办法

  Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。小编告诉大家,Linux网络故障排除应当遵循先硬件后软件的方法。因为硬件如果出现物理损坏那么如何设定网络都不能解决故障。解决问题的方法可以从自身Linux计算机的网卡查起,然后到服务器、集线器、路由器等硬件。如果确定硬件没有问题了,再来考虑软件的设定。

  1、检查网卡工作状况

  (1)使用cat /proc/modules查看网卡的模块是否已被加载,驱动硬件是操作系统最基本的功能,操作系统通过各种驱动程序来驾驭硬件设备,和Windows系统不同Linux内核目前采用可加载的模块化设计(LKMs Loadable Kernel Modules),就是将最基本的核心代码编译在内核中,而我们常见的驱动程序就是作为内核模块动态加载的,比如网卡驱动。Windows系统中我们一般“控制面板”的“设备管理器”查看硬件列表,在Linux中可以在命令行下输入:cat /proc/modules 即可显示Linux系统检测到的所有硬件设备。运行cat /proc/modules需要超级用户的权限,你可以使用su命令实现。

  小编Linux计算机中两块网卡模块:NE2000和8139已经加载。如果没有检测到硬件,用硬件检测程序Kuduz检测网卡,它和Windows中添加新硬件差不多。kudzu程序是通过查看/usr/share/hwdata/目录下的文件识别各种硬件设备的。如果核心支持该硬件,并且有该驱动程序就可自动装载。首先说明的是Linux下对网卡的支持往往是只对芯片的,所以对某些不是很著名的网卡,往往需要知道它的芯片型号以配置Linux.比如我的Top link网卡,就不存在Linux的驱动,但是因为它是NE2000兼容,所以把它当NE2000就可以在Linux下用了.所以当你有一块网卡不能用,在找Linux的驱动程序之前一定搞清楚这个网卡用的什么芯片,跟谁兼容,比如3c509,ne2000,etherexpress等等.这样的型号一般都在网卡上最大的一快芯片上印着,抄下来就是了。对于ISA接口的NE2000卡,先要作的一件事情,是将网卡设定为Jumpless模式.很多现在的网卡缺省都是PnP模式,这在Windows下的确能减少很多麻烦,但是Linux不支持,所以Linux下必须是Jumpless模式.一般所有网卡都有带的驱动盘和DOS下可执行的一个设定程序,用该程序将网卡设为 Jumpless。对于PCI网卡,可以使用如下命令来查看:less/proc/pci。在显示的列表中找到“Ethernet Controller”,记下厂商和型号。然后使用modprobe尝试加载正确的模块,比如modprobe 3c509。如果出现错误,说明该模块不存在。这时候你应该找到正确的模块并且重新编译。如果显示说该设备不存在,那也是因为没有正确的模块。找到正确的模块,并且编译,问题一般即可解决。

  (2)使用Ifconfig-a命令检查网卡接口

  如果已经检测到网卡,网卡硬件就没有问题,接下来检查网卡的软件设定。使用ifconfig -a命令:

  第二块网卡没有分配IP地址,我们现在可以添加IP地址。以Redhat Linux 9.0为例。以root权限运行命令:neat出现图形化配置界面,然后添加IP地址后保存设置,从新启动网络和网络服务或计算机.

  (4)编译网卡

  如果Linux内核没有检测到网卡通常要重新安装网卡的驱动程序,网卡驱动程序安装方法步骤如下:

  a、 编译并安装模块;

  b、 修改/etc/conf.module 文件;

  c、 修改/etc/sysconfig/network文件;

  d、 修改/etc/sysconfig/network-scripts/ifcfg-eth0 文件;

  e、 给网卡添加IP地址:打开网卡IP地址配置文件/etc/sysconfig/network-script/ifcfg-eh0.

  e、然后用命令启动网络服务。

  说明网卡问题:使用ifconfig来进行配置。如果运行ifconfig,将会给出所有已经安装了的网卡。如果没有显示可用的网卡,那么很有可能是以下原因之一:1. 网卡没有被Linux检测到;2. 没有与之相应的内核模块;3. 该模块没有被加载;4. Linux系统不支持你的网卡。就现在来说,出现问题4的可能性很小,一般来说都是问题2和3,也可能是1。

  Linux下无线网卡的安装:

  目前经过认证的PCMCIA网卡有两大类。使用基于朗讯(Lucent)芯片组的PCIMCIA无线网卡和使用基于intersil PRISM2-based cards 芯片组的PCMCIA的无线网卡见表-1。不过由于基于intersil PRISM2-based cards 芯片组的PCMCIA的无线网卡价格比较便宜(相当于朗讯(Lucent)芯片组的PCIMCIA无线网卡的三分之一),所以国内的PCMCIA的无线网卡以后者居多。

  随着Linux网络技术的快速增长,硬件厂商大大加速对硬件产品对Linux的技术支持。使得Linux 支持的无线网卡的数量在过去的一两年里增长显著。对于有些设备,配置无线连接非常简单:只要在您使用的 Linux 发行版本,插入无线网卡,在设置过程中单击鼠标,并输入正确的联网参数就可以了。通常基于朗讯(Lucent)芯片组的PCIMCIA无线网卡的安装比较简单,笔者使用的Cisco Aironet Wireless 802.11b 在Mandrake 8.2 Linu安装程序可以顺利地找到设备驱动, 使用基于intersil PRISM2-based cards 芯片组的PCMCIA的无线网卡安装就比较复杂了。需要一个第三方工具安装。

  总的来说Linux下无线网卡的安装顺序一般是:

  采取全部安装方式安装Linux发行版本,重新编译内核,并除去任何对内核提供的 PCMCIA 驱动程序的部分。

  了解网卡的规格并且下载并编译相应的 PCMCIA-CS 库和驱动程序

  下载、编译并安装无线网卡必需的所有驱动程序。这一步骤对于有些网卡是可选的,而对于有些网卡是必须执行的。做与不做很大程度上取决于您所选的无线网卡。

  修改和无线网卡的相关设定。从新启动Linux系统和网络。

  2、Ping 127.0.0.1 验证本机TCP/IP协议是否安装

  Linux中一个概念:封闭回路。使用TCP/IP协议的Linux计算机,都会拥有一个IP地址,彼此间相互以IP地址确认对方,传递信息与数据。在有些情况下,我们为了进行某项测试(比如网卡是否正确安装),或者是没有另外一台电脑作为接收端。这时,我们可利用本机扮演信息的发送端和接收端,这就是所谓的封闭回路。 封闭回路的IP地址是127.0.0.1。这个Ping命令被送到本地计算机的IP软件,在Linux下该命令永不退出该计算机。如果没有做到这一点,就表示TCP/IP的安装或运行存在某些最基本的问题。

  3、确认局域网内网络连接情况

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

  (1)客户机IP的设定

  假设子网为192.168.1.0/24,那么局域网内所有计算机的IP应该介于192.168.1.1~192.168.1.254,且所有的计算机子屏蔽网络均为255.255.255.0,IP在所有的计算机都不可以重复。

  (2)网关

  假设Linux IP为192.168.1.2,那么局域网内所有客户机的网关是192.168.1.2 。

  (3)Windows端的通信协议

  局域网内其它的Windows系统的通信协议仅需要TCP/IP及NetBUEI即可,如果安装过多的通信协议可能会造成联机过慢。

  (4)Windows 端工作组与计算机名称

  假如需要资源共享,那么就必须在Windows系统中建立文件共享,并且所有的计算机工作组必须相同,但计算机名称不能相同。算机名称不能相同。

【浅谈Linux网络故障的解决办法】相关文章:

Linux下网络故障的诊断05-13

Linux系统网络故障诊断方法06-17

浅谈通透信号灯解决网络故障的方法08-24

排除网络故障的原则12-14

网卡引起的网络故障01-05

Linux认证系统管理:linux下搭建ftp08-26

网络故障的类型及诊断分析10-19

常见的网络故障分析与处理04-15

ping命令检测网络故障05-12