web-dev-qa-db-ja.com

ipv6で直接ルーティングを使用してKeepalived

キープアライブロードバランサーをインフラストラクチャに追加することを検討していますが、通常の構成から外れているように見える要件がいくつかあります。

すべてのサーバーには、IPv4とIPv6の両方のパブリックIPアドレスがあります。一部のサーバーにはIPv4アドレスしかなく、keepalivedの背後にあるarp_ignoreで使用できます。

IPv6はARPを使用せず、IPv6アドレスを使用した直接ルーティングをサポートするために何かを行う必要がある場合(またはkeepalivedを使用しても可能かどうか)を見つけることができませんでした。

Keepalived + IPv6 +ダイレクトルーティングの経験がある人はいますか?

1
user997904

keepalivedは近隣探索を使用します。 1.2.0変更ログから:

  • VRRP:IPv6近隣探索プロトコル(NDISC)を実装します。 IPv6では、ARPはIPv4のみであるため、GratuitousARPは存在しません。 NDISCは、いわゆるUnsolicited Neighbor Advertisementを送信することにより、同じ機能を提供できます。

同じインスタンス上のIPv4とIPv6は、VRRP経由では機能しません。 同期グループ内のインスタンス内の個別のアドレスファミリ、またはvirtual_ipaddress_excludedブロック。


技術的には、ノードはサブネット上のネイバーであるため、VRRPビットはIPルーティングではありません。ゲートウェイを通過しません。これは、直接ルーティングの過負荷の用語を不幸にします。


編集:実際のバックエンドサーバーにVIPを永続的に要求させないことに関して、これもND経由で行うことができます。残念ながら RHEL直接ルーティングの例 はこれをカバーしていませんv6。net.ipv6.conf.interface.drop_unsolicited_na = 1を設定できると思います。設定できない場合は、ICMPv6メッセージをフィルタリングできます。

2
John Mahowald