CentOS 8 は既に通常の CentOS Linux としてはサポートが終了しています。このページは新規構築を推奨するものではなく、過去環境の保守、移行前調査、設定の読み解きに使うためのレガシー Linux 手順です。新規構築では、現在サポートされているディストリビューションを利用してください。
この記事では、CentOS 8 の NetworkManager で Policy Based Routing を扱う場合の考え方を整理します。通常のデフォルトルートだけではなく、送信元アドレスや宛先ネットワークに応じて別のルーティングテーブルを使いたい場合の設定です。
Policy Based Routing の位置づけ
Policy Based Routing は、単に経路を追加する設定ではありません。どの条件に一致した通信を、どの routing table で処理するかを決める仕組みです。複数 NIC、複数セグメント、管理用ネットワークとサービス用ネットワークを分ける構成では、デフォルトルートだけでは意図した戻り経路にならないことがあります。
| 項目 | 役割 |
| route | 特定の宛先へ向かう経路を定義する |
| rule | 送信元や優先度などから使う table を選ぶ |
| table | default 以外の経路表を分けて持つ |
nmcli で設定する例
次は、特定の送信元アドレスから出る通信を table 100 で処理する例です。インターフェイス名、IP アドレス、ゲートウェイは環境に合わせて読み替えます。
nmcli connection show
nmcli connection modify ens192 +ipv4.routes "10.10.20.0/24 192.0.2.1 table=100"
nmcli connection modify ens192 +ipv4.routing-rules "priority 100 from 192.0.2.10 table 100"
nmcli connection up ens192反映後の確認
設定後は NetworkManager の表示だけではなく、kernel 側の rule と route を確認します。意図した table に経路が入り、rule の優先度が想定通りになっているかを見ることが重要です。
ip rule show
ip route show table 100
nmcli connection show ens192運用上の注意
- Policy Based Routing は便利ですが、設定意図が見えにくくなりやすいです。
- 複数の rule を使う場合は priority の重複や順序に注意します。
- 戻り経路を制御したい場合は、firewalld、rp_filter、上位ルーターの経路も合わせて確認します。
まとめ
CentOS 8 の NetworkManager でも Policy Based Routing は扱えます。ただし、これは単なる IP アドレス設定ではなく、通信の戻り道を含めたルーティング設計です。nmcli の設定値だけではなく、最終的に ip rule と ip route で kernel 側の状態を確認するのが安全です。
関連する記事
- CentOS 8 NetworkManager nmcli – device と connection の基本
NetworkManager の基本単位を整理します。 - CentOS 8 NetworkManager VLAN + Bonding + Bridge 設定
VLAN、Bonding、Bridge を組み合わせた構成を扱います。 - CentOS 8 firewalld – zone とサービス許可の基本
通信確認時に合わせて見るファイアウォール設定です。
参考書籍
書籍
Linux のコマンドライン操作を基礎から確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。

