2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

GNS3 Remote Server

Last updated at Posted at 2020-01-02

はじめに

Network 関係で色々と遊ぼうとすると、どうしても物理的な構築が必要になる。でも、プロトコルの動作を知りたいとか、Router の Config の書き方や実際の Packet を見たい、速度なんざいらない、という時には仮想環境でやったほうが面倒がない。そもそも実機をかき集めるとなると、電力だけで地獄を見る。

というわけで GNS3. GNS3はもともと Cisco IOS を動かすための Dynamips のラッパーとして細々開発が続けられていたが、2016年くらいからかな、何かの資本が入ったのか、精力的に開発が進められている。

検証用とはいえ、仮想 Router や サーバを複数台動かそうとするとメイン PC で賄うのはつらい。そこで、ESXi サーバ上にGNS3サーバを立て、メインPCは GNS3クライアントとして動作させることにした。

前提

GNS3

  • GNS3 2.2.3 を利用。Server/Clientでバージョンを合わせる必要がある

Remote Server

  • Ubuntu 18.04.1 を最小インストールで用意。
  • Partition は、/のほか、/optを別に分けた。GNS3 Serverで動作させる仮想マシン群はこのディレクトリに配備される。/optを分けておかないと、GNS3 上に無尽蔵に仮想マシンを立てていって突然ディスク容量が足りない!となって サーバすら起動しなくなる(なった)。

Local Client

  • Windows 10 で用意。Linux でもやるべき手順は変わらない、と思う。

OpenVPN

  • Client - Server 間は OpenVPN を利用してトンネル化する。Server を Internet 上のクラウドで構築することを想定しての構成。NAPT 変換前の Private 空間で直接つなぐのなら正直いらないのだが、公式手順に合わせて利用することにした。

Remote Server 構築

事前準備

sudo apt install curl
sudo adduser gns3

curlはGNS3謹製ツールを動作させるために必要。gns3ユーザアカウント追加は正直いらない気もするのだが、これが入っていないと、gns3-remote-install.sh が途中で止まった。

GNS3 Serverのインストール

元ネタはここ.

cd /tmp
curl https://raw.githubusercontent.com/GNS3/gns3-server/master/scripts/remote-install.sh > gns3-remote-install.sh
sudo bash gns3-remote-install.sh --with-openvpn --with-iou --with-i386-repository

インストールスクリプトでインストールできる。openvpn のクライアント用opvnファイル(client.ovpn)が/root/に作成されていればOK.

Client側の設定

公式サイトからOpenVPNをダウンロードし、インストール。
Server側で生成された client.ovpn ファイルを Client 側 PC へコピーし、OpenVPNへインポートして、接続する。
接続に成功すると、VPN接続用のIP アドレスがアサインされる。

Private 空間で利用するときの注意

インストーラで生成された client.opvn を Pvitate 空間で使う場合(言い換えると Server / Clientがどちらもローカルにある場合)、ファイルの一部を書き換える必要がある。
connectionタグ配下に 接続先アドレスを指定するところがあるが、そこをローカル側のアドレスに変更する。

client.opvn
(ファイル末尾)
<connection>
remote Global IP Address 1194 udp ← ここをローカルアドレスへ書き換え
</connection>

GNS3 Client の設定

GNS3 の Edit → Preference → Server → Server Preferenceを設定する。User/Passwordはデフォルトでできた。

  • Enable local server のチェックを外す。
  • Remote main ServerのホストにVPN 接続用の IPアドレスを設定する。

Preference.png

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?