linux下網絡排錯與查看
基本的故障排除錯誤
故障的排除一定是先簡單后復雜的,有的人把上述的文件反復配置,就是上不了網,一直都認為是系統出了故障,想重裝機子。結果發現原來是網線壓根就沒插上。
排錯要慢慢的按部就班的來:
(1)首先看網線是否插好,燈亮就是OK的。
(2)我們要看自己的網卡驅動是否正常,建立一個ip然后ping它,看是否ping的通,通過說明網卡是正常的。
(3)使用ifconfig命令查看ip是否正確,路由信息是否正確
(4)ping統一網段的機子,不行的話網關設置錯誤
(5)查看dns的狀態(這個是經常出現的,我們可以ping通局域網,但是外網卻鏈接不上,那就是dns有問題了)
(6)查看服務是否能開啟,一般我們把NetworkManager服務關閉。
操作流程
(1)首先關掉NetworkManager:
開機也關掉它:
(2)查看路由:
(3)查看dns設定:
(4)查看ifcfg-eth0和ifcfg-br0:
(5)查看網絡設備識別規則:
看看規則指定的是eth0和我們的設定是相符的。
注:如果上述的問題都解決了還是不能上網,看看是否是selinux的原因。
查看網絡命令解析:
網絡配置查看:ifconfig
用途:配置或顯示 TCP/IP 網絡的網絡接口參數
示例操作:ifconfig
Link encap: 這個字段代表該網絡設備位于OSI物理層的名稱。
HWaddr:網卡的硬件地址,也就是MAC地址。 inet addr:顯示網卡的IP地址 Bcast:該接口的網絡廣播地址 Mask:該接口的網絡子網掩碼。 MTU:該接口的最大傳輸單元 Metric:默認的路由成本。
RX :已接受的封包統計。
TX:已傳送或者傳送中的封包統計 collisions:網卡接口發生封包碰撞的次數 txqueuelen:網卡設置的傳送隊列長度 RX bytes:已接收的封包數據量,單位是字節。 TX bytes:已傳送的封包數據量,單位是字節 interrupt:這張網卡接口的IRQ中斷值。
兩臺主機間的溝通:ping
?ping命令一般用于檢測網絡通與不通,也叫時延,其值越大,速度越慢PING(PacketInternetGrope),因特網包探索器,用于測試網絡連接量的程序。
?ping發送一個ICMP回聲請求消息給目的地并報告是否收到所希望的ICMP回聲應答。它是用來檢查網絡是否通暢或者網絡連接速度的命令。
?原理:網絡上的機器都有唯一確定的IP地址,我們給目標IP地址發送一個數據包,對方就要返回一個同樣大小的數據包,根據返回的數據包我們可以確定目標主機的存在,可以初步判斷目標主機的操作系統等。
示例操作:ping -c 5 www.baidu.com(-c 5 這個參數表示執行ping命令5次)
兩主機間各節點的分析:traceroute
通過traceroute我們可以知道信息從你的計算機到互聯網另一端的主機是走的什么路徑。當然每次數據包由某一同樣的出發點(source)到達某一同樣的目的地(destination)走的路徑可能會不一樣,但基本上來說大部分時候所走的路由是相同的。linux系統中,我們稱之為traceroute,在MS Windows中為tracert。 traceroute通過發送小的數據包到目的設備直到其返回,來測量其需要多長時間。一條路徑上的每個設備traceroute要測3次。輸出結果中包括每次測試的時間(ms)和設備的名稱(如有的話)及其IP地址。
示例操作:traceroute www.baidu.com
我們發現有的返回的是* * *,代表該node可能設有某些防護措施讓我們所發送的數據包信息被丟棄。
查看本機的網絡鏈接與后門:netstat
Netstat用于顯示與IP、TCP、UDP和ICMP協議相關的統計數據,一般用于檢驗本機各端口的網絡連接情況。
如果你的計算機有時候接收到的數據報導致出錯數據或故障,你不必感到奇怪,TCP/IP可以容許這些類型的錯誤,并能夠自動重發數據報。但如果累計的出錯 情況數目占到所接收的IP數據報相當大的百分比,或者它的數目正迅速增加,那么你就應該使用Netstat查一查為什么會出現這些情況了。
參數詳解:
-a或-all 顯示所有連線中的socket -n 已建立的有效鏈接 -o 顯示計時器 -p -programs 顯示正在使用的程序 -t 顯示tcp傳輸的連線狀況 -u 顯示udp傳輸的連線狀 -l 顯示監控中的服務器的socket 示例操作:netstat -a
檢測主機名與IP的對應:host,nslookup
兩個命令都差不多,都可以追蹤到服務器的IP地址;但是后者還可以找到主機名。
示例操作:host www.baidu.com
nslookup www.baidu.com