ProxmoxVEにPNETlabを構築する

こんにちは。
株式会社クラスアクト インフラストラクチャ事業部の大塚です。

先日、弊社の優秀な後輩さんがPNETlabと呼ばれるネットワークの検証ツールの話をしているのを聞きまして、「面白そうだな～」と思ったのでノリと感覚で作ってみました。


## 用語
# PNETlab

公式サイトを日本語訳したものを置いておきます。
CCNA等のネットワーク系資格を勉強された方は触ったことがあるかもしれませんが、PacketTracerの上位互換的なイメージを持っていただくといいかもしれません。全然中身を触れておりませんが、どうやらPaloAlto系の製品を仮想的に触れたりAnsibleでVLANを作ったりとか基礎的なものだけではなく発展的なことも出来るようです。PacketTracerはかゆいところに手が届かないみたいなことは往々にしてありましたし、どんな感じか今後触ってみたいところです。

>PNETLab (Packet Network Emulator Tool Lab)は、ラボをダウンロードしてコミュニティと共有できるプラットフォームです。PNETLab BoxとPNETLabストアがあります。
PNETLab Box（オフラインとオンラインの2つのモードがあります）は仮想マシンです。これはローカルマシンにインストールされ、ラボはその上で実行されますので、ラボの速度を心配する必要はありません。
PNETLab Storeは、ネットワーク、データベース、システム...などの分野で数百の無料ラボを提供するウェブプラットフォームです。PNETLabからダウンロードしたラボにはIOS、Dockerが含まれています。

https://www.pnetlab.com/pages/main

# 構築
基本的に以下のYoutube動画を参考にしております。

https://youtu.be/_QbjE-x714o

まず、ovaを公式からダウンロードします。以下のサイトにアクセスします。

https://pnetlab.com/pages/download

今回は、一番上のものを使用します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/6063a9e9-ce4e-e63a-a5d1-243482bfe9b1.png)

ダウンロードが出来たら、これをProxmoxVEに移動します。
Teratermの機能でSCPできますので、それを使ってしまいましょう。
今回はtmpに移動していますが、別にどこでもいいと思います。ovaをProxmoxに移動出来たらtarで解凍します。
```
root@pve01:~# cd /tmp/
root@pve01:/tmp# ls -ltr *ova
-rw-r--r-- 1 root root 2061676032 Oct 22 13:22 PNET_4.2.10.ova
root@pve01:/tmp# tar -xvf PNET_4.2.10.ova
PNET_4.2.10.ovf
PNET_4.2.10.mf
PNET_4.2.10-disk1.vmdk
```

次に以下のようにqm importovfコマンドを使います。
importovfの後の3桁の数値（今回は100）はProxmoxのVMのIDになります。使用していないものを指定しましょう。
```
root@pve01:/tmp# qm importovf 100 PNET_4.2.10.ovf local-lvm
  Logical volume "vm-100-disk-0" created.
transferred 0.0 B of 100.0 GiB (0.00%)
transferred 1.0 GiB of 100.0 GiB (1.00%)
transferred 2.0 GiB of 100.0 GiB (2.00%)
transferred 3.0 GiB of 100.0 GiB (3.00%)
transferred 4.0 GiB of 100.0 GiB (4.00%)

中略
```

上記のコマンドの実行結果が100%になるとロックのアイコンが外れるはずです。それまで待ちます。
![image (67).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/d76f0d72-9db5-2630-4878-b4782c8feff0.png)
![image (66).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/7d889ac0-0921-d778-1345-ebc9331e02c9.png)

次にこの100のProcessorsのTypeをhostに変更します。
![image (68).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/5cfe185e-b45a-a1e6-e2a5-8a88aa3ee222.png)
さらにNetwork Deviceを以下のように追加します。追加後、いつものVMのように起動します。
![image (69).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/cd73dcf4-f489-b5e4-6f96-93c72f8a97ed.png)

CUIでユーザ名とパスワードを聞かれます。
しれっと書いてますが、ユーザがroot、パスワードがpnetとなります。
![image (70).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/b043cb90-906a-da07-9209-1edab465444d.png)

ログインできると背景が青くなり、システムセッティングの為いろいろ聞かれ始めます。
まず、rootのパスワードを聞かれますので、pnetと入力します。
入力していないっぽく見えますが、入力できています。
![image (71).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/6eb833dd-2bdd-4ba2-43d9-2f0ca75329f7.png)
![image (72).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/c8118e7f-c372-d842-d7fa-63218085da14.png)
これはデフォでいいと思います。
![image (73).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/aab95353-353e-78b6-873e-4482c5a47633.png)
これはこのPNETlabにWebブラウザで接続するためのIPアドレスとなります。
今回は192.168.2.223としました。
![image (74).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/a0471f8e-5fec-0de9-ce30-ba0c58c3fe82.png)
サブネットマスクとデフォルトゲートウェイを設定します。
ご利用の環境に併せてください。
![image (75).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/8c77215d-b344-3058-2e84-557f0bc69998.png)
![image (76).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/9449f58f-29a1-9cc9-f6cf-9ae2d20062b0.png)
DNSのIPアドレス（いつものごとく8.8.8.8）を設定し、インターネットに直接接続するようにしています。
![image (77).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/6b2c1afc-8927-2878-4268-e81b123e0690.png)
![image (78).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/e06bd0f8-a338-17b8-f72d-a8f87dc54a58.png)
![image (79).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/902ec227-7452-a467-627f-d6288f6df8e4.png)
![image (80).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/7507ba04-73bb-9a0a-4f4f-30bb7eb93939.png)

この後、こんな画面が表示されればいったん大丈夫です。
![image (81).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/28638d31-c907-7570-f396-3ef2ba2fb346.png)

Webブラウザでhttp://"設定したIPアドレス"でアクセスすると以下のような画面が表示されます。
今回は右のOffline Modeを選択します。
![image (82).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/adce3a57-1ffe-44e8-0ddb-430921605852.png)
ユーザ名はadmin、パスワードはpnet、N4の右側に同じものを記入（毎回ランダム）してLoginします。
![image (83).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/7ff0d0a2-4cd7-56ef-2adc-11a10da17248.png)
ログインできました。使用感とかは今後確認ですね。
![image (84).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/7a2ae66f-4cda-27af-675b-ccdba3ecccbc.png)