WindowsでIPv6を無効にする方法

導入された当初、IPv6は世界の飽くなきIPアドレスへの需要を排除することを目的としていました。しかし、IPv6の採用は遅れており、トラブルシューティングのためにWindowsでIPv6を無効にすることを選択する人もいます。さあ、やり方を学びましょう。

このチュートリアルでは、GUIとコマンドラインターミナルの両方を使用してIPv6を無効にする方法を学びます。

準備はできましたか?では、始めましょう!

前提条件

このチュートリアルは実演形式です。一緒にやりたい場合は、以下のものを準備してください:

  • このチュートリアルでは、Windows 10 build 20H2 を使用しますが、Windows 10 のどのビルドでも動作します。
  • 管理者アクセス権を持つユーザーとしてWindowsにログインしてください。
  • PowerShellの例では、Windows 10 の組み込みのWindows PowerShell環境を使用します。

GUIを使用してIPv6を無効にする

まず、Windows 10のネットワーク接続アプリを使用してIPv6を無効にする必要があります。そのためには、ネットワークアダプタのプロパティにアクセスしてIPv6を無効にする必要があります。

1. システムトレイのネットワーク/ Wi-Fiアイコンを右クリックし、ネットワークとインターネットの設定を開くを選択してネットワーク設定にアクセスします。

Accessing Network & Internet Settings.

2. 高度なネットワーク設定の下で、アダプタのオプションを変更を選択して、コンピュータで使用されているすべてのアダプタ(ネットワークカード)を表示します。

Viewing all network cards by selecting Change Adapter Options.

3. 今、Ethernetアダプタを右クリックして、プロパティを選択します。これにより、選択したネットワークカードの「プロパティ」ウィンドウが開きます。

Accessing the Network Card’s Properties.

4. インターネットプロトコル v6 (TCP/IPv6) オプションを ネットワーキング タブのリストから見つけます。オプションがチェックされている場合は、以下に示すようにチェックボックスをクリックして無効にします。その後、OK をクリックします。

IPv6 を無効にした後、IPv4 アダプタの設定がデフォルトで構成されているため、コンピュータのインターネット接続に変化はありません。

Disabling IPv6 from your Ethernet card.

PowerShell を使用して IPv6 を無効にする

Windowsネットワーク構成を管理する際にGUIではなくコマンドライン環境を好む場合は、PowerShellで次のコマンドを実行して IPv6 ネットワークアダプタを無効にします。

1. 管理者として PowerShell を開き、以下の Get-NetAdapterBinding コマンドを実行して、ネットワークアダプタのバインディング、コンポーネントID、およびステータスのリストを表示します。さらに、ComponentIDms_tcpip6 と等しいアダプタを Where-Object コマンドでフィルタリングします。

Get-NetAdapterBinding | Where-Object ComponentID -EQ 'ms_tcpip6'

返された値には、次のステップで必要になるアダプターのDisplayNameComponentIDをメモしておいてください。以下の例では、Ethernetアダプターが選択されています。

Listing All Network Adapters with IPv6 Components.

2. ネットワークアダプターを無効にするには、以下のDisable-NetAdapterBindingコマンドを実行してください。

以下の例では、Ethernetアダプターにms_tcpip6コンポーネントが無効にされていますが、名前とコンポーネントIDは必要なターゲットに置き換えてください。成功した場合、出力は表示されません。

Disable-NetAdapterBinding -Name 'Ethernet' -ComponentID 'ms_tcpip6'
Disabling IPv6 on an adapter.

3. 最後に、ネットワークアダプターのIPv6が無効になっているかどうかを確認するために、以下のGet-NetAdapterBindingコマンドを実行してください。

以下のように、Ethernetアダプターが表示されますが、必要なターゲットに置き換えてください。

Get-NetAdapterBinding -Name 'Ethernet' -ComponentID 'ms_tcpip6'
Verifying if IPv6 Network Adapter is now Disabled.

おそらく、ネットワークアダプターのIPv6を有効にする予定はないでしょう。その場合は、すべてのネットワークアダプターでIPv6を無効にするには、代わりにこのコマンドを実行してください。Disable-NetAdapterBinding -Name "*" -ComponentID ms_tcpip6

コマンドプロンプトを使用してすべてのネットワークアダプターのIPv6を無効にする

代わりに、PowerShell の代わりに、コマンドプロンプトを使用することもできます。コマンドプロンプトを使用すると、PowerShell とは異なる一連のコマンドを実行してネットワークアダプタの IPv6 を無効にすることができます。

1. 管理者としてコマンドプロンプトを開きipconfig コマンドを実行します。 ipconfig コマンドは現在のすべての TCP/IP ネットワーク構成値を表示するため、ネットワークアダプタで IPv6 が有効かどうかを確認できます。

ipconfig

下記では、イーサネットアダプタの IPv6 が有効になっていることがわかります。

Verifying if IPv6 is Enabled.

2. すべてのネットワークインターフェイスの IPv6 接続を無効にする一連のコマンドを実行します。

テキストの前にある :: はコメントを示しており、コマンドを端末にコピー&ペーストする場合のためです。

:: Disables the Teredo tunneling. Teredo is a transition technology that gives 
:: full IPv6 connectivity and host-to-host automatic tunneling 
:: for unicast IPv6 traffic.
netsh interface teredo set state disabled

:: Disables the 6to4 tunnels that support communication with IPv6 internet
netsh interface ipv6 6to4 set state state=disabled undoonstop=disabled

:: Disables all IPv6 transition technologies
netsh interface ipv6 isatap set state state=disabled

成功した場合、各コマンドを実行した後に Ok メッセージが表示されます。

Disabling all IPv6 interfaces.

3. 最後に、ipconfig コマンドを再実行して、IPv6 を正常に無効にできたかどうかを確認します。

ipconfig

下記のように、IPv6 がリストされていないことに注意してください。これは、IPv6 が現在無効になっていることを示しています。

Verifying if IPv6 is now disabled.

結論

このチュートリアルでは、IPv6 の概要と Windows での無効化方法を学びました。また、コマンドプロンプトと PowerShell の両方で IPv6 を無効にするコマンドも学びました。

今、ネットワークトラブルシューティングルーチンにIPv6の無効化を含めますか?

Source:
https://adamtheautomator.com/disable-ipv6/