-
【求助】一些狀況的封包傳送觀念請教
:) 請教各位一些觀念,
假如在網域 192.168.0.0/24 中,
[b]Q1:[/b]
某主機"A"
ip:192.168.0.10
要進行 ip unicast 到某主機"B"
ip: 192.168.0.20
MAC: 12:12:12:12:12:12
請問此時 packet 中的
destination ip 填入: 192.168.0.20
destination MAC 填入: 12:12:12:12:12:12 (假設已知)
對嗎?
------------------------------------------
[b]Q2:[/b]
若A要做 ip broadcast 時,
請問此時 packet 中的
destination ip 填入: 192.168.0.255
destination MAC 填入: FF:FF:FF:FF:FF:FF
對嗎?
------------------------------------------
[b]Q3:[/b]
假如 A 還不知道 B 的 MAC 的話,
當 A 要進行 ARP broadcast 詢問主機 B 的 MAC 時,
請問此時 packet 中的
destination ip 填入: 192.168.0.20
destination MAC 填入: FF:FF:FF:FF:FF:FF
當所有該區段的電腦接收packet後會一層層往上拆解直到ip layer,若發現packet的destination ip與自己的ip不同則會drop掉.
而若是主機B,則會繼續往上猜解packet直到找到對應的程式處理(亦即回應A的詢問MAC)
對嗎?
--------------------------------------------
[b]Q4:[/b]
請教在單純環境中的網路芳鄰(沒有 AD, PDC, wins server, 也無 lmhost 檔),若某主機只知道要聯絡的主機的電腦名稱 vivian ([color=green]我不確定 NETBIOS NAME 是否等同於電腦名稱,有誤還請各位指正[/color]),完全不知該主機 vivian 的 IP 時,此時是否會以 ip broadcast 的方式去聯絡 vivian ?
若是,請問此時 packet 的
destination ip 填入: 192.168.0.255
destination MAC 填入: FF:FF:FF:FF:FF:FF
然後所有該區段電腦都會接收packet並一層層拆解直至應用程式"網路芳鄰"接手處理並判斷data中的netbios name與自己是否相同,確定相同才會進而回應.
對嗎?
--------------------------------------------
[b]Q5:[/b]
最後請教何種情況packet的destination ip會填入: 255.255.255.255 ? :)
-
Q5:
最後請教何種情況packet的destination ip會填入: 255.255.255.255 ?
A: DHCP 是一個很好的例子
當 DHCP 客戶端第一次登錄網路的時候﹐也就是客戶發現本機上沒有任何 IP 資料設定﹐它會向網路發出一個 DHCPDISCOVER 封包。因為客戶端還不知道自己屬於哪一個網路﹐所以封包的來源位址會為 0.0.0.0 ﹐而目的位址則為 255.255.255.255 ﹐然後再附上 Dhcpdiscover 的信息﹐向網路進行廣播。
-
[QUOTE=foxhound]Q5:
最後請教何種情況packet的destination ip會填入: 255.255.255.255 ?
A: DHCP 是一個很好的例子
當 DHCP 客戶端第一次登錄網路的時候﹐也就是客戶發現本機上沒有任何 IP 資料設定﹐它會向網路發出一個 DHCPDISCOVER 封包。因為客戶端還不知道自己屬於哪一個網路﹐所以封包的來源位址會為 0.0.0.0 ﹐而目的位址則為 255.255.255.255 ﹐然後再附上 Dhcpdiscover 的信息﹐向網路進行廣播。[/QUOTE]
:confused: 再請問關於DESTINATION IP: 255.255.255.255 的情形,
實際傳送時,封包會廣播至傳送主機所在網段,還是甚至會流出gateway呢?
(要我猜的話,既然特別歸類為DHCP CLIENT專用,我想應該不會吧!?)
-
[QUOTE=b90220208]:confused:
(要我猜的話,既然特別歸類為DHCP CLIENT專用,我想應該不會吧!?)[/QUOTE]
你猜的沒錯
所有的廣播封包都不可能穿過Gateway(Router)
否則整個網路會被廣播封包塞爆
不過DHCP封包可以經由PROXY的機制傳遞
所以不一定每個網域都要安裝DHCP Server
-
所以gateway(router)不會forward broadcast(255.255.255.255)封包,那麼其是否也有類似終端電阻的什麼東西? 否則要如何阻止dhcp discovery電子信號繼續流串出去...
---------------
再請教:
當網段的所有主機接收到 DHCP CLIENT (若為第一次登錄網路)所發的
DHCP DISCOVERY PACKET (destination ip: 255.255.255.255 , destination MAC: FF:FF:FF:FF:FF:FF)
後,接下來要如何判斷該不該繼續處理此封包,我想問的是:
Q1:
若為 DHCP SERVER ,約需經過什麼樣的程序以確定這封包是它得處理的,是利用 socket: 547/TCP(/UDP)還是什麼機制呢?
Q2:
而若網段其他非 DHCP SERVER 主機接又是藉由什麼機制來處理該封包呢?
Q3:
DHCP SERVEER 回應的 Dhcpoffer packet 會根據 Dhcpdiscover packet 內所帶的 MAC 位址信息及 XID 編號來傳遞給要求租約的client.此時 Dhcpoffer packet 內的:
destination ip 又該填什麼呢?
destination MAC 填入 client 的硬體位址對嗎?