見出し画像

ネットワークエンジニアの学習環境をEVE-NG+TWSNMP FCで作る方法 その3

前回の記事

で最初のラボを作ることができました。いろいろ設定を追加するツールの準備もできました。ネットワークの実験をするためには、もう少し必要なことがあります。今回は、その話です。

ラボを外部ネットワークに接続する

ラボに設置したネットワーク機器が自分の家のネットワークやインターネットに接続せずに実験するだけなら閉じた世界で使えばよいのですが、それだと実際の通信とかけ離れた環境になってしまいます。
ラボを外部ネットワークに接続する方法は、

などのいろいろな人が書いているので参考になると思います。
ただ、外部ネットワークに接続すると言っても

  • ラボ内のネットワーク機器から外部ネットワークにアクセスできればよい(上記のサイトで紹介されている設定で実現できます。)

  • 外部のネットワークの機器(PC)からラボ内の機器にアクセスしたい

があると思います。この話を書いておきます。
EVE-NGのマップの空欄を右クリックするとNetwrokを追加するメニューが表示されます。これをクリックすると

のようなダイアログが表示されます。タイプをクリックした状態です。
タイプのbrigeは、ラボ内の接続点を作るためのものです。外部との通信には使わないという意味です。
Management(Cloud0)から下のタイプは、

のような感じで、EVE-NGが動作するPCのLANポートに対応しています。仮想版なら、最初のネットワークアダプタがCloud0です。次がClound1です。
実際のLANポートがなくてもネットワークの仮想インターフェイスは作成されます。LANポートが1つでもClound1を使うことができるという意味です。
このネットワークを追加して、仮想PCや他のネットワーク機器と接続することで外部と通信ができるようになります。

のような感じで接続します。 

VMWare Workstationの環境の場合

Management(Cloud0)は、管理用のネットワーク接続で特別なものです。
私は、VMWareで動作する環境の場合は、このCloud0に接続されたネットワークアダプタをブリッジに設定しています。(miniPCなどの実機にインストールした場合と同じ状態です。)

これは、外部にある他のPC(開発用のMacなど)からラボ内に設置したネットワーク機器の管理ポートに直接アクセスしたいからです。
でも、このブリッジ接続したManagement(Cloud0)は注意が必要です。

のように、仮想PC(VPC)をManagement(Cloud0)に接続すれば、外部のPCと直接通信できると思ってしまいますが、こうすると、仮想PCの設定ができません。設定のためにアイコンをクリックしてtelnetで接続しようとすると

のようなエラーですぐに切断されてしまいます。
CiscoのvIOS SwitchなどのL2のポートを接続するとネットワーク全体がおかしくなってしまいました。怖くて何度もやっていませんが、ループが発生しているのではないかと思っています。ルーターは接続しても問題ないです。

私は、仮想PCなどから外部ネットワークに接続するために、 VMWare workstationの仮想マシンに2つ目のネットワークアダプタを追加して、NATの設定にしています。

ネットワークアダプターは後から追加してもちゃんと認識してくれます。
追加したネットワークアダプターはCloud1になります。このClound1に仮想PCを接続すれば、

Clound0に接続した時の問題は発生しません。ちゃんとtelnetで接続して設定できます。このNATのネットワークは、VMWare Workstationの、すばらい機能でDHCPサーバーが動作しているので、IPアドレスなど自動設定できます。
仮想PCの設定で

ip dhcp

というコマンドを実行すれば、アドレスが自動的に振られ外部と通信もできます。

これはかなり楽です。
NATについては

が参考になります。

NATに設定したネットワークアダプターに接続されたEVE-NGのLANポートにIPアドレスを設定する方法について書いておきます。
SSHでEVE-NGにログインして、/etc/network/interfacesというファイルを編集します。nanoエディタが便利です。

nano /etc/network/interfaces

基本的には、pnet1をpnet1と同じような設定にすればよいです。

 Cloud devices
iface eth1 inet manual
auto pnet1
iface pnet1 inet dhcp
    pre-up ip link set dev eth0 up
    bridge_hw eth0
    bridge_ports eth1
    bridge_stp off

Ctrl+xで保存して終了したあと、

ifdown pnet1
ifup pnet1

とすれば、cloud1にIPアドレスが割当られます。他のネットワークアダプターも同じように設定すれば、使えるネットワークを増やせます。

miniPCなどの物理的なEVE-NG環境の場合

miniPCなどにインストールしたEVE-NGの環境の場合は、物理的なLANポートがCloud0から順番に割り当てられます。LANポートが1つならCloud0だけです。
仮想PCやL2 SwitchをCloud0に接続するとVMware環境のところで説明したのと同じ問題が発生します。
この問題を回避するにはルーターをラボに追加して、このルーター経由でラボ内の機器と通信する方法があります。

のような感じです。最初に中古PCで作ったEVE-NGの環境は、この方法でラボを作りました。vyOSのルーターを使いました。
この方法なら、ラボの内にルーター経由でアクセスできますが、L2 Switchだけテストしたい簡単なラボにもルーターを設置する必要があって、ちょっと面倒です。

もう一つの方法は、VMWare版と同じようにCloud1をNAT経由で外部ネットワークに接続する方法です。VMWareのような簡単な方法はないので自分でLinuxのネットワーク設定をする必要があります。手順は

  • Clound1に対応した仮想ネットワーク(pnet1)に固定IPをつける

  • ルーター機能を有効にする

  • iptablesでNATを追加する

という流れです。

固定IPは、/etc/network/interfacesというファイルに

iface eth1 inet manual
auto pnet1
iface pnet1 inet static
    address 192.168.13.1
    netmask  255.255.255.0
    bridge_ports eth1
    bridge_stp off

を書きます。

ルーターを有効にするは/etc/sysctl.confというファイルの

# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1

のようにコメントを外します。
ここまでの設定の後に、rebootコマンドで再起動すれば、2つ目までは完了です。
NATの追加は

iptables -t nat -A POSTROUTING -s 192.168.13.0/24 -o pnet0 -j MASQUERADE

のコマンドを実行すれば、よいです。このコマンドを再起動のたびに実行するのが面倒なら、

を参考して永続化すればよいです。
これで、Cloud1は、NAT経由になります。

のように、L2 Switchを接続しても問題なしです。
ただし、VMWare WorkstationのNAT環境とは違ってDHCPサーバーは自動で設置されません。
pnet1に設定したネットワークアドレス

address 192.168.13.1
netmask  255.255.255.0

の範囲で固定のIPアドレスを設定する必要があります。
仮想PCは、192.168.13.2
Switch1      192.168.13.254
などです。

閉じたネットワークで実験するのは、このNAT接続が便利です。

外部ネットワークへの接続の話だけで長くなってしまいました。
続きは次回にします。この環境にTWSNMP FCを追加する話です。

助手の猫さんは

ここから先は

141字
ネットワークエンジニアに必要なネットワーク管理の技術を習得するための方法についての情報を発信します。 マガジンを買った方からの質問は要望は歓迎します。

ネットワークエンジニアになりたい人に役立つかもしれない情報を発信するためのマガジンです。 何かの資格試験に合格するための役には立たないとお…

開発のための諸経費(機材、Appleの開発者、サーバー運用)に利用します。 ソフトウェアのマニュアルをnoteの記事で提供しています。 サポートによりnoteの運営にも貢献できるのでよろしくお願います。