Q: 為何連線到某個 AP 內,出去的 request 有時會自動加上一個後綴?
Answer: 這個是由 Host 自動加上的 DNS 尾碼,由 DHCP 夾帶的資訊所設定的。
(先讀下面 DHCP 相關的資訊!) 我們知道 DHCP 會將一些網路設定包在 DHCP payload 中送給 client。 當中就有 DNS 的相關資訊,告訴 client 該跟哪個 DNS 來發送 DNS query。
相關欄位的設定:
可以從 DHCP Offer
封包當中看到這個 Options:
而 Host 端在發送封包到某個目標 url 時,DNS 會嘗試將 DNS 尾碼加在這個 url 後面 做發送。
舉例來說,在公司我們連線到特定的網域時,當中的 DHCP server 便會把相關的 network configuration 送給我們的電腦; 此時我們 Host 端便會將包在內部的 DNS 資訊做設定。 而當我們打 ping <主機名稱> 時,host 便會在後面加上所設定的 DNS 尾碼。
這也是為何我們在這個網域下 ping 我們的開發主機時會自動 append 一段網址的原因!
MAC address
作為儲存的 index/key擷圖 (注意: transaction ID 相同的為同一輪的 DHCP 交握~):
當你的電腦與 DHCP server 不在同一個網段時,這時就需要依賴 DHCP relay agent 來轉發 DHCP 封包來維持 DHCP server 與 client 之間的通信。
舉公司內的網路為例,client 端為 192.168.98.x
,而 DHCP server 為 192.168.99.33
, 這時我們的 router 上就有 enable DHCP relay agent (也就是 192.168.98.1
),將中間通信的 DHCP traffic 轉交給正確的位置上。
可以從 DHCP Offer 當中看到這個資訊!
port 67 and port 68
作為主要的 capturing filter (將來回的資訊都擷取)dnsmasq
或是 bind9