ホストOSでの設定の構成
この章では、高度な機能を有効にしたり、cRPD機能の規模を拡大したりするためのホストOSの設定調整について説明します。
ARP スケーリングの設定
最大 ARP エントリー数は、Linux ホスト・カーネルによって制御されます。ネイバーの数が多い場合は、Linux ホストの ARP エントリー制限を調整する必要があるかもしれません。Linuxホストの コマンドには sysctl
、ARPまたはNDPのエントリー制限を調整するオプションがあります。
例えば、IPv4 を使用して最大 ARP エントリー数を調整するには、以下のようにします。
root@host:~# sysctl -w net.ipv4.neigh.default.gc_thresh1=4096
root@host:~# sysctl -w net.ipv4.neigh.default.gc_thresh2=8192
root@host:~# sysctl -w net.ipv4.neigh.default.gc_thresh3=8192
たとえば、IPv6 を使用して最大 ND エントリーを調整するには、次のようにします。
root@host:~# sysctl -w net.ipv6.neigh.default.gc_thresh1=4096
root@host:~# sysctl -w net.ipv6.neigh.default.gc_thresh2=8192
root@host:~# sysctl -w net.ipv6.neigh.default.gc_thresh3=8192
cRPDでのOSPFのチューニング
cRPD でより多くの OSPFv2/v3 隣接関係を許可するには、IGMP メンバーシップの制限を増やします。
root@host:~# sysctl -w net.ipv4.igmp_max_memberships=1000
MPLS の設定
Linux カーネルで MPLS を設定するには、次のようにします。
MPLS ルートの追加
ネットリンクメッセージは、Linuxカーネルとルートを通信(追加/学習)するために使用されます。MPLS ルートは、カーネルの更新に内部的にネットリンクソケットを使用するユーティリティを使用して iproute2
カーネルに追加されます。ユーティリティを使用して iproute2
MPLS ルートをホストに追加するには:
MPLS ラベル付きルートの追加
このユーティリティを使用して、MPLSラベル付きのパケットをカプセル化し、 iproute2
ホストにルートを追加するには:
VRF デバイスの作成
VRF デバイスをインスタンス化してテーブルに関連付けるには、次のようにします。
VRF へのネットワークインターフェイスの割り当て
ネットデバイスを VRF デバイスに割り当てることで、ネットワーク インターフェイスを VRF に割り当てます。接続されたルートとローカル ルートは、VRF デバイスに関連付けられたテーブルに自動的に移動されます。
VRF にネットワーク インターフェイスを割り当てるには:
root@host:~# ip link set dev <name> master <name>
root@host:~# ip link set dev eth1 vrf test
VRF に割り当てられたデバイスの表示
デバイスを表示するには:
root@host:~# ip link show vrf <name>
root@host:~# ip link show vrf red
VRF へのネイバーエントリの表示
VRF デバイスにスレーブされたデバイスに関連付けられているネイバー エントリを一覧表示するには:
root@host:~# ip -6 neigh show vrf <NAME>
root@host:~# ip neigh show vrf red
root@host:~# ip -6 neigh show vrf red
VRF のアドレスの表示
VRF に関連付けられたインターフェイスのアドレスを表示するには:
root@host:~# ip addr show vrf <NAME>
root@host:~# ip addr show vrf red
VRF のルートの表示
VRF のルートを表示するには:
VRF からのネットワーク インターフェイスの削除
VRF デバイスへのエンスレーブメントを解除することで、ネットワーク インターフェイスを VRF から除去します
root@host:~# ip link set dev NAME nomaster
ネットワーク インターフェイスを削除すると、接続されたルートは既定のテーブルに移動され、ローカル エントリはローカル テーブルに移動されます。
LinuxでのECMPロードバランシングのためのハッシュフィールド選択
ECMPハッシュポリシー()は、転送されたトラフィックとローカルで生成されたトラフィック(fib_multipath_hash_policy
IPv4/IPv6)の両方に対して選択できます。
IPv4トラフィック
LinuxでBGPを使用するwECMP
不等コストロードバランシングは、異なるパス(マルチパスネクストホップを構成する)間でトラフィックを不均一に分散する方法です。パスの帯域幅機能が異なる場合。BGPプロトコルは、リンク帯域幅拡張コミュニティーを使用して、各ルート/パスにリンクの帯域幅をタグ付けすることでこれを実現します。対応するリンクの帯域幅は、このリンク帯域幅コミュニティーの一部として符号化することができる。RPDは、各パスのこの帯域幅情報を使用して、適切なlinux::weightsでマルチパスネクストホップをプログラムします。linux::weight のネクストホップにより、Linux カーネルはトラフィックを非対称に負荷分散できます。
BGPはマルチパスネクストホップを形成し、個々のパスの帯域幅値を使用して、ECMPネクストホップを形成する各ネクストホップが受信すべきトラフィックの割合を求めます。リンク帯域幅で指定される帯域幅値は、インターフェイスの絶対帯域幅である必要はありません。これらの値は、あるパスと別のパスの相対的な帯域幅を反映する必要があります。詳細については、 BGPコミュニティと拡張コミュニティを定義する方法について、および ルーティングポリシー一致条件でBGPコミュニティと拡張コミュニティがどのように評価されるかを参照してください。
R1 を持つネットワークが、R2 と R3 から宛先 R4 への等しいコスト パスを受信しているとします。負荷分散されたトラフィックの 90% をパス R1-R2 経由で送信し、残りの 10% のトラフィックをパス R1-R3 経由で wECMP を使用して送信する場合は、 を構成し policy-optionsて、2 つの BGP ピアから受信したルートにリンク帯域幅コミュニティーでタグを付ける必要があります。
cRPDでSRv6を有効にする
次のsysctlコマンドを使用して、cRPDでIPv6セグメントルーティング機能を有効にすることができます。