VRF
一台のネットワーク装置の中で、ルーティングテーブルや転送情報を論理的に分ける仕組みである。利用者や用途ごとに独立した経路を持ち、同じ宛先アドレスでも所属する領域に応じた転送先を選べる。
イマシルちゃんの解説
一台のルータを複数の部署で使うとき、部署ごとに別の出口へ通信を送りたいことがあるよ。
VRFは、装置の中に独立したルーティングテーブルを作り、通信の道順を分ける仕組みなんだ。
受け取った接続口などから、どの領域の情報を使うか選ぶよ。
別々の領域なら、同じIPアドレスの範囲を使っていても区別できるんだ。
装置を共有しながら、それぞれのネットワークの経路を管理できるの。
ただし、領域を分けることと通信を暗号化することは別で、必要な保護は組み合わせて用意するよ。
この解説はわかりやすかったですか?
より深い解説
同じ装置に独立した経路を持つ
VRFは、ルーティングテーブルと転送情報を複数の領域に分けて保持する仕組みである。一般にVirtual Routing and Forwardingの略として使われ、BGP/MPLS IP VPNを定めるRFC 4364ではVPN Routing and Forwarding tableという呼称が使われる。
パケットを受信すると、装置は入力インタフェースなどの所属から利用するVRFを決め、その中で宛先に対応する経路を検索する。VRFの名前や識別子は、どの領域の情報かを管理するために用いる。通常のIPヘッダーにVRF名がそのまま付いているわけではない。
| 領域 | 宛先の例 | 転送先 |
|---|---|---|
| 部署AのVRF | 10.10.0.0/24 | 部署Aの拠点への接続 |
| 部署BのVRF | 10.10.0.0/24 | 部署Bの拠点への接続 |
宛先のビット列が同じでも、参照するルーティングテーブルが異なるので区別できる。反対に、別のVRFに経路があるだけでは、その経路を自分の領域から利用できない。
用途ごとに出口を設定する
VRFごとに独立したデフォルトルートを持てる。例えばIPsecルータで、業務のパケットを扱う領域と、暗号化した外側のパケットをインターネットへ送る領域を分ける。
| 領域 | 宛先 | 次の転送先 |
|---|---|---|
| 業務側のVRF | 0.0.0.0/0 | 本社へ向かうVPNトンネル |
| 外側のVRF | 0.0.0.0/0 | ISP側のルータ |
業務側の経路検索でトンネルへ入れ、カプセル化後は外側の宛先に対して別の経路検索を行う。この対応を設定すれば、二つの用途のデフォルトルートを同じ表で競合させずに管理できる。トンネルの内側と外側にどのVRFを使うかは装置の機能と設定に従う。
pingや経路表示などの運用コマンドでも、対象のVRFを指定する必要がある。あるVRFから届いたという結果だけでは、別のVRFからも到達できるとは判断できない。
必要な領域の間だけ経路を共有する
分離したVRF間へ意図的に経路を渡すことをルートリークという。共通のDNSサーバや管理サーバへ到達させる場合などに使う。共有する宛先を限定し、戻りの経路やアクセス制御もそろえる必要がある。同じアドレス範囲を使う領域を接続する場合は、経路の区別やアドレス変換を含めた設計が必要になる。
VRFはIP-VPNのPEルータで利用者を分離する用途にも使う。MPLSを使わずに装置内で経路を分ける構成はVRF-Liteと呼ばれる。経路の分離は、パケットを暗号化したり内容を検査したりする機能ではない。 盗聴への対策にはIPsecなどを、通信の許可・拒否にはファイアウォールなどを組み合わせる。
参考資料
実際の試験ではここに出る!全1問
ネットワークスペシャリスト
- 午後Ⅰ