【Juniper】スタティックルートの設定
スタティックルートを設定する
ルータは直接繋がっている(Connected)ネットワークの経路は把握することはできますが、その先のネットワークの経路情報は把握することができません。
下記の例だとOlive1のルーターから送信されるデータは直接つながるOlive2までは到達できますが、Olive3にまで到達する経路情報がないため送信することができません。
Olive3のルーターも同様です。Olive1までの経路情報を持っていないため、Olive1の先にある端末とこのままでは通信することができません。
今回は管理者がルーターに経路情報を静的に設定する方法について見ていきます。
経路情報は宛先ネットワークへ到達するためのネクストホップのIPアドレスを指定する形で行います。通常はルーターの物理インターフェイスやVLANインターフェイスに割り当てられたIPアドレスを指定します。
構成図
文法:
set routing-options static route <宛先ネットワーク>next-hop <ネクストホップのIPアドレス>
設定例:
宛先ネットワーク「192.168.20.0/24」のネクストホップをOlive2のem0インターフェイス「192.168.10.2」とする場合
[edit]
root@Olive1# set routing-options static route 192.168.20.0/24 next-hop 192.168.10.2root@Olive1# commit
commit complete
確認方法
「show route」コマンドを利用してルーティングテーブルの情報を確認します。
[edit]
root@Olive1# run show routeinet.0: 5 destinations, 5 routes (5 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both192.168.5.0/24 *[Direct/0] 02:22:32
> via em2.0
192.168.5.1/32 *[Local/0] 02:22:32
Local via em2.0
192.168.10.0/24 *[Direct/0] 02:22:38
> via em0.0
192.168.10.1/32 *[Local/0] 02:22:38
Local via em0.0
192.168.20.0/24 *[Static/5] 00:03:10
> to 192.168.10.2 via em0.0
「192.168.20.0/24」への経路がスタティックで登録されていることが確認できます。
スタティックルートのデフォルトのプレファレンスは「5」です。
同様にOlive3側も設定します。
■Olive3
[edit]
root@Olive3# set interfaces em0 unit 0 family inet address 192.168.20.2/24root@Olive3#set routing-options static route 192.168.10.0/24 next-hop 192.168.20.1
両方設定したら、pingで「192.168.20.0/24」への疎通性を確認します。
[edit]
root@Olive1# run ping 192.168.20.1
PING 192.168.20.1 (192.168.20.1): 56 data bytes
64 bytes from 192.168.20.1: icmp_seq=0 ttl=64 time=1.236 ms
64 bytes from 192.168.20.1: icmp_seq=1 ttl=64 time=1.543 ms
^C
--- 192.168.20.1 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max/stddev = 1.236/1.389/1.543/0.154 ms
ネクストホップが有効ではない場合
スタティックルートがアクティブになる条件として対抗のネクストホップがに到達できる必要があります。
たとえば誤ってネクストホップの指定を存在しないIPアドレスである「192.168.11.2」と設定した場合を見てみます。
- 一度正しいスタティックルートの情報を削除し、
delete routing-options static route 192.168.20.0/24 next-hop 192.168.10.2
- 誤ったネクストホップで再度登録します。
set routing-options static route 192.168.20.0/24 next-hop 192.168.11.2
- 設定の内容を確認します。
[edit]
root@Olive1# show | compare
[edit routing-options static]
- route 192.168.20.0/24 next-hop 192.168.10.2;
+ route 192.168.20.0/24 next-hop 192.168.11.2;問題がないことを確認し、コミットします。
[edit]
root@Olive1# commit check
configuration check succeeds
この状態でルーティングテーブルを確認すると、設定したスタティックの経路がルーティングテーブルに表示されていないことがわかります。
[edit]
root@Olive1# run show routeinet.0: 4 destinations, 4 routes (4 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both192.168.5.0/24 *[Direct/0] 02:28:14
> via em2.0
192.168.5.1/32 *[Local/0] 02:28:14
Local via em2.0
192.168.10.0/24 *[Direct/0] 02:28:20
> via em0.0
192.168.10.1/32 *[Local/0] 02:28:20
Local via em0.0
もちろん、経路がないためpingも通りません。
[edit]
root@Olive1# run ping 192.168.20.1
PING 192.168.20.1 (192.168.20.1): 56 data bytes
ping: sendto: No route to host
^C
--- 192.168.20.1 ping statistics ---
1 packets transmitted, 0 packets received, 100% packet lost
デフォルトルートを静的に設定する
すべての通信したい宛先ネットワークに対して静的に経路情報を設定していくのは大変な作業なので、すべてのルートを意味する「0.0.0.0/0」アドレスに対しての経路情報を設定します。これをデフォルトルートとよびます。デフォルトルートにつながるネクストホップのIPアドレスをデフォルトゲートウェイと呼びます。ルーティングテーブルにない宛先ネットワーク行きのパケットはすべてデフォルトゲートウェイに転送されます。
文法:
set routing-options static route 0.0.0.0/0 next-hop <ネクストホップのIPアドレス>
設定例:
デフォルトルートのネクストホップを「192.168.10.2」とする場合
[edit]
root@Olive1# set routing-options static route 0.0.0.0/0 next-hop 192.168.10.2
確認方法
[edit]
root@Olive1# run show routeinet.0: 6 destinations, 6 routes (6 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both0.0.0.0/0 *[Static/5] 00:00:01
> to 192.168.10.2 via em0.0
192.168.5.0/24 *[Direct/0] 04:42:44
> via em2.0
192.168.5.1/32 *[Local/0] 04:42:44
Local via em2.0
192.168.10.0/24 *[Direct/0] 04:42:50
> via em0.0
192.168.10.1/32 *[Local/0] 04:42:50
Local via em0.0
192.168.20.0/24 *[Static/5] 00:28:14
> to 192.168.10.2 via em0.0
デフォルトルートが追加されていることがわかる。
【Juniper】物理インターフェイスにIPアドレスを設定する
物理インターフェイスにIPアドレスを設定する
物理インターフェイスIPアドレスを割り当てする方法について記載します。
構成図
文法:
set interfaces <インターフェイス番号> unit <論理ユニット番号> family inet address <IPアドレス/サブネットマスク>
設定例:
インターフェイスem0に対して192.168.1.2/24を割り当てたい場合
[edit]
root# set interfaces ge-0/0/0 unit 0 family inet address 192.168.1.2/24
確認方法
「show interfaces terse」コマンドを利用して各インターフェイスの情報をサマリーで確認することができます。
[edit]
root# run show interfaces terse
Interface Admin Link Proto Local Remote
ge-0/0/0 up up
ge-0/0/0.0 up up inet 192.168.1.2/24
gr-0/0/0 up up
ip-0/0/0 up up
lsq-0/0/0 up up
削除する方法
「delete」コマンドでインターフェイスに割り当てた設定を削除することができます。
[edit]
root# delete interfaces ge-0/0/0 unit 0 family inet address 192.168.1.2/24
【トラブルシューティング】GNS3VMが初回起動時オンラインにならない時の解決方法
ネットワークエンジニアの皆さんGNS3使ってますか?自習やちょっとしたネットワーク機器の動作確認する際に非常に便利ですよね。ただし、GNS3って起動時にうまく立ち上がらないことありませんか?不具合の明確な理由についてはまだはっきり究明できていないのですが私がやっている復旧方法について今回はまとめたいと思います。
また別の機会にインストール方法などについても記事としてまとめてみたいと思ってます。
GNS3VM環境
本題に入る前に、ハイパーバイザ側の設定を下記に記します。
特に注目いただきたいのはネットワークアダプタ1です。
GNS3アプリケーションとGNS3VMはネットワークアダプタ1を介して通信を行います。
ネットワークアダプタは「ホストオンリー」に設定されています。
「ホストオンリー」はホスト(この場合はハイパーバイザが稼働しているPC)とのみ(オンリー)通信可能ということを意味します。
GNS3VMが初回起動時オンラインにならない
通常、GNS3を起動するとVmwareworkstationとGNS3VMも一緒に起動し、
GNS3VMが完全に起動した状態になると、GNS3側の「ServerSummary」である
GNS3VMのステータスは緑色表示「オンライン」となるのが本来ですが、
私の環境の場合、まず1回目の起動でオンラインになることはありません。
いまから説明する手順を踏む必要があります。
GNS3VMが起動しているにも関わらず、GNS3上ではGNS3VMのステータスがオフライン状態に見える。
原因の確認
PC上で起動しているGNS3アプリケーションとGNS3VMがネットワーク的に何故か疎通できていないことが原因です。ハイパーバイザが稼働しているパソコンからGNS3VMにDHCPで割り当てられているIPアドレスに対してpingを打ってみるとよくわかりますが、pingが届かないことがわかります。(今回の例で言うと192.168.118.128がGNS3VMに割り当てられたIPアドレス)
解決方法
何故、このような状態になるのか原因ははっきりよくわかっていませんが、Workstation側の仮想ネットワーク設定を初期化してあげることで復旧することがわかっています。
以下、手順です。
1.GNS3VMのシャットダウン
インスタンスがすでに起動してしまっている状態だと、仮想ネットワーク設定を初期化することができませんので、すでに起動中のインスタンスは一度シャットダウンする必要があります。
・OKボタンを選択します。
・「shutdown」までカーソルをあわせて、エンターキーで実行するとシャットダウン可能です。
2.仮想ネットワークエディタの初期化
Workstation側の画面を開きます。画面右上編集メニューより仮想ネットワークエディタを選択します。
設定の変更ボタンを選択します。
・このアプリがデバイスに変更を加えることを許可しますか?とダイアログが表示されるため「はい」を選択します。
・「デフォルトに戻す」のボタンが選択できるようになるため、ボタンを選択します。→初期化が開始されます。
・初期化が完了したら「OK」ボタンで仮想ネットワークエディタ画面を閉じてください。※この時Vmnet1のサブネットアドレスが初期化前と変化していることを確認してください。(192.168.112.0/24から192.168.214.0/24に変更になっています。)
動作確認
GNS3のアプリケーションを再起動します。GNS3VMのインスタンスが完全に起動するまで待ちます。GNS3のServerSummary上でGNS3VMのステータスが緑色であれば成功です。
PCからGNS3VMに対してpingが通ることも合わせて確認してみてください。