第29章 分離された VRF ネットワーク内でのサービスの開始
VRF (Virtual Routing and Forwarding) を使用すると、オペレーティングシステムのメインのルーティングテーブルとは異なるルーティングテーブルを使用して、分離したネットワークを作成できます。その後、サービスとアプリケーションを起動して、そのルーティングテーブルで定義されたネットワークにのみアクセスできるようにできます。
29.1. VRF デバイスの設定 リンクのコピーリンクがクリップボードにコピーされました!
VRF (Virtual Routing and Forwarding) を使用するには、VRF デバイスを作成し、物理ネットワークインターフェイスまたは仮想ネットワークインターフェイスを割り当て、そのデバイスにルーティング情報を提供します。
リモートでロックアウトを防ぐには、ローカルコンソール、または VRF デバイスに割り当てないネットワークインターフェイスを介してリモートでこの手順を実行します。
前提条件
- ローカルでログインしているか、VRF デバイスに割り当てるネットワークインターフェイスとは異なるネットワークインターフェイスを使用している。
手順
同じ名前の仮想デバイスで
vrf0接続を作成し、これをルーティングテーブル1000に割り当てます。nmcli connection add type vrf ifname vrf0 con-name vrf0 table 1000 ipv4.method disabled ipv6.method disabled
# nmcli connection add type vrf ifname vrf0 con-name vrf0 table 1000 ipv4.method disabled ipv6.method disabledCopy to Clipboard Copied! Toggle word wrap Toggle overflow enp1s0デバイスーをvrf0接続に追加し、IP 設定を設定します。nmcli connection add type ethernet con-name enp1s0 ifname enp1s0 controller vrf0 ipv4.method manual ipv4.address 192.0.2.1/24 ipv4.gateway 192.0.2.254
# nmcli connection add type ethernet con-name enp1s0 ifname enp1s0 controller vrf0 ipv4.method manual ipv4.address 192.0.2.1/24 ipv4.gateway 192.0.2.254Copy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドは、
enp1s0接続を、vrf0接続のポートとして作成します。この設定により、ルーティング情報は、vrf0デバイスに関連付けられているルーティングテーブル1000に自動的に割り当てられます。分離したネットワークで静的ルートが必要な場合は、以下のコマンドを実行します。
静的ルートを追加します。
nmcli connection modify enp1s0 +ipv4.routes "198.51.100.0/24 192.0.2.2"
# nmcli connection modify enp1s0 +ipv4.routes "198.51.100.0/24 192.0.2.2"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 192.0.2.2をルーターとして使用する198.51.100.0/24ネットワークにルートを追加します。接続をアクティベートします。
nmcli connection up enp1s0
# nmcli connection up enp1s0Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
vrf0に関連付けられている機器の IP 設定を表示します。ip -br addr show vrf vrf0 enp1s0 UP 192.0.2.1/24
# ip -br addr show vrf vrf0 enp1s0 UP 192.0.2.1/24Copy to Clipboard Copied! Toggle word wrap Toggle overflow VRF デバイスと、その関連ルーティングテーブルを表示します。
ip vrf show Name Table ----------------------- vrf0 1000
# ip vrf show Name Table ----------------------- vrf0 1000Copy to Clipboard Copied! Toggle word wrap Toggle overflow メインのルーティングテーブルを表示します。
ip route show default via 203.0.113.0/24 dev enp7s0 proto static metric 100
# ip route show default via 203.0.113.0/24 dev enp7s0 proto static metric 100Copy to Clipboard Copied! Toggle word wrap Toggle overflow メインルーティングテーブルには、
enp1s0デバイスまたは192.0.2.1/24サブネットに関連付けられたルートは記載されていません。ルーティングテーブルの
1000を表示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow defaultエントリーは、このルーティングテーブルを使用するサービスでは、192.0.2.254をデフォルトゲートウェイとして使用し、メインルーティングテーブルのデフォルトゲートウェイは使用しないことを示しています。vrf0に関連付けられたネットワークでtracerouteユーティリティーを実行し、ユーティリティーがテーブル1000からのルートを使用することを確認します。ip vrf exec vrf0 traceroute 203.0.113.1 traceroute to 203.0.113.1 (203.0.113.1), 30 hops max, 60 byte packets 1 192.0.2.254 (192.0.2.254) 0.516 ms 0.459 ms 0.430 ms ...
# ip vrf exec vrf0 traceroute 203.0.113.1 traceroute to 203.0.113.1 (203.0.113.1), 30 hops max, 60 byte packets 1 192.0.2.254 (192.0.2.254) 0.516 ms 0.459 ms 0.430 ms ...Copy to Clipboard Copied! Toggle word wrap Toggle overflow 最初のホップは、ルーティングテーブル
1000に割り当てられるデフォルトゲートウェイで、システムのメインルーティングテーブルのデフォルトゲートウェイではありません。