Windows DHCP 伺服器未提供正確的 IP

Windows DHCP 伺服器未提供正確的 IP

我有一個具有多個作用域的 Windows DHCP 伺服器,每個作用域都與一個 VLAN 相關,並且我有一台連接到交換器連接埠的 PC。然後,我會變更此交換器連接埠上的存取 VLAN,以查看 PC 是否接收到屬於該 VLAN 的 IP 位址,但無論交換器連接埠上配置的 VLAN 是什麼,用戶端總是會收到相同的 IP 位址。我已經在防火牆上配置了 DHCP 中繼,這部分工作正常。現在,當我將交換器連接埠變更為新 VLAN 時,當我執行 tcpdump 並查看追蹤時,我可以看到客戶端正在請求舊 IP 位址 172.22.2.4(舊 VLAN),並且 DHCP 伺服器提供了這個舊 IP 位址,忽略防火牆插入DHCP 請求封包中的「中繼代理IP 位址」欄位(172.22.9.1)。不知道為什麼 PC 在執行 ipconfig /release 和 ipconfig /renew 後要求舊 IP。但根據我的理解,我認為 DHCP 伺服器應該提供 172.22.9.0/24 範圍內的 IP 位址,因為中繼代理 IP 位址是 172.22.9.1,無論 PC 請求哪個 IP。

透過邏輯與比較將中繼 IP 位址與伺服器配置的作用域的子網路遮罩進行比較,以找到網路 ID 與中繼 IP 位址的網路 ID 相符的作用域。找到符合項目後,DHCP 伺服器會從該範圍指派一個 IP 位址。

https://www.itgeared.com/dhcp-relay-agent/

我看到的唯一奇怪的事情是防火牆沒有在GIADDR 欄位或DHCP 選項82 中插入“中繼代理IP 位址”,而是在主DHCP 欄位中插入“中繼代理IP 位址”,儘管這可能是正確的。有任何想法嗎?

附上 DHCP 請求和 DHCP 回覆追蹤。

DCHP 請求

DHCP回覆

問候, 朱利安

答案1

如果有人有興趣,問題是 DHCP 伺服器配置了超級作用域:

阻止 DHCP 用戶端在新 VLAN 上接收舊 IP 位址

一旦我刪除了超級作用域,服務就可以正常運作。

問候, 朱利安

相關內容