LXD を BGP サーバーとして設定するには#

注釈

BGP サーバー機能は ブリッジネットワーク物理ネットワーク で利用できます。

BGP は自律システム間でルーティング情報を交換できるプロトコルです。

外部アドレスを特定の LXD サーバーやインスタンスに直接ルーティングしたい場合は、 LXD を BGP サーバーとして設定できます。 すると LXD は BGP ピアとして振る舞い、関連するルートとネクストホップを外部のルータ、例えばあなたのネットワークルータに広告します。 アップストリームの BGP ルータとセッションを自動的に確立し、使用中のアドレスとサブネットを広告します。

BGP サーバー機能は LXD サーバーやクラスタが正しいホストへルーティングされる特定のサブネットやアドレスを取得することで内部/外部アドレス空間を直接使用できるようにします。 こうすることで、トラフィックを対象のインスタンスにフォワードできます。

ブリッジネットワークについては、以下のアドレスとネットワークが広告されます。

  • ipv4.address または ipv6.address サブネットのネットワーク (対応する nat プロパティが true に設定されていない場合)

  • ipv4.nat.address または ipv6.nat.address サブネットのネットワーク (対応する nat プロパティが true に設定されていない場合)

  • ネットワークフォワードアドレス

  • ブリッジネットワークに接続されているインスタンス NIC 上の ipv4.routes.external または ipv6.routes.external で指定されているアドレスまたはサブネット

サブネットを対応する設定オプションに確実に追加してください。 さもなければ、広告されません。

物理ネットワークについては、物理ネットワークのレベルに直接広告されるアドレスはありません。 代わりに、全てのダウンストリームネットワーク (network オプションで物理ネットワークをアップリンクネットワークとして指定するネットワーク) のネットワーク、フォワードとルートがブリッジネットワークに対するのと同じように広告されます。

注釈

現時点では、特定のピアに一部の特定のルート/アドレスのみを広告することはできません。 これが必要な場合はアップストリームルータでプリフィクスをフィルタしてください。

BGP サーバーを設定する#

LXD を BGP サーバーとして設定するには、以下のサーバー設定オプションを全てのクラスタメンバーで設定してください(コア設定参照)。

  • core.bgp_address - BGP サーバーの IP アドレス

  • core.bgp_asn - ローカルサーバーの ASN

  • core.bgp_routerid - BGP サーバーのユニークな識別子

例えば、以下のような値を設定します。

lxc config set core.bgp_address=192.0.2.50:179
lxc config set core.bgp_asn=65536
lxc config set core.bgp_routerid=192.0.2.50

これらの設定オプションが一旦設定されると、 LXD は BGP セッションのリッスンを始めます。

ネクストホップを設定する (bridge のみ)#

ブリッジネットワークについては、ネクストホップ設定をオーバーライドできます。 デフォルトでは、ネクストホップは BGP セッションに使用されるアドレスに設定されます。

別のアドレスに設定するには、 bgp.ipv4.nexthop または bgp.ipv6.nexthop を設定してください。

OVN ネットワークに BGP ピアを設定する#

OVN ネットワークをアップリンクネットワーク (physical または bridge) と使用する場合、アップリンクネットワークは許可されるサブネット一覧と BGP 設定を持つネットワークです。 このため、 BGP サーバーに接続するのに必要な情報を含むアップリンクネットワーク上に BGP ピアを設定する必要があります。

アップリンクネットワークに対して以下の設定オプションを設定してください。

  • bgp.peers.<name>.address - ダウンストリームネットワークで使用されるピアアドレス

  • bgp.peers.<name>.asn - ローカルサーバーの ASN

  • bgp.peers.<name>.password - ピアセッションに対するオプショナルなパスワード

  • bgp.peers.<name>.holdtime - ピアセッションに対する省略可能なホールドタイム (秒で指定)

アップリンクネットワークが一旦設定されると、ダウンストリームの OVN ネットワークは BGP で広告される外部のサブネットとアドレスを取得します。 ネクストホップはアップリンクネットワークの OVN ルータのアドレスに設定されます。