Ryu&OvS 入り OpenWrt イメージを作成し Cisco VIRL で利用する
OpenWrt はフットプリントが小さく、VIRL 上での検証時に便利です。今回は OpenWrt に Open vSwitch (以下、OvS)と Ryu を追加し、VIRL に登録します。但し、現状では Ryu は起動するものの、Open vSwitch は Segmentation Fault を起こして利用出来ませんでした。
OpenWrt はフットプリントが小さく、VIRL 上での検証時に便利です。今回は OpenWrt に Open vSwitch (以下、OvS)と Ryu を追加し、VIRL に登録します。但し、現状では Ryu は起動するものの、Open vSwitch は Segmentation Fault を起こして利用出来ませんでした。
Raspberry Pi2 はもちろん簡単にキーボードやモニタに接続出来ます。しかし、非常にコンパクトなので逆にキーボードやモニタに繋がずに使いたくなってしまいます… そこで、MacBook Air から Raspberry Pi2 を GPIO 経由でシリアルコンソールアクセス出来るように設定しました。
JSON や XML を整形して表示出来るツールをまとめます。
RouterOS 6.31 current の公開に伴って CHR(Cloud Hosted Router)6.31 のバイナリも公開されています。ただし、公式ダウンロードページ では無く、フォーラム にダウンロードリンクがあります。
今回は CHR 6.31 に Extra Package を追加し、更にそれを Cisco VIRL に登録します。大部分は過去記事「VIRL に RouterOS を登録してシミュレーション環境を作るには」と同じです。
頻繁にログイン・ログアウトを繰り返す検証環境ではログインの手間を省く為に以下のような工夫が出来ると思います。
今回は 4 の「ユーザ名だけでコンソールや SSH ログイン出来るように」設定してみます。セキュリティの観点からは極めて脆弱になりますので、よく危険性を理解した上で、利用する必要があります。
検証時、手軽に使える PPPoE サーバがあると便利な場合があります。今回は Mikrotik を PPPoE サーバとしてコンフィグしてみます。
VRF を設定すると一台のルータのルーティングテーブルを論理的に分割して利用出来ます。これは「顧客ごとにルーティングテーブルを独立・分割して保持したい」という場合に便利です。別の表現をすると「異なる VRF 間では通信出来ない」とも言えます。しかし、「顧客ごとにルーティングテーブルは VRF で分割するものの、共通のサービス基盤は全ての顧客から参照させたい」というケースもあり得ます。こういった場合は RouteLeak の設定をすることで設定した VRF 間では通信を許可することが出来ます。
今回は VIRL 上の Cisco ルータで VRF を設定し、BGP で経路交換をさせつつ、「サービス基盤と顧客は通信出来る」「顧客同士は通信出来ない」という要件を満たすように RouteLeak 設定を行います。
VIRL 上の Mikrotik(RouterOS)と Cisco ASAv 間で Site-to-Site な IPsec を設定してみます。