以前に投稿したように、同一リモートホストに対して、NAT配下の複数 gretap/gre クライアントからは、 キーを設定しても何もしていない場合は同時に接続できません。 理由はよくわかっていませんが、とりあえず挙動をしらべた所、同一リモートホストに対するパケットは、iptablesの PREROUTING raw/mangle までは通過しますが、key を設定していても、PREROUTING nat に入る前に暗黙的に破棄されていました。 そこで raw/mangleで keyを手掛かりにして破棄される前に packet を gretap/gre client に tee'd したところ、GRETAP クライアントにパケットは届きますが、当然ながら Destination Address は NAT ルータの外側のグローバル IPv4 アドレスのままなので、gretap/gre クライアントは応答しません。そこで、loopback インターフェースに NAT ルータの外側グローバル IPv4 アドレスを割り当て、さらに、リモートホストに対する gretap/gre パケットを 今一度 key を手掛かりに、raw/mangle でリモートに tee'd するようにしたところ、ping が通りました。最後に ssh/iperf3 でテストをしたところ、mtu の調整と再起動後に通信を開始するための ping は必要なのですが、無事疎通できたのでメモ代わりに挙げてみることにしました。 なお環境はリモート・ローカル・ルータのいずれも、Debian 12 Bookworm (Netinst) で構成し、ネットワークはフレッツ光クロス固定IP環境(enひかりクロス xpass 固定IP)でテストしています。 さて、今回はgretapでの要点のみの説明となりますが、greでもほぼ同じ要領です。まず、リモートホスト側です。こちらはInternetに直接つながっていることが前提です。 #/etc/network/interfaces.d/gretap100 auto gretap100 iface gretap100 inet6 static address fd99:1:1:100::1 netmask 64 mtu 1418 pre-u...