- 相關(guān)推薦
Linux系統網(wǎng)絡(luò )故障診斷方法
由于實(shí)現網(wǎng)絡(luò )服務(wù)器的層次結構比較多,因此當網(wǎng)絡(luò )出現故障時(shí),解決起來(lái)比較復雜。下面由我來(lái)為大家詳細介紹Linux系統中可能出現的一些網(wǎng)絡(luò )問(wèn)題,如網(wǎng)卡硬件問(wèn)題、網(wǎng)絡(luò )配置問(wèn)題、驅動(dòng)程序問(wèn)題,以及網(wǎng)絡(luò )層、傳輸層、應用層問(wèn)題等。
網(wǎng)卡故障可以分為硬件故障和軟件故障,判斷硬件故障最簡(jiǎn)單的方法是把該網(wǎng)卡插到其它計算機上使用,如果還是老毛病則網(wǎng)卡損壞,否則網(wǎng)卡正常。實(shí)際情況下,大部分網(wǎng)卡出現的故障都屬于軟件故障,軟件故障一般分為兩類(lèi):一類(lèi)為設置故障;一類(lèi)為驅動(dòng)程序故障。
1、診斷網(wǎng)卡故障
[root@localhost ~]#dmesg | grep eth
eth0:registered as PCnet/PCI II 79C970A
eth0:link up
eth0:no IPv6 routers present
[root@localhost ~]#
以上命令列出了引導信息中包含eth字符串的行,如果出現類(lèi)似與“eth0:link up”的提示,表示Linux已經(jīng)檢測到了網(wǎng)卡,并處于正常工作狀態(tài)。還有一條lspci命令可以列出系統檢測到所有PCI設備,如果使用的網(wǎng)卡是PCI總線(xiàn)的,應該能看到這塊網(wǎng)卡的信息。最后可以用ethtool查看以太網(wǎng)的鏈路連接是否正常。
[root@localhost ~]#ethtool eth0
Settings for eth0:
Current message level: 0x00000007 (7)
Link detected:yes
[root@localhost ~]#
如果看到“Link detected:yes”一行,表明網(wǎng)卡也對方的網(wǎng)絡(luò )線(xiàn)路連接是正常的。
2、網(wǎng)卡驅動(dòng)程序
在RHEL 6中,需要先查看或者設置/etc/modeprobe.cong文件,它包含了有關(guān)模塊的安裝和別名信息。
[root@localhost ~]#more /etc/modeprobe.cong
alias scsi_hostadapter mptbase
...
alias eth0 pcnet32
[root@localhost ~]#
以上顯示中,最后一行“alias eth0 pcnet32”表示為pcnet32定義了一個(gè)別名eth0,也就是說(shuō),目前使用的以太網(wǎng)卡接口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]#
可以發(fā)現,pcnet32已經(jīng)安裝。因此,如果網(wǎng)卡已經(jīng)被Linux檢測到,但執行“ipconfig -a”命令時(shí)卻看不到eth0接口,可以按照以上方法把網(wǎng)卡的驅動(dòng)程序模塊找到,再看看這個(gè)模塊是否已經(jīng)安裝。
3、診斷網(wǎng)絡(luò )層問(wèn)題
網(wǎng)絡(luò )層問(wèn)題診斷方法很簡(jiǎn)單,就是直接ping外網(wǎng)的某一個(gè)域名或者IP,能正常連通的,則說(shuō)明網(wǎng)絡(luò )層沒(méi)有問(wèn)題。
引起ping不同的原因很多,可能會(huì )是網(wǎng)絡(luò )線(xiàn)路、網(wǎng)絡(luò )設置、路由和ARP等問(wèn)題。建議先ping一下網(wǎng)關(guān),看是否能通,如果與網(wǎng)關(guān)能通,一般就表明網(wǎng)絡(luò )線(xiàn)路、自己機子的網(wǎng)絡(luò )設置和ARP都沒(méi)有問(wèn)題?梢酝ㄟ^(guò)命令“route -n”顯示路由表,然后得到網(wǎng)關(guān)的地址。如果路由表中沒(méi)有設置默認網(wǎng)關(guān),則表明路由設置有問(wèn)題,此時(shí)需要設置默認網(wǎng)關(guān)。
有時(shí),局域網(wǎng)內存在A(yíng)RP攻擊或者其它原因,使本機ARP緩存中的網(wǎng)關(guān)IP的MAC地址是錯誤的,這樣也會(huì )造成與網(wǎng)關(guān)ping不通。此時(shí),可以使用“arp -d <網(wǎng)關(guān) IP>”命令刪除網(wǎng)關(guān)的ARP條目,或者通過(guò)“arp -a <網(wǎng)關(guān) IP><網(wǎng)關(guān) MAC>”命令設置靜態(tài)ARP條目。
4、診斷傳輸層和應用層問(wèn)題
診斷傳輸層和應用層的故障最有效的一種手段是使用抓包工具抓取數據包進(jìn)行分析。在Linux中,默認提供了tcpdump工具,利用它可以抓取所有訪(fǎng)問(wèn)本機或者從本機出去的數據包,并且可以通過(guò)規則只抓取感興趣的數據包。
與操作系統有關(guān)的一種可能的故障原因是防火墻配置不當。在Linux中,默認情況下系統啟動(dòng)時(shí)會(huì )啟用iptables防火墻,而且只放行少數幾個(gè)端口。所以當在本機上配置了某種服務(wù)時(shí),而這種服務(wù)需要通過(guò)TCP或UDP的某個(gè)端口才能訪(fǎng)問(wèn),則要求防火墻開(kāi)啟相應的端口,否則,其它主機將不能訪(fǎng)問(wèn)本機的這種服務(wù)。
【Linux系統網(wǎng)絡(luò )故障診斷方法】相關(guān)文章:
Linux系統守護進(jìn)程的啟動(dòng)方法12-15
Linux系統死機解決方法01-22
Linux文件系統簡(jiǎn)介06-01
Linux操作系統概述06-22
Linux系統下ftp的管理08-19
Linux btrfs文件系統及管理07-31
Linux系統啟動(dòng)的大致過(guò)程09-21
Linux權限管理基本方法10-24