天天看點

網絡排錯指令

ARP、Tracert、Route 與 NBTStat指令詳解

 1> ARP是一個重要的TCP/IP協定,并且用于确定對應IP位址的網卡實體位址。實用arp指令,我們能夠檢視本地計算機或另一台計算機的ARP高速緩存中的目前内容。此外,使用arp指令,也可以用人工方式輸入靜态的網卡實體/IP位址對,我們可能會使用這種方式為預設網關和本地伺服器等常用主機進行這項作,有助于減少網絡上的資訊量。

  按照預設設定,ARP高速緩存中的項目是動态的,每當發送一個指定地點的資料報且高速緩存中不存在目前項目時,ARP便會自動添加該項目。一旦高速緩存的項目被輸入,它們就已經開始走向失效狀态。例如,在Windows NT/2000網絡中,如果輸入項目後不進一步使用,實體/IP位址對就會在2至10分鐘内失效。是以,如果ARP高速緩存中項目很少或根本沒有時,請不要奇怪,通過另一台計算機或路由器的ping指令即可添加。是以,需要通過arp指令檢視高速緩存中的内容時,請最好先ping 此台計算機(不能是本機發送ping指令)。

  ARP常用指令選項:

  ·arp -a或arp -g

  用于檢視高速緩存中的所有項目。-a和-g參數的結果是一樣的,多年來-g一直是UNIX平台上用來顯示ARP高速緩存中所有項目的選項,而Windows用的是arp -a(-a可被視為all,即全部的意思),但它也可以接受比較傳統的-g選項。

  ·arp -a IP

  如果我們有多個網卡,那麼使用arp -a加上接口的IP位址,就可以隻顯示與該接口相關的ARP緩存項目。

  ·arp -s IP 實體位址

  我們可以向ARP高速緩存中人工輸入一個靜态項目。該項目在計算機引導過程中将保持有效狀态,或者在出現錯誤時,人工配置的實體位址将自動更新該項目。

  ·arp -d IP

  使用本指令能夠人工删除一個靜态項目。

  例如我們在指令提示符下,鍵入 Arp -a;如果我們使用過 Ping 指令測試并驗證從這台計算機到 IP 位址為 10.0.0.99 的主機的連通性,則 ARP 緩存顯示以下項:

    Interface:10.0.0.1 on interface 0x1

    Internet Address   Physical Address   Type

    10.0.0.99       00-e0-98-00-7c-dc   dynamic

  在此例中,緩存項指出位于 10.0.0.99 的遠端主機解析成 00-e0-98-00-7c-dc 的媒體通路控制位址,它是在遠端計算機的網卡硬體中配置設定的。媒體通路控制位址是計算機用于與網絡上遠端 TCP/IP 主機實體通訊的位址。

  至此我們可以用ipconfig和ping指令來檢視自己的網絡配置并判斷是否正确、可以用netstat檢視别人與我們所建立的連接配接并找出ICQ使用者所隐藏的IP資訊、可以用arp檢視網卡的MAC位址。

Tracert

如果有網絡連通性問題,可以使用 tracert 指令來檢查到達的目标 IP 位址的路徑并記錄結果。tracert 指令顯示用于将資料包從計算機傳遞到目标位置的一組 IP 路由器,以及每個躍點所需的時間。如果資料包不能傳遞到目标,tracert 指令将顯示成功轉發資料包的最後一個路由器。當資料報從我們的計算機經過多個網關傳送到目的地時,Tracert指令可以用來跟蹤資料報使用的路由(路徑)。該實用程式跟蹤的路徑是源計算機到目的地的一條路徑,不能保證或認為資料報總遵循這個路徑。如果我們的配置使用DNS,那麼我們常常會從所産生的應答中得到城市、位址和常見通信公司的名字。Tracert是一個運作得比較慢的指令(如果我們指定的目标位址比較遠),每個路由器我們大約需要給它15秒鐘。

  Tracert的使用很簡單,隻需要在tracert後面跟一個IP位址或URL,Tracert會進行相應的域名轉換的。

  tracert 最常見的用法:

  tracert IP address [-d] 該指令傳回到達 IP 位址所經過的路由器清單。通過使用 -d 選項,将更快地顯示路由器路徑,因為 tracert 不會嘗試解析路徑中路由器的名稱。

  Tracert一般用來檢測故障的位置,我們可以用tracert IP在哪個環節上出了問題,雖然還是沒有确定是什麼問題,但它已經告訴了我們問題所在的地方,我們也就可以很有把握的告訴别人----某某地方出了問題。

Route

大多數主機一般都是駐留在隻連接配接一台路由器的網段上。由于隻有一台路由器,是以不存在使用哪一台路由器将資料報發表到遠端計算機上去的問題,該路由器的IP位址可作為該網段上所有計算機的預設網關來輸入。

  但是,當網絡上擁有兩個或多個路由器時,我們就不一定想隻依賴預設網關了。實際上我們可能想讓我們的某些遠端IP位址通過某個特定的路由器來傳遞,而其他的遠端IP則通過另一個路由器來傳遞。

  在這種情況下,我們需要相應的路由資訊,這些資訊儲存在路由表中,每個主機和每個路由器都配有自己獨一無二的路由表。大多數路由器使用專門的路由協定來交換和動态更新路由器之間的路由表。但在有些情況下,必須人工将項目添加到路由器和主機上的路由表中。Route就是用來顯示、人工添加和修改路由表項目的。

  一般使用選項:

  ·route print

  本指令用于顯示路由表中的目前項目,在單路由器網段上的輸出;由于用IP位址配置了網卡,是以所有的這些項目都是自動添加的。

  ·route add

  使用本指令,可以将信路由項目添加給路由表。例如,如果要設定一個到目的網絡209.98.32.33的路由,其間要經過5個路由器網段,首先要經過本地網絡上的一個路由器,器IP為202.96.123.5,子網路遮罩為255.255.255.224,那麼我們應該輸入以下指令:

  route add 209.98.32.33 mask 255.255.255.224 202.96.123.5 metric 5

  ·route change

  我們可以使用本指令來修改資料的傳輸路由,不過,我們不能使用本指令來改變資料的目的地。下面這個例子可以将資料的路由改到另一個路由器,它采用一條包含3個網段的更直的路徑:

  route add 209.98.32.33 mask 255.255.255.224 202.96.123.250 metric 3

  ·route delete

  使用本指令可以從路由表中删除路由。例如:route delete 209.98.32.33

NBTStat

使用 nbtstat 指令釋放和重新整理 NetBIOS 名稱。NBTStat(TCP/IP上的NetBIOS統計資料)實用程式用于提供關于關于NetBIOS的統計資料。運用NetBIOS,我們可以檢視本地計算機或遠端計算機上的NetBIOS名字表格。

  常用選項:

  ·nbtstat -n

  顯示寄存在本地的名字和服務程式。

  ·nbtstat -c

  本指令用于顯示NetBIOS名字高速緩存的内容。NetBIOS名字高速緩存用于寸放與本計算機最近進行通信的其他計算機的NetBIOS名字和IP位址對。

  ·nbtstat -r

  本指令用于清除和重新加載NetBIOS名字高速緩存。

  ·nbtstat -a IP

  通過IP顯示另一台計算機的實體位址和名字清單,我們所顯示的内容就像對方計算機自己運作nbtstat -n一樣。

  ·nbtstat -s IP

  顯示實用其IP位址的另一台計算機的NetBIOS連接配接表。

  例如我們在指令提示符下,鍵入:nbtstat -RR 釋放和重新整理過程的進度以指令行輸出的形式顯示。該資訊表明目前注冊在該計算機的 WINS 中的所有本地 NetBIOS 名稱是否已經使用 WINS 伺服器釋放和續訂了注冊

繼續閱讀