速讀原著-TCP/IP(Ping程序簡介)

第7章 Ping程序

7.1 引言

「p i n g」這個名字源於聲納定位操作。 P i n g程序由Mike Muuss編寫,目的是為了測試另一台主機是否可達。該程序發送一份 I C M P回顯請求報文給主機,並等待返回 I C M P回顯應答(圖6 – 3列出了所有的I C M P報文類型)。

一般來說,如果不能 P i n g到某台主機,那麼就不能 Te l n e t或者F T P到那台主機。反過來,如果不能Te l n e t到某台主機,那麼通常可以用 P i n g程序來確定問題出在哪裡。 P i n g程序還能測出到這台主機的往返時間,以表明該主機離我們有「多遠」。

在本章中,我們將使用 P i n g程序作為診斷工具來深入剖析 I C M P。P i n g還給我們提供了檢測I P記錄路由和時間戳選項的機會。文獻 [Stevens 1990]的第11章提供了P i n g程序的源代碼。幾年前我們還可以作出這樣沒有限定的斷言,如果不能 P i n g到某台主機,那麼就不能Te l n e t或F T P到那台主機。隨着I n t e r n e t安全意識的增強,出現了提供訪問控制清單的路由器和防火牆,那麼像這樣沒有限定的斷言就不再成立了。一台主機的可達性可能不只取決於I P層是否可達,還取決於使用何種協議以及端口號。P i n g程序的運行結果可能顯示某台主機不可達,但我們可以用Te l n e t遠程登錄到該台主機的2 5號端口(郵件服務器)。