網絡測試常用的命令-比較ping,tracert和pathping等命令之間的關系
下面我們逐步介紹幾個常
1、Ping命令。
當您的機器不能訪問Internet,首先確認是否是本地局域網的故障。假定局域網的代理服務器IP地址為202.168.0.1,您可以使用ping 202.168.0.1命令查看本機是否和代理服務器聯通。此外可以測試本機的網卡是否正常工作,使用 ping 127.0.0.1命令。一般返回ping的信息就表示本地到該主機的網絡線路連通。
但是很多服務器為了防止攻擊,一般會關閉對ping的響應。所以ping一般作為測試連通性使用。ping命令後,會接收到對方發送的回饋信息,其中記錄著對方的IP地址和TTL。TTL是該字段指定IP包被路由器丟棄之前允許通過的最大網段數量。TTL是IPv4包頭的一個8 bit字段。例如IP包在服務器中發送前設置的TTL是64,你使用ping命令後,得到服務器反饋的信息,其中的TTL為56,說明途中一共經過了8道路由器的轉發,每經過一個路由,TTL減1。
2、Tracert
Tracert命令用來顯示數據包到達目標主機所經過的路徑(路由器),並顯示到達每個節點(路由器)的時間。命令功能同Ping類似,但它所獲得的信息要比Ping命令詳細得多,它把數據包所走的全部路徑、節點的IP以及花費的時間都顯示出來。該命令比較適用於大型網絡。
Tracert 先發送 TTL 為 1 的回應數據包,當數據包上的 TTL在路由器收到後TTL自動減1 ,一旦某個服務器將TTL減1後,等於了0,路由器應該將“ICMP Time Exceeded”的消息發回源計算機,源計算機就根據收到的信息判斷達到的路由器和所用時間。下次再次發送數據包時,將TTL遞增 1,繼續上述測試,直到目標響應或 TTL 達到最大值,從而確定路由。通過檢查中間路由器發回的“ICMP 已超時”的消息確定路由。某些路由器不經詢問直接丟棄 TTL過期的數據包,這在 Tracert 實用程序中看不到,我們會顯示請求超時的請求信息。下圖所示,我們測試到新浪的路經過了8道路由,同時根據上圖測試ping 新浪時候,TTL=56,說明新浪的TTL初始設置為64,經過8道路由後到達我們客戶機,還剩下64-8 = 56。下圖中請求超時的反饋信息是因為路由器對ping命令做了處理,關閉了ping的響應,所以我們收不到發給他的反饋信息。
3、pathping
pathping 命令是一個路由跟蹤工具,它將 ping 和 tracert 命令的功能與這兩個工具所不提供的其他信息結合起來,綜合了二者的功能。pathping會先顯示中間的通過的路由器(類似tracert命令得到的信息),然後對每個中間路由器(節點)發送一定數量的ping包,通過統計他們對ping包響應的數據包來分析通信質量。上面也提到了,有的路由器對ping關閉了響應,所以有的節點的丟包率會達到100%,所以這種一般就是關閉了ping回復。你可以自己ping試一下。還有,對ping包丟棄程度只是節點本身對ping的處理,並不一定影響他的通信,你可以看到,關閉ping命令節點的下一個節點返回到數據是正常的,說明回復的包都成功發送回來。總之,pathping 命令在一段時間內將數據包發送到將到達最終目標的路徑上的每個路由器,然後根據從每個躍點返回的數據包計算結果。由於命令顯示數據包在任何給定路由器或鏈接上丟失的程度,因此可以很容易地確定可能導致網絡問題的路由器或鏈接。下圖所示,我們看到,達到第二個就終止了,因為第二道節點(路由器),不支持ping,然後,程序就終止不在繼續往下探測了。
4、 nslookup
Nslookup命令用於解析域名,一般用來檢測本機的DNS設置是否配置正確。如: nslookup 網站域名,即可解析出網站的IP地址。如圖,可以看出解析www.163.com的時候,可以解析出它所有的IP地址,而如果網路出現異常或者無法收到服務器發送來的信息時候,會出現下面第二張圖片的顯示。服務器和Address代表是解析這些IP地址和域名的DNS服務器信息。比如我使用的DNS是jtjndc007.home.langchao.com, DNS服務器地址是10.100.1.11.網絡測試常用的命令-比較ping,tracert和pathping等命令之間的關系