自分自身(localhost)にpingを飛ばすとIPv6で返してくる

▶ in ネットワーク posted 2016.01.07 Thursday / 23:32

IPv6を無効にしているにもかかわらず、localhostにpingを飛ばすとIPv6のアドレスで返してくることがあります。

 

IPv4で返してくるように設定するにはどうすればいいか聞かれることがあるので、回避策をメモしておきます。

 

【現象】自分自身(localhost)にpingを飛ばすとIPv6で返してくる

ping_ipv6

 

 

【回避策】IPv4をIPv6より優先に設定することで回避できます。

 

  1. 最初に現在の優先順位を確認します。
    現在の優先順位を確認するコマンド
    「netsh interface ipv6 show prefixpolicies」
    ipv4_01

    優先順位   ラベル  プレフィックス
    ----------  -----  --------------------------------
            50      0  ::1/128
            40      1  ::/0
            35      4  ::ffff:0:0/96 ←これを再優先に設定する
            30      2  2002::/16
             5      5  2001::/32
             3     13  fc00::/7
             1     11  fec0::/10
             1     12  3ffe::/16
             1      3  ::/96
    ---------------------------------------------------------

     

  2. ここで、"ffff:0:0/96"(IPv4互換)プロトコルを、最上位に持ってくるために、コマンドプロンプトを管理者で起動して、下記コマンドを実行します。
    ---------------------------------------------------------
    netsh interface ipv6 set prefixpolicy ::ffff:0:0/96 55 4
    netsh interface ipv6 set prefixpolicy ::1/128 50 0
    netsh interface ipv6 set prefixpolicy ::/0 40 1
    netsh interface ipv6 set prefixpolicy 2002::/16 30 2
    netsh interface ipv6 set prefixpolicy 2001::/32 5 5
    netsh interface ipv6 set prefixpolicy fc00::/7 3 13
    netsh interface ipv6 set prefixpolicy fec0::/10 1 11
    netsh interface ipv6 set prefixpolicy 3ffe::/16 1 12
    netsh interface ipv6 set prefixpolicy ::/96 1 3
    ---------------------------------------------------------


  3. 再度「netsh interface ipv6 show prefixpolicies」で優先順位を確認します。
    「ffff:0:0/96」が1番上に表示されていればOKです。
    ipv4_02

    優先順位   ラベル  プレフィックス
    ----------  -----  --------------------------------
            55      4  ::ffff:0:0/96 ←これでOK
            50      0  ::1/128
            40      1  ::/0
            30      2  2002::/16
             5      5  2001::/32
             3     13  fc00::/7
             1     11  fec0::/10
             1     12  3ffe::/16
             1      3  ::/96
    ---------------------------------------------------------


  4. この状態で、自分自身にpingを飛ばすとIPv4で返してくるようになります。
    ping_ipv4

元の設定に戻すには

 

コマンドプロンプトを管理者として起動して下記コマンドを実行後、OSを再起動します。

 

netsh interface ipv6 reset



Trackbacks

Trackback URL : http://long-distance.jp/sb/sb.cgi/23


PAGE TOP