Linuxでは、ブリッジネットワークカードが必要な場合は、ブリッジモジュールが自動的にロードされます。しかし、ブリッジの依存関係の1つはipv6です。 ipv4だけが必要なので、ipv6の依存関係を無視する方法はありますか?モジュールをブラックリストに登録しようとしましたが、まったく機能しませんでした。
編集:問題はipv6を無効にする方法を尋ねるのではなく、ipv6モジュールなしでブリッジをロードする方法を知りたいです。質問は繰り返されません。
ベストアンサー1
それから構成定義:
depends on: CONFIG_IPV6 || CONFIG_IPV6 = CONFIG_n
ブリッジモジュールはカーネルでコンパイルされた場合(組み込みまたはモジュールとして)、ipv6モジュールに依存するか、依存しないようです(カーネルでまったくコンパイルされていない場合)。したがって、IPv6を使用したくない場合は、CONFIG_IPV6
オプションを設定せずにカーネルを使用できます。
これがオプションでない場合は、次のいずれかを実行できます。
まず、ipv6モジュール(
modprobe ipv6
)をロードしてから、次を変更して、そのインターフェイスまたは他のインターフェイスまたはすべてのインターフェイスに対してIPv6をすぐに無効にします。disable_ipv6
1に切り替え:echo 1 > /proc/sys/net/ipv6/conf/someinterface/disable_ipv6
または同等のsysctlを使用してください(もっと使い慣れています
sudo
)ip netns
:sysctl -w net.ipv6.conf.someinterface.disable_ipv6=1
機能を無効にするには、まずipv6モジュールをロードする必要があります!それ以外の場合、上記のトグルは使用できません。
ブリッジ インターフェイス自体で IPv6 を無効にするのは本当に良い考えかもしれません。
後で提供される最新のインターフェイスを含むipv6の使用を無効にするには、次の手順を実行します。
sysctl -w net.ipv6.conf.default.disable_ipv6=1 sysctl -w net.ipv6.conf.all.disable_ipv6=1
制限された環境(組み込みなど)に適しており、すべてのipv6コードをインストールできない可能性があるカーネルブートオプションもありますが、ブリッジの
ipv6.disable=1
「アクティブ化」と互換性があるかどうかはテストされていません。起動オプションに「ipv6.disable = 1」を追加し、grubファイルを保存します。
GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 quiet splash"
この起動オプションの詳細については、AskUbuntuの回答で確認できます。IPv6を永久に無効にする方法は?
それからこの方法もうまくいくと思いました(しかしIPv6が組み込まれているのでテストすることはできません)。単に
modprobe ipv6
最初の方法を使用する代わりに、次のことを試してください。modprobe ipv6 disable=1
または
modprobe ipv6 disable_ipv6=1
ロードされる前に。これが機能したら、次のオプションで追加できます。
options ipv6 disable=1 disable_ipv6=1 #pick the right option
たとえば、
/etc/modprobe.d/disable-ipv6.conf
。