Linux网络故障的解决问题的思路
2010-03-15 11:32
302 查看
Linux网络故障的解决问题的思路
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地址后保存设置,从新启动网络和网络服务或计算机,见图-3。
(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下无线网卡的安装:
目前经过www.Linux.org 认证的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计算机的网卡查起,然后到服务器、集线器、路由器等硬件。如果确定硬件没有问题了,再来考虑软件的设定。
1、检查网卡工作状况
(1)使用cat /proc/modules查看网卡的模块是否已被加载,驱动硬件是操作系统最基本的功能,操作系统通过各种驱动程序来驾驭硬件设备,和Windows系统不同Linux内核目前采用可加载的模块化设计(LKMs Loadable Kernel Modules),就是将最基本的核心代码编译在内核中,而我们常见的驱动程序就是作为内核模块动态加载的,比如网卡驱动。Windows系统中我们一般“控制面板”的“设备管理器”查看硬件列表,在Linux中可以在命令行下输入:cat /proc/modules 即可显示Linux系统检测到的所有硬件设备。运行cat /proc/modules需要超级用户的权限,你可以使用su命令实现。
[root@www cao]# cat /proc/modules parport_pc 25096 1 (autoclean) lp 8096 0 (autoclean) parport 34176 1 (autoclean) [parport_pc lp] sg 34636 0 (autoclean) (unused) st 29488 0 (autoclean) (unused) sr_mod 16920 0 (autoclean) (unused) sd_mod 13100 0 (autoclean) (unused) scsi_mod 103284 4 (autoclean) [sg st sr_mod sd_mod] ide-cd 33856 0 (autoclean) nfsd 74256 8 (autoclean) af_packet 14952 0 (autoclean) floppy 55132 0 8139too 17160 1 (autoclean) mii 3832 0 (autoclean) [8139too] tulip 44032 1 (autoclean) ne2k-pci 6720 1 [ne2k-pci] nls_gb2312 964 5 (autoclean) nls_cp936 124956 6 (autoclean) vfat 11820 5 (autoclean) fat 37944 0 (autoclean) [vfat] supermount 15296 2 (autoclean) usbmouse 2936 0 (unused) |
(2)使用Ifconfig-a命令检查网卡接口
如果已经检测到网卡,网卡硬件就没有问题,接下来检查网卡的软件设定。使用ifconfig -a命令:
[root@www cao]# ifconfig -a eth0 Link encap:Ethernet HWaddr 00:00:E8:A0:25:86 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:28 dropped:0 overruns:0 carrier:28 collisions:0 txqueuelen:100 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b) Interrupt:11 Base address:0xdc00 eth1 Link encap:Ethernet HWaddr 00:50:FC:56:75:F5 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:26 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:0 (0.0 b) TX bytes:2804 (2.7 Kb) Interrupt:10 Base address:0x7000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:233 errors:0 dropped:0 overruns:0 frame:0 TX packets:233 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:16248 (15.8 Kb) TX bytes:16248 (15.8 Kb) |
图-3 图形界面添加IP地址 |
如果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.
文件内容是:
DEVICE=eth0 BOOTPROTO=none BROADCAST=192.168.1.255 IPADDR=192.168.1.12 NETMASK=255.255.255.0 NETWORK=192.168.1.0 ONBOOT=yes USERCTL=yes PEERDNS=no GATEWAY=192.168.1.1 TYPE=Ethernet |
#service network restat |
Linux下无线网卡的安装:
目前经过www.Linux.org 认证的PCMCIA网卡有两大类。使用基于朗讯(Lucent)芯片组的PCIMCIA无线网卡和使用基于intersil PRISM2-based cards 芯片组的PCMCIA的无线网卡见表-1。不过由于基于intersil PRISM2-based cards 芯片组的PCMCIA的无线网卡价格比较便宜(相当于朗讯(Lucent)芯片组的PCIMCIA无线网卡的三分之一),所以国内的PCMCIA的无线网卡以后者居多。
Lucent chipset-based cards intersil PRISM2-based cards Lucent Wavelan/IEEE and Orimoco Linksys(WPC11 v2.5) Cabletron/Enterays RoarmAbout SMS(2632W) Compaq(WL110、WL210、 WL215) Compaq(WL100、WL200) Apple Airport Cisco Aironet Wireless 802.11b(340、350) IBM High Rate Wireless LAN Dlink DWL-650 HP 802.11bWiewless LAN Nokia DELL TrueMobile Intel PRO/Wireless 2100 3Com AirConnect SAMSUNG 11Mbps WLAN Card LA4111 Spectrum24 Wireless LAN PC Card PROXIM LAN PC CARD HARMONY 80211B NCR WaveLAN/IEEE Adapter |
总的来说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下出现ping:unknown host www.baidu.com问题时的解决办法——ubuntu下局域网络的配置
- 6 个 Linux 运维典型问题,大牛的分析解决思路在这里
- 网络故障分析案例:如何定位和解决网络丢包问题
- 解决Linux启动出现 waiting for network configuration;以及常见的网络问题
- LInux下可以使用命令自动与网络的NTP服务器同步时间 CSDN验证码验证失败问题解决
- 《初入linux》--第十八部分-linux系统故障与未知错误相关解决思路
- Linux备份ifcfg-eth0文件导致的网络故障问题
- 解决Linux-CentOS 7.0 VMware虚拟机没有网卡不识别问题和Vmware提示无法将网络更改为桥接模式
- 6 个 Linux 运维典型问题,大牛告诉你解决思路!
- composer部署Yii2框架(linux)遇到问题及解决思路总结
- Linux服务器丢包故障的解决思路及引申的TCP/IP协议栈理论
- 【故障】Linux系统故障解决思路与无法启动的原因分析
- Thinkpad在Linux下指点杆和无线网络的配置和故障解决方法
- 故障的机器修好后重启,狂拉主库binlog,导致网络问题的解决方法
- 网络编程中常见问题以及解决思路
- Linux之解决你的网络问题
- 虚拟机中linux网络不通问题解决方式记录
- Linux虚拟机桥接模式重启机器后ping不通网络问题解决方案
- linux解决南北网络访问速度慢的问题!双线路自动路由!