ICMP地址掩碼請求與應答
發表于:2007-05-26來源:作者:點擊數:
標簽:
ICMP地址掩碼請求用于無盤系統在引導過程中獲取自己的子網掩碼。系統廣播它的ICMP請求報文(這一過程與無盤系統在引導過程中用RARP獲取IP地址是類似的)。無盤系統獲取子網掩碼的另一個方法是BOOTP 協議 ,ICMP地址掩碼請求和應答報文的格式如圖6-4所示。 圖
ICMP地址掩碼請求用于無盤系統在引導過程中獲取自己的子網掩碼。系統廣播它的ICMP請求報文(這一過程與無盤系統在引導過程中用RARP獲取IP地址是類似的)。無盤系統獲取子網掩碼的另一個方法是BOOTP協議,ICMP地址掩碼請求和應答報文的格式如圖6-4所示。

圖6-4 ICMP地址掩碼請求和應答報文 I C M P報文中的標識符和序列號字段由發送端任意選擇設定,這些值在應答中將被返回。這樣,發送端就可以把應答與請求進行匹配。
我們可以寫一個簡單的程序(取名為i c m p a d d r m a s k),它發送一份I C M P地址掩碼請求報文,然后打印出所有的應答。由于一般是把請求報文發往廣播地址,因此這里我們也這樣做。目的地址(1 4 0 . 2 5 2 . 1 3 . 6 3)是子網1 4 0 . 2 5 2 . 1 3 . 3 2的廣播地址(見圖3 - 1 2)。sun % icmpaddrmask 140.252.13.63 received mask = ffffffe0, from 140.252.13.33 來自本機received mask = ffffffe0, from 140.252.13.35 來自b s d i received mask = ffff0000, from 140.252.13.34 來自s v r 4 在輸出中我們首先注意到的是,從s v r 4返回的子網掩碼是錯的。顯然,盡管s v r 4接口已經設置了正確的子網掩碼,但是S V R 4還是返回了一個普通的B類地址掩碼,就好像子網并不存在一樣。svr4 %ifconfig emd0 emd0: flags=23> inet 140.252.13.34 netmask ffffffe0 broadcast 140.252.13.63 S V R 4處理I C M P地址掩碼請求過程存在差錯。我們用t c p d u m p命令來查看主機b s d i上的情況,輸出如圖6 - 5所示。我們用-e選項來查看硬件地址。

圖6-5 發到廣播地址的ICMP地址掩碼請求 主機在內(參見圖2 - 4,當以太網驅動程序識別出目的地址是廣播地址后,它就把分組送到
網絡上,同時傳一份拷貝到環回接口)。
接下來,b s d i廣播應答,而s v r 4卻只把應答傳給請求主機。通常,應答地址必須是單播地址,除非請求端的源I P地址是0 . 0 . 0 . 0。本例不屬于這種情況,因此,把應答發送到廣播地址是B S D / 3 8 6的一個內部差錯。
R F C規定,除非系統是地址掩碼的授權代理,否則它不能發送地址掩碼應答(為了成為授權代理,它必須進行特殊配置,以發送這些應答。參見附錄E)。但是,正如我們從本例中看到的那樣,大多數主機在收到請求時都發送一個應答,甚至有一些主機還發送差錯的應答。
最后一點可以通過下面的例子來說明。我們向本機I P地址和環回地址分別發送地址掩碼請求:sun % icmpaddrmask sun received mask= ff000000, from 140.252.13.33 sun % icmpaddrmask localhost received mask= ff000000, from 127.0.0.1
上述兩種情況下返回的地址掩碼對應的都是環回地址,即A類地址1 2 7 . 0 . 0 . 1。還有,我們從圖2 - 4可以看到,發送給本機I P地址的數據報(1 4 0 . 2 5 2 . 1 2 . 3 3)實際上是送到環回接口。I C M P地址掩碼應答必須是收到請求接口的子網掩碼(這是因為多接口主機每個接口有不同的子網掩碼),因此兩種情況下地址掩碼請求都來自于環回接口。
原文轉自:http://www.kjueaiud.com
老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月
|