⚠️ このエントリーは1年以上前に作成されたものです。情報の賞味期限切れにご注意ください。
弊宅ではNURO光とフレッツ光の2本のファイバーを引き込んで光回線を使っています。
メインの回線は2GbpsのNURO光です。
FWとかVMのソフトウェアルーターとかを無視した概念図は、以下のような感じです。

2.5GbEが使えるHGWのNSD-G1000Tは、配下のルーターをDMZに指定すると、配下のルーターでIPv6リレーを有効にしてもIPv6がまともに使えない不具合を抱え続けています。
なので、メインルーターはIPv6リレーごと無効化して、パブリックIPv6が降ってこないようにしていました。
ところが、先日AWSがIPv4に課金するリリースを出したので、IPv6を使えるようにする必要が出てきました。
新着情報 – パブリック IPv4 アドレスの利用に対する新しい料金体系を発表 / Amazon VPC IP Address Manager が Public IP Insights の提供を開始 | Amazon Web Services ブログ
https://aws.amazon.com/jp/blogs/news/new-aws-public-ipv4-address-charge-public-ip-insights/
で、NSD-G1000TのようにMLDスヌーピング的な制限をかけている場合には、同じポートに繋がるようにスイッチを追加して、ndppdやndp-proxyで無理矢理ネットワークに参加する方法があります。
つまり、こんな感じ。

この状態で試してみると、パブリックIPv6が割り当たっても、IPv6で通信できる場合とできない場合がありました。
ちゃんとパケットを眺めていないので、ガチャになっている原因はイマイチ不明です。
少なくとも、NSD-G1000Tのファームウェアv1.0.27とQHora-301Wと(ちょっと弄った)ndp-proxyの組み合わせではダメなようです。
一旦立ち返ってNSD-G1000Tに直接接続してIPv6のフィルターの挙動を確認してみます。
AWS LightsailのパブリックIPv6から確認した結果、ICMPは通していますが、TCPとUDPは弾いていました。
つまり、最低限のフィルターは効いているので、IPv6だけ直通でも問題なさそうです。
最終的に、こうなりました。

この場合、
- IPv4: QHora-301WからDHCPv4で配布される
- 内向きの通信: DMZのQHora-301Wに流れ、ポートフォワードされたりブロックされたりする
- 外向きの通信: デフォルトゲートウェイのQHora-301Wを経由する
- IPv6: NSD-G1000TからRA+ステートレスDHCPv6で設定される
- 内向きの通信: 前述
- 外向きの通信: NSD-G1000Tを経由する
のような挙動になります。
