當你打開瀏覽器,自由地游弋于浩如煙海的互聯網世界之時,是否也沉迷于下載各種實用軟件?其中也許有很大一部分就是網絡工具吧!但請你不要忽視你的面前——windows(包括win98和nt)作系統中本來就帶有不少的網絡實用工具,雖然比較簡單,卻并不簡陋。本著“簡單就是美”的原則,下面就為你展現windows網絡實用工具的豐采……
ping
??ping是個使用頻率極高的實用程序,用于確定本地主機是否能與另一臺主機交換(發送與接收)數據報。根據返回的信息,你就可以推斷tcp/ip參數是否設置得正確以及運行是否正常。需要注意的是:成功地與另一臺主機進行一次或兩次數據報交換并不表示tcp/ip配置就是正確的,你必須執行大量的本地主機與遠程主機的數據報交換,才能確信tcp/ip的正確性。
??簡單的說,ping就是一個測試程序,如果ping運行正確,你大體上就可以排除網絡訪問層、網卡、modem的輸入輸出線路、電纜和路由器等存在的故障,從而減小了問題的范圍。但由于可以自定義所發數據報的大小及無休止的高速發送,ping也被某些別有用心的人作為ddos(拒絕服務攻擊)的工具,前段時間yahoo就是被黑客利用數百臺可以高速接入互聯網的電腦連續發送大量ping數據報而癱瘓的。
??按照缺省設置,windows上運行的ping命令發送4個icmp(網間控制報文協議)回送請求,每個32字節數據,如果一切正常,你應能得到4個回送應答。
??ping能夠以毫秒為單位顯示發送回送請求到返回回送應答之間的時間量。如果應答時間短,表示數據報不必通過太多的路由器或網絡連接速度比較快。ping還能顯示ttl(time to live存在時間)值,你可以通過ttl值推算一下數據包已經通過了多少個路由器:源地點ttl起始值(就是比返回ttl略大的一個2的乘方數)-返回時ttl值。例如,返回ttl值為119,那么可以推算數據報離開源地址的ttl起始值為128,而源地點到目標地點要通過9個路由器網段(128-119);如果返回ttl值為246,ttl起始值就是256,源地點到目標地點要通過9個路由器網段。
通過ping檢測網絡故障的典型次序
??正常情況下,當你使用ping命令來查找問題所在或檢驗網絡運行情況時,你需要使用許多ping命令,如果所有都運行正確,你就可以相信基本的連通性和配置參數沒有問題;如果某些ping命令出現運行故障,它也可以指明到何處去查找問題。下面就給出一個典型的檢測次序及對應的可能故障:
ping 127.0.0.1——這個ping命令被送到本地計算機的ip軟件,該命令永不退出該計算機。如果沒有做到這一點,就表示tcp/ip的安裝或運行存在某些最基本的問題。
ping 本機ip——這個命令被送到你計算機所配置的ip地址,你的計算機始終都應該對該ping命令作出應答,如果沒有,則表示本地配置或安裝存在問題。出現此問題時,局域網用戶請斷開網絡電纜,然后重新發送該命令。如果網線斷開后本命令正確,則表示另一臺計算機可能配置了相同的ip地址。
ping 局域網內其他ip——這個命令應該離開你的計算機,經過網卡及網絡電纜到達其他計算機,再返回。收到回送應答表明本地網絡中的網卡和載體運行正確。但如果收到0個回送應答,那么表示子網掩碼(進行子網分割時,將ip地址的網絡部分與主機部分分開的代碼)不正確或網卡配置錯誤或電纜系統有問題。
ping 網關ip——這個命令如果應答正確,表示局域網中的網關路由器正在運行并能夠作出應答。
ping 遠程ip——如果收到4個應答,表示成功的使用了缺省網關。對于撥號上網用戶則表示能夠成功的訪問internet(但不排除isp的dns會有問題)。
ping localhost——localhost是個作系統的網絡保留名,它是127.0.0.1的別名,每太計算機都應該能夠將該名字轉換成該地址。如果沒有做到這一帶內,則表示主機文件(/windows/host)中存在問題。
ping ——對這個域名執行ping命令,你的計算機必須先將域名轉換成ip地址,通常是通過dns服務器 如果這里出現故障,則表示dns服務器的ip地址配置不正確或dns服務器有故障(對于撥號上網用戶,某些isp已經不需要設置dns服務器了)。順便說一句:你也可以利用該命令實現域名對ip地址的轉換功能。
??如果上面所列出的所有ping命令都能正常運行,那么你對你的計算機進行本地和遠程通信的功能基本上就可以放心了。但是,這些命令的成功并不表示你所有的網絡配置都沒有問題,例如,某些子網掩碼錯誤就可能無法用這些方法檢測到。
ping命令的常用參數選項
ping ip -t——連續對ip地址執行ping命令,直到被用戶以ctrl+c中斷。
ping ip -l 2000——指定ping命令中的數據長度為2000字節,而不是缺省的32字節。
ping ip -n——執行特定次數的ping命令。
netstat
??netstat用于顯示與ip、tcp、udp和icmp協議相關的統計數據,一般用于檢驗本機各端口的網絡連接情況。
如果你的計算機有時候接受到的數據報會導致出錯數據刪除或故障,你不必感到奇怪,tcp/ip可以容許這些類型的錯誤,并能夠自動重發數據報。但如果累計的出錯情況數目占到所接收的ip數據報相當大的百分比,或者它的數目正迅速增加,那么你就應該使用netstat查一查為什么會出現這些情況了。
netstat的一些常用選項:
netstat -s——本選項能夠按照各個協議分別顯示其統計數據。如果你的應用程序(如web瀏覽器)運行速度比較慢,或者不能顯示web頁之類的數據,那么你就可以用本選項來查看一下所顯示的信息。你需要仔細查看統計數據的各行,找到出錯的關鍵字,進而確定問題所在。
netstat -e——本選項用于顯示關于以太網的統計數據。它列出的項目包括傳送的數據報的總字節數、錯誤數、刪除數、數據報的數量和廣播的數量。這些統計數據既有發送的數據報數量,也有接收的數據報數量。這個選項可以用來統計一些基本的網絡流量)。
netstat -r——本選項可以顯示關于路由表的信息,類似于后面所講使用route print命令時看到的 信息。除了顯示有效路由外,還顯示當前有效的連接。
netstat -a——本選項顯示一個所有的有效連接信息列表,包括已建立的連接(established),也包括監聽連接請求(listening)的那些連接。
netstat -n——顯示所有已建立的有效連接。
[1]