次のコマンドを使用してipv6トンネルを作成しました。
ip link add gre_test type ip6gre remote 2001:4860:4860::8888 local ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff ttl 255
実際のIPv6を削除しました。
その後、このインターフェースを開きました。
ip link set dev gre_test up
最後に、default_lan ブリッジの下にインターフェイスを追加しようとしたときにこの問題が発生しました。
brctl addif default_lan gre61
can't add gre61 to bridge default_lan: Invalid argument
したがって、デフォルトではipv6トンネルを作成してブリッジインターフェイスで終了しますが、ブリッジを追加しようとすると無効な引数エラーが発生します。 gre インターフェイスが純粋な ipv4 で「gretap」を使用している場合に動作します。
答え1
gre インターフェイスが純粋な ipv4 で「gretap」を使用している場合に動作します。
これは、インターフェイスが純粋にipv4であるためではなく、「gretap」を使用したために機能します。
IPv4でもIPv6でも、標準のGREインターフェイスは「レイヤ3」トンネルであるため、ブリッジはできません。L2 ヘッダーを渡しません。これは、L2 ブリッジが正常に動作するために必要です。
ブリッジはL2宛先(MACアドレス)に基づいてパケットを転送するように機能し、通常のGREを介して到着するパケットにはこの機能がないため、ブリッジがこれを行うことはできません。
(ブリッジがL3(IP)宛先アドレスを確認できるようにするには、ブリッジではなくルーターです。)
したがって、IPv6を介してネットワークをブリッジするには必要「gretap」や「ip6gretap」などのL2トンネル。 (どちらのタイプもトンネルトラフィックではなくプライマリネットワークによって異なります。すべてのL2トンネルと同様に、すべてのGREトンネルは両方のIPを転送できます。)