➊はじめに
ネットワークの勉強をするのに無料で学習できる「Cisco Packet Tracer」という無料アプリを使ってみました。このアプリは、ネットワークトポロジーをサクッと作って、シミュレーションすることができるので面白いです。ただ、CiscoのルータやSwitchなどに対して参照や設定を行う場合は、Ciscoのコマンドをある程度理解しておく必要があります。このあたりも含めて、覚書程度にざっくりとまとめておきたいと思います。
➋具体的に何をするか
(1)🙂やること
「Cisco Packet Tracer」アプリを使用し、ルーティング処理の基本である、「スタティックルート」と「ダイナミックルート」の処理を実践して学びたいと思います。
(2)📝まずはお勉強
まずは、ルーティングに関して簡単なお勉強しておきませぅ!
⬢スタティックルート
スタティックルート
は、ユーザが手動で設定したルーティング情報を使用して経路を決定する方法です。経路は自動的にはアップデートされないので、ネットワークに問題が発生したり、ネットワークを変更する場合、ユーザが手動でルーティング情報を再設定する必要があります。
⬢ダイナミックルート
ダイナミックルート
とは、ルーティングプロトコルによりルーターに動的に追加されるルートです。ネットワークに問題が発生したり、ネットワークを変更した場合でも、自動的にルートを設定することができます。主に、ディスタンスベクタ型ルーティングプロトコルとリンクステート型ルーティングプロトコルがあります。
①ディスタンスベクタ型ルーティングプロトコル
ディスタンスベクタ型ルーティングプロトコル
とは、隣接するルータ間でルーティングテーブル(経路表)を交換し合い、どの隣接ルータを経由すれば最短のホップ数で宛先に届くかを基準に経路を決定する方式です。
代表的なものにRIP
があります。RIP
は、「Rest In Peace」の略ではなく、「Routing Information Protocol」の略です。
②リンクステート型ルーティングプロトコル
リンクステート型ルーティングプロトコル
とは、隣接ルータのリストを送受信し合い、ネットワーク内でどのルータとどのルータが繋がっているのかを表すデータベースを構築し、この接続情報を元に、宛先までの最短の経路を探索して経路を決定する方式です。
代表的なものにOSPF
があります。OSPF
は、「Open Shortest Path First」の略です。
⬢RIPとOSPFの違い
⬢RIPとOSPFの違いについて、簡単にまとめておきます。初めてRIP、OSPFを勉強する初学者は、大体こんな感じと思っていれば良いとのことです。
➌「Cisco Packet Tracer」インストール
Cisco Packet Tracerのダウンロードページは以下ですが、「Skills for All
」のアカウントもしくは「Cisco Network Academy
」を持っていないとダウンロードできません。持っていない方は新規に作成しログインしてください。便利なのは、「Googleアカウント
」を持っていれば、登録などせずにそれでログインすることもできます。サクッとやってみたい方は、こちらでログインするのをオススメいたします。
※「Cisco Packet Tracer」アプリは、Mac、Ubuntu、Windows用があります。
➍ネットワークトポロジー
⬢ネットワークトポロジー
192.168.1.1のPC0
から192.168.6.1のPC1
へ双方向通信を行う、以下のようなネットワークトポロジーをベースに考えてみます。
⬢「Cisco Packet Tracer」データの共有
「Cisco Packet Tracer」で上記のようなネットワークトポロジーは簡単に作れますが、とりあえず作るのが面倒だけどちょっとルーティングの処理のみ設定してみたいという方は、以下からダウンロードしてください。Google Driveに「Cisco Packet Tracer」のデータを公開しておきました。
こちらの共有ファイルは、「機材(PC、Switch、Router、ケーブル)の設置とIPアドレス設定」までしかしておらず、ルーティングの処理はまだ入れておりません。以下の手順に沿って一緒に実施しましょう。
ネットワークトポロジー(IPアドレス設定まで)
https://drive.google.com/file/d/1nj3KRkNW-G6Kq6JxIQCDb1-ws8Fag3Z6/view?usp=sharing
➎Cisco Router設定におけるモード
⬢コマンドライン インターフェイス
「Cisco Packet Tracer」でRouterやSwitchをいじくる場合、以下のインタフェース(CLI
:コマンドライン インターフェイス)が用意されています。
⬢コマンド モード
CLIでは、各モードにより実行できる権限などが異なります。以下、簡単にまとめておきます。
⬢コマンド
コマンドは以下の「ネットワーク入門サイト」が見やすかったです。
➏スタティックルートの設定例
(1)✍🏻ルーティング設定
⬢Router1の設定
192.168.6.0
向けのルーティング情報として、192.168.2.254
と192.168.3.254
と2つのルートを設定しておくと、勝手にラウンドロビンにより経路を選択してくれます。
en
conf t
ip route 192.168.4.0 255.255.255.0 192.168.2.254
ip route 192.168.5.0 255.255.255.0 192.168.3.254
ip route 192.168.6.0 255.255.255.0 192.168.2.254
ip route 192.168.6.0 255.255.255.0 192.168.3.254
⬢Router2の設定
en
conf t
ip route 192.168.1.0 255.255.255.0 192.168.2.1
ip route 192.168.6.0 255.255.255.0 192.168.4.254
⬢Router3の設定
en
conf t
ip route 192.168.1.0 255.255.255.0 192.168.3.1
ip route 192.168.6.0 255.255.255.0 192.168.5.254
⬢Router4の設定
帰りも同様、192.168.1.0
向けのルーティング情報として、192.168.4.1
と192.168.5.1
と2つのルートを設定しておくと、勝手にラウンドロビンにより経路を選択してくれます。
en
conf t
ip route 192.168.2.0 255.255.255.0 192.168.4.1
ip route 192.168.3.0 255.255.255.0 192.168.5.1
ip route 192.168.1.0 255.255.255.0 192.168.4.1
ip route 192.168.1.0 255.255.255.0 192.168.5.1
(2)👉🏻結果
PC0 → PC1
への通信において、Router1
の振り分け先として、1回目はRouter2
、2回目はRouter3
とラウンドロビンにより経路が変更されているのが分かります。Router2
経由とRouter3
経由の通信パケット(通信量ではない)が半分ずつになるのは良いのですが、例えばRouter2
が故障した場合、Router1,4
のルーティング情報を手動で変更しなければ、通信できる場合と通信できない場合が出てきてしまいます。
⬢「Cisco Packet Tracer」データの共有
実施した結果は、GoogleDriveにて共有しています。ダウンロードして、「Cisco Packet Tracer」で開いてみてください。
Qiita CiscoPacketTracer (スタティックルート).pkt
https://drive.google.com/file/d/1MWiXjRxVlUtaOJppkwsxdxgeQ0iWaoEA/view?usp=sharing
➐ダイナミックルート(RIP)の設定例
スタティックルートと同じような挙動となるようにダイナミックルート(RIP)を設定します。
(1)✍🏻ルーティング設定
⬢Router1の設定
en
conf t
router rip
network 192.168.1.0
network 192.168.2.0
network 192.168.3.0
⬢Router2の設定
en
conf t
router rip
network 192.168.2.0
network 192.168.4.0
⬢Router3の設定
en
conf t
router rip
network 192.168.3.0
network 192.168.5.0
⬢Router4の設定
en
conf t
router rip
network 192.168.4.0
network 192.168.5.0
network 192.168.6.0
(2)👉🏻結果
Routerの設定として、RIPを有効にするネットワークを指定するだけで、スタティックルートと同じ挙動を示してくれました。ユーザがこの通信の場合はこちらといちいち指定しなくて良いのでとても便利ですね。更にRouter2
が故障した場合でも経路情報は自動で更新されるので、ルーティング情報を手動変更せずともPC0 → PC1
の通信は可能となります。
⬢「Cisco Packet Tracer」データの共有
実施した結果は、GoogleDriveにて共有しています。ダウンロードして、「Cisco Packet Tracer」で開いてみてください。
Qiita CiscoPacketTracer (ダイナミックルート-RIP).pkt
https://drive.google.com/file/d/15uMEnlaCdRwrzgfpK1XxkqMqebmMwJDy/view?usp=sharing
➑ダイナミックルート(OSPF)の設定例
今回は、PC0 → PC1
へ通信するとき、通常は「Router2
」経由で通信させ、問題がある場合のみ「Router3
」経由で通信させるようにしたいと思います。
(1)✍🏻ルーティング設定
⬢Router1の設定
通常は「Router2
」のみへ経由さたい場合は、「Router3
」への通信にコストがかかるように設定しておきます。そうすることで優先制御を行うことができます。具体的には「Router1
」が「Router3
」へ通信する際に使用するインタフェース「fastEthernet1/0
」にコスト10を設定します。そうすることで、通常時はコストのかからない「fastEthernet0/1
」を使用して「Router2
」へ通信することになります。
en
conf t
router ospf 1
network 192.168.1.0 0.0.0.255 area 0
network 192.168.2.0 0.0.0.255 area 0
network 192.168.3.0 0.0.0.255 area 0
end
conf t
interface fastEthernet1/0
ip ospf cost 10
⬢Router2の設定
en
conf t
router ospf 1
network 192.168.2.0 0.0.0.255 area 0
network 192.168.4.0 0.0.0.255 area 0
⬢Router3の設定
en
conf t
router ospf 1
network 192.168.3.0 0.0.0.255 area 0
network 192.168.5.0 0.0.0.255 area 0
⬢Router4の設定
en
conf t
router ospf 1
network 192.168.4.0 0.0.0.255 area 0
network 192.168.5.0 0.0.0.255 area 0
network 192.168.6.0 0.0.0.255 area 0
end
conf t
interface fastEthernet0/1
ip ospf cost 10
(2)👉🏻結果
PC0 → PC1
への通信の際、Router1
での優先制御により必ずRouter2
を使用するようになります。ただし、Router2
に障害が発生した場合は、すぐにRouter3
へ経路を切り替え、PC0 → PC1
への通信が可能となっています。
⬢「Cisco Packet Tracer」データの共有
実施した結果は、GoogleDriveにて共有しています。ダウンロードして、「Cisco Packet Tracer」で開いてみてください。
Qiita CiscoPacketTracer (ダイナミックルート-OSPF).pkt
https://drive.google.com/file/d/1G9ztFK8bxZdHgfGQBcEVJXLOwplsnLqp/view?usp=sharing
➒以上
ベンダ特有のコマンドがあったりして難しそうな感じがするけど、意外にもすんなりここまで実施できました!と思ったら、よくよく考えると内容はネットワーク初心者レベルのものだもんね😅。。。でも、これを足がかりにもっとネットワークのこと調査していければと思っています。
お疲れ様でした😊