Linux で IPv6 を無効にする方法
IPv6 は、コンピュータ ネットワーキングにおける最大の発展の 1 つです。これにより、ルーティングとグローバル アドレス可能性が向上するとともに、インターネットにさらに大きなアドレス空間が提供されました。とはいえ、IPv6 の導入はまだ初期段階にあり、IPv4 のみのネットワークで IPv6 対応コンピュータを実行すると、接続の問題が発生する可能性があります。この記事では、Linux マシンで IPv6 を無効にして、IPv4 のみのネットワークで使用する方法を説明します。
IPv6 ステータスを確認する方法
マシンの IPv6 ステータスを確認する最も簡単な方法は、ip addr
端末でコマンドを実行することです。これは、IPv6 ネットワーク スタックを実行している利用可能なすべてのネットワーク インターフェイスを出力するユーティリティです。
コンピュータが IPv6 用のカーネル モジュールを実行しているかどうかを、コンピュータのカーネル バイナリで確認することもできます。次のコマンドは、カーネルがアクティブに IPv6 モジュールをロードしている場合、IPv6 モジュールの「/proc」ファイル パスを出力します。
Linux で IPv6 を無効にする方法
ほとんどの場合、Linux で IPv6 プロトコルを永続的に無効にするには、ブートローダーに新しい引数を追加する必要があります。これを行うには、お気に入りのテキスト エディタで GRUB 設定ファイルを開きます。
Ctrl+を押してW、「GRUB_CMDLINE_LINUX_DEFAULT」を検索します。
ipv6.disable=1
変数の値の末尾に書き込みます。
保存 ( Ctrl+ O) し、テキスト エディターを終了 ( Ctrl+ ) します。X
ブートローダーの構成ファイルをリロードします。
システムを再起動し、実行してls /proc/net/if_inet6
マシン上の IPv6 が正常に無効になっているかどうかを確認します。
Red Hat ベースのシステムで IPv6 を無効にする
コンピューターのブートローダーを直接構成する以外に、ユーザーランド レベルで IPv6 を無効にすることもできます。これは、特定のネットワーク インターフェイスでのみ IPv6 を無効にする場合に役立ちます。
Red Hat ベースのディストリビューションで IPv6 を無効にするには、新しいターミナル セッションを開き、マシンで使用可能なすべてのネットワーク インターフェイスを一覧表示します。
IPv6 スタックを無効にするネットワーク インターフェイスを見つけます。私の場合は、「enp1s0」イーサネット インターフェイスでこれを無効にしたいと考えています。
「/etc/sysctl.d」の下に IPv6 スタックの新しい構成ファイルを作成します。
新しい構成ファイル内に次のコード行を貼り付けます。
新しい構成ファイルを保存し、次のコマンドを実行して新しい設定を再ロードします。
マシンの hosts ファイル内に移動し、IPv6 アドレスを含むすべての行の先頭にシャープ記号 (#) を追加します。
マシンの元の initramfs のバックアップを作成し、IPv6 サポートなしで再作成します。
コマンドを実行しnmcli
、インターフェイスの IPv6 メソッドを無効にします。これにより、システムを再起動しても設定が保持されることが保証されます。
最後に、システムを再起動して新しい設定を適用します。
Debian ベースのシステムで IPv6 を無効にする
Red Hat ベースのディストリビューションと同様に、Debian ベースのシステムのユーザーランドから IPv6 プロトコルを無効にすることもできます。これを行うには、新しいターミナルを開き、次のコマンドを実行して、ip -6 addr
IPv6 を無効にするインターフェイスの名前を見つけます。
次のコマンドを実行して、特定のインターフェイス上の IPv6 スタックを無効にします。
sysctl デーモンとその Systemd サービスをリロードして、新しい設定を適用します。
IPv6 メソッドを無効にして、Systemd がカスタム設定を上書きしないようにします。
を実行して、ネットワーク インターフェイスにまだ IPv6 アドレスがあるかどうかを確認しますip addr
。
Linux で IPv6 を再度有効にする方法
Linux で IPv6 を再度有効にするには、お気に入りのテキスト エディタでブートローダー設定ファイルを開きます。
Ctrl+を押してW、「GRUB_CMDLINE_LINUX_DEFAULT」を検索します。
ipv6.disable=1
変数の末尾の値を削除します。
構成ファイルを保存し、ブートローダーの設定をリロードします。
システムを再起動し、IPv6 スタックがバックアップされて実行されているかどうかを確認します。
Red Hat ベースのシステムで IPv6 を再度有効にする
Red Hat ベースのディストリビューションでは、sysctl 構成ファイルを編集することで IPv6 を再度有効にすることができます。これを行うには、新しいターミナル セッションを開き、「/etc/sysctl.d/」の下の「40-ipv6.conf」ファイルを削除します。
sysctl デーモンを Systemd サービスとともにリロードします。
「/etc/hosts」ファイルを開き、IPv6 アドレスを含むすべての行の前にあるシャープ記号 (#) を削除します。
マシンの元の initramfs を「/boot」パーティションに復元します。
nmcli で IPv6 メソッドを再度有効にして、Systemd がネットワーク インターフェイスに IPv6 スタックを確実にロードできるようにします。
システムを再起動して新しい設定を適用し、実行してip -6 addr
IPv6 スタックが稼働していることを確認します。
Debian ベースのシステムで IPv6 を再度有効にする
Debian ベースのディストリビューションで IPv6 スタックを復元するには、新しいターミナルを開いて次のコマンドを実行します。
sysctl デーモンとその Systemd サービスをリロードします。
nmcli を使用して、ネットワーク インターフェイスの IPv6 スタックを有効にします。
ip -6 addr
最後に、インターフェイスに IPv6 アドレスがあるかどうかを実行して確認し、IPv6 スタックが適切に動作していることを確認します。
Linux で IPv6 スタックを無効にして再度有効にする方法を学ぶことは、コンピューター ネットワークを始めるための最初のステップにすぎません。Traceroute を使用してネットワーク内のパケットを追跡する方法を学び、この奥深く素晴らしい世界をさらに探索してください。
画像クレジット: Leon Seibert、UnsplashおよびWikimedia Commons経由。すべての変更とスクリーンショットは Ramces Red によるものです。
コメントを残す