GCP ネットワーク内での IPv6 通信?

GCP ネットワーク内での IPv6 通信?

IPv6 サービス経由で通信する必要がある複数のホストを含​​む VPC をセットアップしています。これらの各インスタンスは IPv6 で構成されており、IPv6 を使用して外部ホストに正常に ping して接続できます。相互に通信できるようにファイアウォール ルールを作成しました (ホストには「テスト」のタグが付けられています)。

$ gcloud compute firewall-rules create target-all-ipv6 \
  --network=test-net-1 --priority=1000 \
  --direction=INGRESS --action=ALLOW \
  --rules=all \
  --source-ranges="fe80::/10" \
  --target-tags=test

ただし、この設定では、ローカル f80 アドレスを使用してこれらのインスタンス間で ping を実行したり、IPv6 接続を確立したりすることはできません。

同じネットワーク上の 2 つの GCP インスタンスが IPv6 経由で通信することは可能ですか?

答え1

さらに調べてみると、答えが見つかりました。リンク ローカル (fe80::) アドレスを使用して IPv6 でインスタンス間を接続することはできないようですが、インスタンスは IPv6 を使用してグローバル アドレスと通信できます。

解決策は、ネットワークのグローバル IPv6 プレフィックスからの IPv6 トラフィックを許可するファイアウォール ルールを設定し、これらのグローバル アドレスを使用して通信することです。

例えば:

$ gcloud compute firewall-rules create test-ipv6 \
  --network=test-net-1 --priority=1000 \
  --direction=INGRESS --action=ALLOW \
  --rules=tcp:443,icmp \
  --source-ranges="2600:1900:xxxx:xxxx:xxxx::/64" \
  --target-tags=test

関連情報