Azure VM に GNS3 Remote Server を入れて Web UI 上でネットワーク検証をやってみた
ネットワークはインターネットの根幹です。最近は Wi-Fi というか無線 LAN が当たり前に使えていますが、有線 LAN で DHCP も無い頃から考えると、とても便利にな世界になりました。
そこで、基本的なネットワークの仕組みを検証するにあたり、GNS3 (Graphical Network Simulator 3) を Azure VM にインストールして使ってみました。
GNS3 をインストールする Azure VM を作成
prefix=mnrgns3
region=japaneast
az group create \
--name ${prefix}-rg \
--location $region
az vm create \
--resource-group ${prefix}-rg \
--name ${prefix}-vm \
--os-disk-name ${prefix}-vmOSDisk \
--image Ubuntu2204 \
--size Standard_B1s \
--admin-username azure \
--generate-ssh-keys \
--nsg-rule NONE \
--public-ip-address-dns-name ${prefix} \
--storage-sku Standard_LRS
az network nsg rule create \
--resource-group ${prefix}-rg \
--name Allow-SSH \
--nsg-name ${prefix}-vmNSG \
--priority 100 \
--source-address-prefixes $(curl -s inet-ip.info) \
--destination-port-ranges 22 \
--access Allow \
--protocol Tcp
Azure VM に SSH 接続して事前準備
OS の時計を日本時間に設定し、Standard_B1s が 1GB メモリで少々不安なため、スワップメモリを 2GB に設定して OS を再起動します。
ssh azure@$prefix.$region.cloudapp.azure.com
sudo timedatectl set-timezone Asia/Tokyo
sudo sed -i 's/ResourceDisk.Format=n/ResourceDisk.Format=y/' /etc/waagent.conf
sudo sed -i 's/ResourceDisk.EnableSwap=n/ResourceDisk.EnableSwap=y/' /etc/waagent.conf
sudo sed -i 's/ResourceDisk.SwapSizeMB=0/ResourceDisk.SwapSizeMB=2048/' /etc/waagent.conf
sudo reboot
もう一度 Azure VM に SSH 接続して GNS3 をインストール
ssh azure@$prefix.$region.cloudapp.azure.com
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-iou --with-i386-repository
以下のメッセージが表示されたらインストール成功です。
=> GNS3 has been installed with success
GNS3 のバージョンは 2.2.53 でした。
$ gns3server -v
2.2.53
一度 Azure VM から抜けて 3080 ポートを SSH トンネル
exit
ssh -L 3080:localhost:3080 azure@$prefix.$region.cloudapp.azure.com
ブラウザで localhost:3080 にアクセス
http://localhost:3080/
アクセス直後の画面です。
Hub 1 台、PC 2 台を接続して ping してみたところです。
後片付け
exit
az group delete \
--name ${prefix}-rg \
--yes