IPv6を完全に無効化してIPv4のみに切り替える方法
IPv6はネットワークの未来とされており、長期的にはそうなるでしょう。しかし実際には、解決するより多くの問題を生むことがあります。トンネルの外に漏れるVPN、プロバイダのIPv6対応が不十分で遅くなる接続、対応できない古いソフトやNASなどです。こうした場合、IPv4のみに戻すと多くは数分で解決します。お使いのシステムに応じた正しい手順を紹介します。
IPv6を無効にする前に考えるべきこと
原則としてIPv6を無効化するのは良い選択ではありません。問題なく動いているなら有効のままにしましょう。インターネットの流れはそちらに向かっており、対応サービスも増え続けています。無効化が正当化される理由は具体的です。
- VPNがIPv6を保護せず、本当のアドレスが漏れている(ipleak.netやdnsleaktest.comでのテストで確認可能)
- IPv6をオフにすると消える遅延や接続エラーがある。プロバイダの実装に問題がある兆候
- 古いネットワーク機器や特定のソフトウェアがIPv6に対応せず、競合を起こす
- IPv6が導入されていない企業ネットワークを管理しており、不必要な攻撃面となっている
いずれにも当てはまらないなら、IPv6を無効化しても得るものはなく、将来何かを壊すリスクだけ残ります。
WindowsでIPv6を無効化する
Windows 10とWindows 11ではGUI操作が最も簡単です。ネットワーク接続を開きます。タスクバーのネットワークアイコンを右クリックし、「ネットワークとインターネットの設定」、次に「アダプターのオプションを変更する」をクリックします。
アクティブな接続(Wi-FiまたはEthernet)を右クリックし、「プロパティ」を選びます。一覧で「インターネット プロトコル バージョン 6(TCP/IPv6)」のチェックを外し、OKで確定します。
この方法はそのインターフェースだけでIPv6を無効化します。システム全体で完全に無効化するにはレジストリが必要です。レジストリエディター(Windowsキー + R、regeditと入力)を開き、次の場所に移動します。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters新しいDWORD(32ビット)値DisabledComponentsを作成し、16進数でffを設定するとIPv6コンポーネントがすべて無効化されます。再起動して変更を適用します。
注意:Microsoftはレジストリ経由でIPv6を完全に無効化することを公式には推奨していません。一部のWindowsコンポーネントはIPv6の存在を前提に動作するためです。あとからネットワーク共有の不具合や起動の遅さなど挙動がおかしくなったら、DisabledComponentsを0に戻すかキーを削除してください。
MacでIPv6を無効化する
macOSでは数バージョン前からGUIにオプションがなく、ターミナルで無効化します。ターミナルを開き、まずネットワークサービス名を確認します。
networksetup -listallnetworkservices通常は「Wi-Fi」と「Ethernet」が表示されます。Wi-FiでIPv6を無効化するには次を入力します。
sudo networksetup -setv6off Wi-FiEthernetの場合:
sudo networksetup -setv6off Ethernet管理者パスワードが求められます。後でIPv6を再有効化するには、-setv6offを-setv6automaticに置き換えます。
LinuxでIPv6を無効化する
多くのLinuxディストリビューション(Ubuntu、Debian、Fedora)ではsysctlを使うのがクリーンな方法です。設定ファイルを編集します。
sudo nano /etc/sysctl.confファイル末尾に次の3行を追加します。
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1再起動なしで反映するには次を実行します。
sudo sysctl -pこの方法は可逆です。値を0に戻すか該当行を削除し、再度sysctl -pを実行するだけで戻せます。
ルーターでIPv6を無効化する
ネットワーク全体のIPv6を一度に切りたい場合はルーター側で行います。ブラウザにルーターのIPアドレス(多くの場合192.168.1.1)を入力し、管理画面にログインします。
ネットワーク設定またはWAN設定のIPv6セクションを探します。場所は機種によって異なりますが、「WAN」「インターネット」「詳細設定」の下にあるのが一般的です。オプションを無効にして保存します。ネットワーク上の各端末はDHCPリースの更新後または再起動後にIPv4に戻ります。
IPv6が本当に無効化されたか確認する
作業後は結果を確認します。最も簡単なのはipme.coを訪れることです。現在の接続がIPv4かIPv6かを表示してくれます。コマンドラインでも確認できます。
Windowsではコマンドプロンプトでipconfigと入力すると、「IPv6 アドレス」の行が表示されないはずです。MacとLinuxではifconfigまたはip aを実行し、アクティブなインターフェースでinet6から始まるアドレスが表示されなければ成功です。
fe80::で始まるIPv6アドレスがまだ残っていても気にしなくて大丈夫です。これはリンクローカルアドレスで完全に内部的なものです。インターネット接続には影響せず、一部のシステム層は常にこれを保持します。