為什麼 Windows 7 會宣布自己是 IPv6 路由器?

為什麼 Windows 7 會宣布自己是 IPv6 路由器?

我有一個從 Linux 盒子到代理的 6in4 ipv6 連線。我用來gogoc建立與代理的連接,並向radvd網路上的客戶端通告路由。

所有這一切似乎都有效,問題是我在同一網路上有一台 Windows 7 機器,而且它正在將自己廣告為 ipv6 路由器。但事實並非如此。

這是 radvdump 的輸出:

 #
# radvd configuration generated by radvdump 1.8.5
# based on Router Advertisement from [snip]:ea2
# received by interface eth0
#

interface eth0
{
        AdvSendAdvert on;
        # Note: {Min,Max}RtrAdvInterval cannot be obtained with radvdump
        AdvManagedFlag on;
        AdvOtherConfigFlag on;
        AdvReachableTime 0;
        AdvRetransTimer 0;
        AdvCurHopLimit 0;
        AdvDefaultLifetime 1800;
        AdvHomeAgentFlag off;
        AdvDefaultPreference medium;
        AdvSourceLLAddress on;
        AdvLinkMTU 1500;
}; # End of interface definition
#
# radvd configuration generated by radvdump 1.8.5
# based on Router Advertisement from [snip]:1121
# received by interface eth0
#

interface eth0
{
        AdvSendAdvert on;
        # Note: {Min,Max}RtrAdvInterval cannot be obtained with radvdump
        AdvManagedFlag off;
        AdvOtherConfigFlag off;
        AdvReachableTime 0;
        AdvRetransTimer 0;
        AdvCurHopLimit 64;
        AdvDefaultLifetime 1800;
        AdvHomeAgentFlag off;
        AdvDefaultPreference medium;
        AdvLinkMTU 1280;
        AdvSourceLLAddress on;

        prefix [snip]::/64
        {
                AdvValidLifetime 86400;
                AdvPreferredLifetime 14400;
                AdvOnLink on;
                AdvAutonomous on;
                AdvRouterAddr off;
        }; # End of prefix definition

}; # End of interface definition

我最終有兩條路線:

$ ip -6 route
[snip]::/64 dev eth0  proto kernel  metric 256  expires 86117sec
fe80::/64 dev eth0  proto kernel  metric 256
default via [snip]:ea2 dev eth0  proto kernel  metric 1024  expires 1492sec
default via [snip]:1121 dev eth0  proto kernel  metric 1024  expires 1506sec

路線ea2是到Windows7盒子。它沒有安裝路由器,也沒有任何 tun/tap 介面。我不明白它為什麼這樣做。

我可以停用它的 ipv6,但我希望它是客戶端,而不是路由器。

更新IP Helper服務 ( Provides tunnel connectivity using IPv6 transition technologies (6to4, ISATAP, Port Proxy, and Teredo), and IP-HTTPS. If this service is stopped, the computer will not have the enhanced connectivity benefits that these technologies offer.) 似乎是罪魁禍首,就好像它已停止一樣,我沒有收到廣告的路線。所以我現在的問題更具體的是「為什麼 IP Helper 宣布路由?」。

答案1

  • 運行高架netsh並前往interface ipv6

  • 檢查是否show route列出了任何發表路線。

  • 如果是,請使用 取消發布它們set route ::/0 "Local Area Connection" publish=no

但是,根據radvdump輸出,您的 Windows 機器不會通告任何前綴,因此我不明白 Linux 為什麼要透過它添加預設路由。

  • 用於show interface verbose列出網路介面;尋找“發送路由器通告”或類似值。

  • 用於set interface "Local Area Connection forward=disable advertise=disable停用 IPv6 轉送和路由器通告。

答案2

您是否嘗試告訴 Windows 7 電腦預設路由所在的位置或從路由器中刪除壞路由?除非您開啟了 ICS,否則它應該是純粹的客戶端。

相關內容