Blog¶
JSON や XML を整形して表示する
JSON や XML を整形して表示出来るツールをまとめます。
- JSON の整形
- Python の標準ライブラリを使う
- 軽量 JSON パーサー「jq」を使う
- XML の整形
- xmllint を使う
- tidy を使う
- xmlstarlet を使う
Extra Packages を追加した MikroTik CHR を Cisco VIRL に登録する
RouterOS 6.31 current の公開に伴って CHR(Cloud Hosted Router)6.31 のバイナリも公開されています。ただし、公式ダウンロードページ では無く、フォーラム にダウンロードリンクがあります。
- http://www.mikrotik.com/download/share/chr_6_31.img
- http://www.mikrotik.com/download/share/chr_6_31.vmdk
今回は CHR 6.31 に Extra Package を追加し、更にそれを Cisco VIRL に登録します。大部分は過去記事「VIRL に RouterOS を登録してシミュレーション環境を作るには」と同じです。
ユーザ名の入力だけでコンソール / SSH ログイン出来るようにする
頻繁にログイン・ログアウトを繰り返す検証環境ではログインの手間を省く為に以下のような工夫が出来ると思います。
- 鍵交換方式にしてパスワード不要でログイン出来るようにする
- expect や TeraTerm マクロ等で、自動ログインスクリプトを作成する
- sshpass を使って対話的なパスワード入力を省略する
- (パスワードを入力せずに)ユーザ名だけでコンソールや SSH ログイン出来るようにする
今回は 4 の「ユーザ名だけでコンソールや SSH ログイン出来るように」設定してみます。セキュリティの観点からは極めて脆弱になりますので、よく危険性を理解した上で、利用する必要があります。
Mikrotik を PPPoE サーバとしてコンフィグする
検証時、手軽に使える PPPoE サーバがあると便利な場合があります。今回は Mikrotik を PPPoE サーバとしてコンフィグしてみます。
Cisco で VRF + BGP を設定しつつ、RouteLeak で特定 VRF 間の経路だけ許可する
VRF を設定すると一台のルータのルーティングテーブルを論理的に分割して利用出来ます。これは「顧客ごとにルーティングテーブルを独立・分割して保持したい」という場合に便利です。別の表現をすると「異なる VRF 間では通信出来ない」とも言えます。しかし、「顧客ごとにルーティングテーブルは VRF で分割するものの、共通のサービス基盤は全ての顧客から参照させたい」というケースもあり得ます。こういった場合は RouteLeak の設定をすることで設定した VRF 間では通信を許可することが出来ます。
今回は VIRL 上の Cisco ルータで VRF を設定し、BGP で経路交換をさせつつ、「サービス基盤と顧客は通信出来る」「顧客同士は通信出来ない」という要件を満たすように RouteLeak 設定を行います。
Mikrotik と Cisco ASA 間で Site-to-Site な IPsec を設定してみる
VIRL 上の Mikrotik(RouterOS)と Cisco ASAv 間で Site-to-Site な IPsec を設定してみます。
Cisco(IOSv / CSR1000V / XRv / NX-OSv / ASAv)、MikroTik、VyOS で eBGP 接続してみる
Cisco、Mikrotik、VyOS を eBGP 接続し、各々のコンフィグを比較してみました。具体的には以下の機器を用いました。
- Cisco IOSv
- Cisco CSR1000V
- Cisco XRv
- Cisco NX-OSv
- Cisco ASAv
- Mikrotik
- VyOS
Cisco VIRL で VyOS を使えるようにするには
Cisco VIRL 上に VyOS も登録すると検証時に便利です。今回は VIRL に VyOS を登録してみます。大まかな手順は以前に書いた「VIRL に RouterOS を登録してシミュレーション環境を作るには」と同じ流れになります。