Network

GNS3を使って仮想ルータでシミュレート【インストール手順】

Network

ネットワークを学習する際に、ルーターやスイッチの実機を購入しないでネットワーク機器の検証環境を作りたいと思ったことはありませんか?

そのような場合には「GNS3」というツールを利用することで仮想的なCiscoルーターを操作して利用することができます。

もちろん実機がないとできない検証などもありますし、ネットワークエンジニアとして実機で検証すべき、と考える方もいますが、ネットワーク機器の基本的な学習は、GNS3でほとんどできますのでまずはGNS3で学習や検証を進めることをオススメします。

本記事ではGNS3の導入方法やインストール方法、簡単な使い方などを解説していこうと思います。

手順と前提条件

GNS3を構築するためには以下の手順があります。動作にはVirtualBoxなどの仮想ソフトも必要となり、結構複雑ではあります。

  1. GNS3のダウンロード、インストール ← 無料アカウント登録が必要
  2. GNS3 VMのダウンロード
  3. VirtualBoxのインストール
  4. VirtualBoxへGNS3 VMのインポート
  5. GNS3のセットアップ
  6. Cisco ISOファイルから仮想ルータテンプレートの作成
  7. 動作確認

今回は私のMacPCにGNS3環境を構築していきたいと思います。
また、仮想ソフトとしてVirtualBoxを利用していますが、VMwareも可能です。

GNS3などのツールは無料で手に入れることができますが、ツール上で動作させる仮想ルータを構築するためにCiscoルータのOSにあたる「Cisco ISOファイル」が必要です。ISOの取得は会社がCiscoパートナーであればCisco社のサイトからダウンロードできます。また、実機からイメージを吸い出すこともできますが、大半のそうでない方はどこからか、なんとかして入手する必要があります。ここは触れませんのであしからず。

GNS3ってなに?

そもそもGNS3はCiscoのネットワーク機器をPC内で仮想的にシュミレーションできるツールです。GNS3を利用することでPC内に仮想的にルーターやスイッチを作成して検証をすることができます。

理想としては自宅に実機があって、その設定を投入しながらルーティングテーブルなどを確認したいところですが、ほとんどの方が自宅でネットワーク機器はもってないと思います。

私のGNS3使い方としては、仮想ルーターに対してAnsibleからのテスト(Config取得や設定変更など)の環境として利用しています。

GNS3のダウンロード、インストール方法

まずはGNS3のサイトにアクセスしてツールをダウンロードしていきましょう。ダウンロードには無料のアカウント登録をする必要がありますので、右上の「Sign Up」から作成してください。

https://www.gns3.com/

登録は英語ページなのですが、次のような感じである程度適当に入力してもオッケーです。

ログインした状態で、「FREE DOWNLOAD」からGNS3をダウンロードしていきます。

使用しているOSからダウンロードしてください。私の環境はMacなので、Macからダウンロードしていきます。

ダウンロードしたGNS3のインストーラーをダブルクリックしてインストールまで完了させてください。現時点ではGNS3を起動する必要はありません。

GNS3 VMのダウンロード

続いて「GNS3 VM」を下記よりダウンロードしていきます。このVMがGNS3のサーバになります。

Releases · GNS3/gns3-gui
GNS3 Graphical Network Simulator. Contribute to GNS3/gns3-gui development by creating an account on GitHub.

GNS3のバージョンと同じものをダウンロードしてください。

VirtualBoxのインストール

VirtualBoxのインストールは下記にまとめてありますので、インストールを行なっていない方はこちらを参考にしてください。

VirtualBoxへGNS3 VMのインポート

次にVirtualBoxへ先ほどダウンロードしたGNS3 VMをインポートしていきます。

VirtualBoxから「仮想アプライアンスのインポート」を実行してください。

先程ダウンロードしたGNS3 VMのzipを解凍すると、「GNS3 VM.ovf」というファイルがありますので、そちらを選択してください。

その後はデフォルトのままで「インポート」すれば問題ありません。

インポートが完了すると以下のようにGNS VMが仮想マシンとして登録されるはずです。起動から正常に起動ができるか確認してみてください。

以下のような画面が立ち上がれば起動は成功です。

もし以下のようなエラーが出てGNS3 VMが起動しない場合には、ネットワークの設定が不足していますので、以下の設定を確認してください

The GNS3 VM (IP=192.168.56.101, NETWORK=192.168.56.0/24) is not on the same network as the local server (IP=127.0.0.1, NETWORK=127.0.0.0/8), please make sure the local server binding is in the same network as the GNS3 VM

[ファイル]->[ホストネットワークマネージャ]をクリックします。

おそらく何も作成されていない状態かと思いますので、[作成]をクリックしてネットワークを作成します。自動的に作成されるはずです。

GNS3 VMの設定を開いて、ネットワークのアダプター1に先ほど作成したアダプタを割り当てます。

これで再度仮想マシンが起動するか確認してください。

GNS3のセットアップ

次にGNS3のセットアップを行います。

GNS3を起動します。ただし、最初は色々とエラーがでますが気にしないでください。

はじめはいろいろな警告画面がでますが、最終的には以下のような画面が立ち上がるかと思います。左下の[Settings]をクリックします。

ServerからEnable local serverにチェックします。

次にGNS3 VMから以下の画面のように項目を選択します。

VMが開いて、「local server」と「GNS3 VM」が緑色になっていれば、GNS3の環境構築は無事終了です!

先程のGNS3VMの設定であった「headless mode」にチェックを入れることでVMがいちいち画面上に立ち上がらなくなります。チェックを入れておくことをおすすめします

以下のようにServer Summaryが両方ともグリーンになれば正常起動しています。

Cisco ISOファイルから仮想ルータテンプレートの作成

つぎに実際に仮想ルータを作成してみましょう。GNS3を立ち上げると毎回以下のような画面が立ち上がりますが、GNS3のプロジェクトを作成します。プロジェクト単位で構成が保管されますので、いつでも過去に作成した環境を復活させることができます。

Preferencesから設定画面を開きます。

IOS routersを選択して[New]から作成します。

ここからはダイアログにしたがってIOSファイルをインポートしていきます。デフォルト設定のまま進んで問題ありません。

最終的に仮想ルータとして登録されることを確認してください。

動作確認

最終的な動作確認のために、GNS3上に仮想ルーター2台を設置して、pingで疎通確認をしてみます。

はじめにルーターを設置します。左側のルーターマークから先ほど登録した仮想ルータをドラッグして設置します。

次に左側のケーブルマークをクリックして2台ともFastEthernet0/0で結線してください。結線が終わったら起動をしてルーターに電源をいれます。

それぞれのFa0/0に192.168.1.1と192.168.1.2を振って、pingで疎通確認をしてみましょう!

R1#configure terminal
R1(config)#interface FastEthernet 0/0
R1(config-if)#ip address 192.168.1.1 255.255.255.0
R1(config-if)#no shutdown 
R1(config-if)#exit
R1(config)#exit
R1#wr

R2#configure terminal
R2(config)#interface fastEthernet 0/0
R2(config-if)#ip address 192.168.1.2 255.255.255.0
R2(config-if)#no shutdown 
R2(config-if)#exit
R2(config)#exit
R2#wr


R2#ping 192.168.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.1, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 4/24/52 ms

とりあえず今回は最低限のping疎通確認までしました。実際にはsshやtelnetの設定を入れたり、OSPFやBGPの設定、wiresharkを使ったキャプチャなんかもできますので、色々と試しまくってみてください!

今回は以上となります。

コメント