ping、arp、tracert、route這四大命令配合使用,可以查出或解決網絡中的大部分基本故障問題。
一、ping命令的詳細用法
在網絡中ping是一個十分強大的TCP/IP工具。它的作用主要為:
1、用來檢測網絡的連通情況和分析網絡速度
2、根據域名得到服務器IP
3、根據ping返回的TTL值來判斷對方所使用的操作系統及數據包經過路由器數量。
我們通常會用它來直接ping ip地址,來測試網絡的連通情況。
類如這種,直接ping ip地址或網關,ping通會顯示出以上數據,有朋友可能會問,bytes=32;time<1ms;TTL=128 這些是什么意思。
bytes值:數據包大小,也就是字節。
time值:響應時間,這個時間越小,說明你連接這個地址速度越快。
TTL值:Time To Live,表示DNS記錄在DNS服務器上存在的時間,它是IP協議包的一個值,告訴路由器該數據包何時需要被丟棄。可以通過Ping返回的TTL值大小,粗略地判斷目標系統類型是Windows系列還是UNIX/Linux系列。
一、ping -t的用法
不間斷地Ping指定計算機,直到管理員中斷。
這就說明電腦連接路由器是通的,網絡效果很好。下面按按住鍵盤的Ctrl+c終止它繼續ping下去,就會停止了,會總結出運行的數據包有多少,通斷的有多少了。
二、ping -a的使用
ping-a解析計算機名與NetBios名。就是可以通過ping它的ip地址,可以解析出主機名。
三、ping -n的使用
在默認情況下,一般都只發送四個數據包,通過這個命令可以自己定義發送的個數,對衡量網絡速度很有幫助,比如我想測試發送10個數據包的返回的平均時間為多少,最快時間為多少,最慢時間為多少就可以通過以下獲知:
從以上我就可以知道在給47.93.187.142發送10個數據包的過程當中,返回了10個,沒有丟失,這10個數據包當中返回速度最快為32ms,最慢為55ms,平均速度為37ms。說明我的網絡良好。
如果對于一些不好的網絡,比如監控系統中非常卡頓,這樣測試,返回的結果可能會顯示出丟失出一部分,如果丟失的比較多的話,那么就說明網絡不好,可以很直觀的判斷出網絡的情況。
四、ping -l size的使用
-l size:發送size指定大小的到目標主機的數據包。
在默認的情況下Windows的ping發送的數據包大小為32byt,最大能發送65500byt。當一次發送的數據包大于或等于65500byt時,將可能導致接收方計算機宕機。所以微軟限制了這一數值;這個參數配合其它參數以后危害非常強大,比如攻擊者可以結合-t參數實施DOS攻擊。(所以它具有危險性,不要輕易向別人計算機使用)。
例如:ping -l 65500 -t 211.84.7.46
會連續對IP地址執行ping命令,直到被用戶以Ctrl+C中斷.
這樣它就會不停的向211.84.7.46計算機發送大小為65500byt的數據包,如果你只有一臺計算機也許沒有什么效果,但如果有很多計算機那么就可以使對方完全癱瘓,網絡嚴重堵塞,由此可見威力非同小可。
五、ping -r count 的使用
在“記錄路由”字段中記錄傳出和返回數據包的路由,探測經過的
路由個數,但最多只能跟蹤到9個路由。
ping -n 1 -r 9 202.102.224.25 (發送一個數據包,最多記錄9個路由)
將經過 9個路由都顯示出來了,可以看上圖。
ping命令用的較多的就這6類的,大家有可能在項目中會用到的。
六、批量ping網段
對于一個網段ip地址眾多,如果單個檢測實在麻煩,那么我們可以直接批量ping網段檢測,那個ip地址出了問題,一目了然。
先看代碼,直接在命令行窗口輸入:
for /L %D in (1,1,255) do ping 10.168.1.%D
IP地址段修改成你要檢查的IP地址段。
當輸入批量命令后,那么它就自動把網段內所有的ip地址都ping完為止。
那么這段“for /L %D in(1,1,255) do ping 10.168.1.%D” 代碼是什么意思呢?
代碼中的這個(1,1,255)就是網段起與始,就是檢測網段192.168.1.1到192.168.1.255之間的所有的ip地址,每次逐增1,直接到1到255這255個ip檢測完為止。
二、arp命令的使用
arp是地址解析協議,其基本功能為透過目標設備的IP地址,查詢目標設備的MAC地址,以保證通信的順利進行。它是IPv4中網絡層必不可少的協議,不過在IPv6中已不再適用,并被鄰居發現協議(NDP)所替代。
說白了,就是把通過ip地址找到設備mac地址。
arp的命令一般有三個用法,就是查詢顯示、添加記錄、與刪除記錄,這個在我們做網絡項目時經常會用到。
1、arp -a ,當你需要顯示當期ip地址對應的mac地址時使用
當你需要了解你網絡中設備對應的mac地址時,你可以使用arp地址進行顯示,這個有利于我們可以清楚了解到ip地址對應的mac地址是哪臺設備。
在命令提示符中輸入“arp -a”并回車;自動在緩存中,讀取IP地址和mac地址的對應關系表;
2、arp -s ,當你需要手動添加或綁定一條arp記錄時使用。
手工輸入一條ARP項目,格式為“ARP+空格+-s+IP地址+MAC地址”;
在網絡中,通常在辦公網絡或監控項目中,為了防止用戶亂改ip地址或ip地址沖突,我們需要給ip地址綁定設備的mac地址。
如下圖,先用ARP -s 192.168.1.1 3c-22-3f-5d-f6-77綁定一條記錄,然后用arp -a查詢了ARP記錄添加是否成功。
其實這個命令也叫作綁定mac地址的命令,例如一個公司的網絡,員工經常喜歡改自己電腦的ip地址,經常會造成ip地址混亂,無法管理,那么這個時候你只需要把它的ip地址與它電腦mac地址進行綁定,那么下次出現網絡故障,就可以直接mac地址定位到那幾臺電腦。
3、arp -d,當你覺得某條arp記錄有問題時,可以刪除。
功能為:刪除所有ARP記錄
其實如果想徹底清空ARP列表,需要您禁止所有網絡連接,否則網絡數據交互過程中仍然會產生新的ARP列表。
當你網絡中出了問題,可能是有某些ip地址發生沖突了,mac對應的ip地址有誤,那么你可以對它進行刪除這條arp記錄,然后重新添加新的記錄,網絡問題就會得到解決。
三、tracert命令的使用
tracert是路由跟蹤命令,用于確定 IP 數據包訪問目標所采取的路徑。
在使用Tracert命令之前,我們先來簡單地介紹一下它的語法。其中最簡單也是最常用的命令格式為:
一、基本用法
Tracert 目標設備的ip地址或者網址:
例1、檢測ip地址經過幾個躍點
這里面是經過了兩個躍點。
例2:檢測網址經過幾個躍點
例3、“tracert -d baidu.com”代表不將IP地址解析到主機名稱,如下圖所示:
例4、“tracert -h 3 baidu.com”代表本次tracert搜索的最大跳數,輸入3表示搜索在路由器跳轉3次,如下圖所示:
這個就是查跟設備最近的幾個連接點的問題,通常在網絡問題中,先要排除前端跟設備直接連接的最近的幾個設備是否有故障,如果這幾個近點跟蹤可以正常互通,那么問題可能就出現在后端。
例5、“tracert -w 6 baidu.com”代表tracert為每次回復所指定的毫秒數,其它命令根據需求,可以根據第二步圖介紹使用,如下圖所示:
當網絡很慢,或者很卡時,我們要檢測是那個設備的反應速度比較慢,所以這里面可以設個標準值,例如上面是直接顯示回復6ms以內的設備,超過6ms的設備不顯示,就是反應比較慢的,這個數值可以根據情況設置。
四、route命令使用
route命令用于顯示和操作IP路由表。要實現兩個不同的子網之間的通信,需要一臺連接兩個網絡的路由器,或者同時位于兩個網絡的網關來實現。
route命令主要用來管理本機路由表,可以查看,添加、修改或刪除路由表條目,也就是說可以讓哪些ip地址可以訪問網絡,哪些ip段不能訪問網絡。
在我們做項目時,經常可能會用到外網與外網切換使用,這樣就造成了插拔網線在切換內外網,極其麻煩,這個在我們弱電vip技術群中經常有朋友問題,能否內網和外網同時接入到筆記本,不用每次拔網線呢?
例如:
筆記本上一張機械網卡,一張無線網卡, 一般筆記本都是這樣的配置,都聯上了內外與外網,其中外網網關是49.222.151.207,內網網關10.168.1.1,如何實現雙網卡同時使用有線網上內網、無線網上外網?
第一步:設置無線網卡為默認路由網關。
步驟:無線網絡連接屬性—Internet協議(TCP/IP)-屬性-高級,手動添加無線路由網關,添加自己的外網網關即關,躍點數為“1”,是最高優先級。到了這一步,如果有線連接,無線連接同時存在的話,所有的數據都是經由無線網卡處理的。
第二步:查看當前路由表
使用route print命令看一個0.0.0.0的網絡目標分別映射你的外內網的網關。
當然,這里面你也可以對當前的路由進行刪除
第三步:
通過route命令,將所有網段添加到外網網卡,為默認路由,即所有的ip都走外網。
顯示查看路由表,查看是否添加成功。
第四步:
通過route命令將內網網段添加到內網網卡,內網使用,即10.168.0.0這個ip段走內網。
顯示查看路由表(route print命令),查看是否添加成功。
那么就設置成功了,整體的意思就是:
對于所有IP地址的訪問,都從 49.222.151.207網關走;
但是,對于10.168.0.0開頭的地址的訪問,從10.168.1.1走。
這樣,再也不用插拔網線這種粗魯的方式來切換網絡了。