CentOS 8 の NetworkManager / nmcli で Policy Based Routing を扱う手順です。NetworkManager では、実インターフェイスそのものではなく connection profile を作成・変更し、それを device に適用するという考え方で整理すると読みやすくなります。
この手順は CentOS 8 設定マニュアル の一部として整理しています。
参考書籍
参考書籍
マスタリング TCP/IP 入門編 第6版
TCP/IP、Ethernet、VLAN、ルーティングなど、ネットワークの基礎を体系的に確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。
目的
複数 NIC を持つサーバーで、送信元アドレスごとに異なる gateway を使いたい場合、Policy Based Routing を使います。NetworkManager では connection profile に route と routing rule を設定できます。
ens34 の通常 gateway
nmcli connection modify con-ens34 ipv4.method manual ipv4.addresses 192.168.100.2/24 ipv4.gateway 192.168.100.1
nmcli connection up con-ens34ens35 の別テーブル
nmcli connection modify con-ens35 ipv4.method manual ipv4.addresses 192.168.101.2/24
nmcli connection modify con-ens35 ipv4.routes "0.0.0.0/0 192.168.101.1 table=5000"
nmcli connection modify con-ens35 ipv4.routing-rules "priority 100 from 192.168.101.2 table 5000"
nmcli connection up con-ens35確認
ip rule list
ip route list table 5000
nmcli connection show con-ens35Policy Based Routing は便利ですが、default route が複数ある環境では意図しない経路になりやすいです。送信元、経路テーブル、rule priority をセットで確認します。
この手順は CentOS 8 設定マニュアル の一部として整理しています。
CentOS 8 NetworkManager Policy Based Routing 設定


