windows 8.1 收到 RA 封包 ( M=0,O=1 ) 後 , 卻還一直送出 DHCPv6 Solicit 封包

 

wireshark RA with m=0 o=1.jpg    

 

這樣會導致 interface 只會有 IPv6 address , 卻沒有 IPv6 DNS address

 

windows8 cannot get dns from dhcpv6 information request.jpg    

 

執行 netsh int ipv6 show int int=LAN1

可以看到「管理的位址設定」是 enabled ,「其他可設定狀態設定」是 enabled

這代表 windows 8.1 是處於 DHCPv6 stateful mode ( M=1,O=1 )

 

show windows8 ipv6 interface.jpg  

 

執行 netsh int ipv6 set int int=LAN1 managedaddress=disabled

結果顯示 "參數錯誤"  不知道為什麼不能設定

 

執行 netsh int ipv6 reset , 如下圖

 

windows8 netsh interface ipv6 reset.jpg    


然後重開電腦

結果「管理的位址設定」還是 enabled  不知道為什麼不能 disabled

 

將 windows 8.1 更新到最新版本 , 結果還是一樣

windows 8.1 收到 RA 封包 ( M=0,O=1 ) 後 , 卻還一直送出 DHCPv6 Solicit 封包

 

這篇文章有提到這個問題

https://support.microsoft.com/en-us/kb/2822311/

有個 hotfix 可以下載

Windows8-RT-KB2822311-x64.msu 是下載的 hotfix

但我沒辦法安裝 , 安裝時會顯示 "此更新不適用您的電腦" ... Orz

 

workaround 方法

執行 netsh int ip reset

執行 netsh int ipv6 reset

重開機

此時「管理的位址設定」就會變成 disabled

這樣 windows 8.1 就可以正確要到 DNS

 

windows 8.1 wireshark RA with m=0 o=1 correct.jpg   

 

參考說明

routerdiscovery - 可由 DHCP 啟用、停用或控制。

managedaddress - 是否啟用管理的位址設定。這個參數的設定不會影響

已啟用路由器探索且停用通告的介面。在這種情況下,

參數是由路由器探索所控制。

otherstateful - 是否啟用其他可設定狀態設定。這個參數的設定不會

影響啟用路由器探索且停用通告的介面。在這種情況下,

參數是由路由器探索所控制。

 

看完文章請按 讚 or 推 , 感謝啦 ~ 

文章標籤
創作者介紹

Kai-Cho 的環遊世界

Kai-Cho 發表在 痞客邦 PIXNET 留言(0) 人氣()