はじめに
仮想化環境では、ネットワークを分けて管理したいことがあり、その際にVLANを構築するケースが多くあります。
これは proxmox でも同様で、私は今まで192.1680.1/24の家庭内ネットワークにそのままproxmoxを構築してクラスタを組んでいたため、セキュリティ面に多分に問題がある状態でした。
今回、ちゃんとさせようと思い、ネットワークを論理的に分割するためVLANを構築することとしました。
構成1
VLANを使用する方法の構成はいくつかあり、最もスタンダードなものは、インターフェースを2つ以上用意する方法です。
NIC1:管理ネットワーク (VLAN無し、ポートVLANがある場合もある)
NIC2:一般ネットワーク (VLAN有り)
管理ネットワークをVLAN無しにする理由はいくつかあります。
まず、インストールの際に設定できないこと。構築後に別途設定する手間がかかります。
次に、トラブル時にリモートから接続できなくなる、設定端末に依存するなど、トラブルシュートの厄介さ。
そして、最重要な点が、マイグレーションの際に大量通信が発生して、一般のネットワーク(大抵はユーザートラフィックがある)の遅延、スピード低下などパフォーマンスに影響するためです。
このため、物理的にネットワークを分け、特別な機能を使わない素のネットワークを使用します。
VMwareもこの構成を推奨しており、管理ネットワークをVLANに組み込もうとすると警告が表示されたりします。このVMwareのベストプラクティスを優先して、VLANを組まないこともあります。
まぁ、VMwareの場合は、マイグレーション用にもう一本NICを用意するのがベストプラクティスですが、家庭用にはちょっと大規模すぎるかなという印象です。
構成2
2つ目は1つのNICに全てのネットワークを入れてしまう方法です。
NIC1:管理・一般混合ネットワーク
このメリットはホスト側にNICを追加しなくて良い、スイッチを半減できる、ケーブリングが楽など、コスト面のメリットが大きいです。
一方でトラブルシュートなど管理面は少々面倒です。
GCPなどは写真を見る限り、この構成のようでした。
手順
今回は構成2で作成します。
とはいえ、proxmox公式に記載されています。
こちらの通りに設定すればよいです。
VLAN on the Host
https://pve.proxmox.com/wiki/Network_Configuration#sysadmin_network_vlan
この中の2例目の方を使用します。
Example: Use VLAN 5 for the Proxmox VE management IP with VLAN aware Linux bridge
auto lo
iface lo inet loopback
iface eno1 inet manual
auto vmbr0.5
iface vmbr0.5 inet static
address 10.10.10.2/24
gateway 10.10.10.1
auto vmbr0
iface vmbr0 inet manual
bridge-ports eno1
bridge-stp off
bridge-fd 0
bridge-vlan-aware yes
bridge-vids 2-4094
vmbr0.5の「5」がVLAN IDです。
vmbr0.100に変更すれば VLAN 100 を使用する意味になります。
このVLAN IDを修正すれば使用できます。
IPアドレスも変更する場合は、以下のページを参照して予め変更しておくことを勧めます。
変更後は「ifreload -a」で読み込みしなおしができます。
ifreload -a
ただ、rebootの方が推奨のようです。
reboot
これで接続できるようになっていると思います。
端末にVLANの設定(Windowsの場合はNICのドライバーで設定することが多い)を行えば接続できます。
以上
コメント