mieki256's diary



2024/01/06() [n年前の日記]

#1 [windows][linux] Windows10でIPv4とIPv6の優先度を変更

Windows10 x64 22H2 + MobaXterm 23.6 build 5186 Personal Edition で、SFTP接続ができない症状で悩んでしまったけれど、ホスト名に相手先のIPv4アドレスを指定すればSFTP接続ができる、というところまでは分かった。

ということは、Windows10側で、IPv6 より IPv4 のほうが優先して使われるように設定すれば、ホスト名にPC名を入力してもSFTP接続もできるようになるのではないかと閃いた。

ググってみたら、IPv4 と IPv6 の優先度を変更する方法はあるらしい。

_Windows 10でIPv4とIPv6の優先度を変更する方法 - 4thsight.xyz
_Windowsで、IPv6 より IPv4 を優先に設定 - chinaz.org
_「IPv6無効設定」はもう古い?IPv6を有効にしたままIPv4の優先順位を上げる設定 - ぼくんちのTV 別館

一応そのあたり試してみた。

状態の確認 :

ping localhost と打った際の結果で状態が分かる。
> ping localhost

MAINPCNAME [::1]に ping を送信しています 32 バイトのデータ:
::1 からの応答: 時間 <1ms
::1 からの応答: 時間 <1ms
::1 からの応答: 時間 <1ms
::1 からの応答: 時間 <1ms

::1 の ping 統計:
    パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失)、
ラウンド トリップの概算時間 (ミリ秒):
    最小 = 0ms、最大 = 0ms、平均 = 0ms

「::1」と表示されたら、IPv6 が優先される状態になっている。

管理者権限で cmd.exe を開いて状態を確認。
netsh interface ipv6 show prefixpolicies
> netsh interface ipv6 show prefixpolicies

アクティブ状態を照会しています...

優先順位   ラベル  プレフィックス
----------  -----  --------------------------------
        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
この並びになってる場合は、IPv6 が優先して使われる状態になっている。らしい。

優先度を変更 :

「::ffff:0:0/96」が一番上になれば、IPv4 が優先された状態になるとのこと。以下を打ち込めば設定を変更できる。
netsh interface ipv6 set prefixpolicy ::ffff:0:0/96 60 4
> netsh interface ipv6 set prefixpolicy ::ffff:0:0/96 60 4
 OK

状態を確認してみる。「::ffff:0:0/96」が一番上になってればヨシ。
> netsh interface ipv6 show prefixpolicies
アクティブ状態を照会しています...

優先順位   ラベル  プレフィックス
----------  -----  --------------------------------
        60      4  ::ffff:0:0/96
        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

ping localhost の結果も変わる。
> ping localhost

MAINPCNAME [127.0.0.1]に ping を送信しています 32 バイトのデータ:
127.0.0.1 からの応答: バイト数 =32 時間 <1ms TTL=128
127.0.0.1 からの応答: バイト数 =32 時間 <1ms TTL=128
127.0.0.1 からの応答: バイト数 =32 時間 <1ms TTL=128
127.0.0.1 からの応答: バイト数 =32 時間 <1ms TTL=128

127.0.0.1 の ping 統計:
    パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失)、
ラウンド トリップの概算時間 (ミリ秒):
    最小 = 0ms、最大 = 0ms、平均 = 0ms

「127.0.0.1」が出てきたら、IPv4の優先度が高くなってる。

MobaXtermでの結果 :

IPv4 の優先度を高くしてみたけれど、MobaXterm は相変わらず SFTP接続できなかった…。効果無し…。

設定を元に戻そう…。

状態のリセット :

以下を打てば状態をリセットできる。
netsh interface ipv6 reset
上記の設定後、OSの再起動が必要。

以上です。

過去ログ表示

Prev - 2024/01 - Next
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project