Hyper-V環境でVLANを使用する

今まで知識でしか理解していなかったのですが、Hyper-V環境でのVLAN使用検証を行いました。実は国井さんのブログを読んでいたら【QAコーナー】Hyper-VのVLANモードでWMIを使用したVLANの確認方法が記載されていたので試したかったんですね。

まず前提知識として

仮想ネットワークを構成する
http://technet.microsoft.com/ja-jp/library/cc816585(WS.10).aspx

を読んでみました。実はHyper-V1.0のときもVLANが使えたのですが次の文を読むと・・・

以下抜粋—

仮想ローカル エリア ネットワーク (VLAN) を構成する

Hyper-V は、仮想ローカル エリア ネットワーク (VLAN) をサポートしており、VLAN 構成はソフトウェアベースであるため、コンピュータを簡単に移動でき、ネットワーク構成も維持できます。仮想マシンに接続するそれぞれの仮想ネットワーク アダプタについて、仮想マシンの VLAN ID を構成できます。VLAN を構成するには、次のものが必要になります。

  • VLAN をサポートしている物理ネットワーク アダプタ。
  • ネットワーク パケットをサポートしている、VLAN ID が既に適用されている物理ネットワーク アダプタ。

管理オペレーティング システムでは、仮想ネットワークを構成して、物理ポート上のネットワーク トラフィックを許可する必要があります。これは、仮想マシンで内部的に使用する VLAN ID のための操作です。次に、仮想マシンを構成して、仮想マシンがすべてのネットワーク通信に対して使用する仮想 LAN を指定します。

VLAN を構成できるモードとして、アクセス モードとトランク モードの 2 つのモードがあります。アクセス モードでは、仮想ネットワークの外部ポートは、UI 内の 1 つの VLAN ID に制限されます。WMI を使用すると、複数の VLAN を設定できます。物理ネットワーク アダプタが、アクセス モードの物理ネットワーク スイッチのポートに接続されている場合は、同様にアクセス モードを使用します。アクセス モードの仮想ネットワークに仮想マシンから外部アクセスできるようにするには、仮想ネットワークのアクセス モードで設定されている VLAN ID と同じ VLAN ID を使用するように仮想マシンを構成する必要があります。トランク モードでは、複数の VLAN ID で物理ネットワーク アダプタと物理ネットワークの間の接続を共有できます。複数の VLAN の仮想ネットワークに仮想マシンから外部アクセスできるようにするには、物理ネットワーク上のポートがトランク モードになるように構成する必要があります。使用している VLAN を特定し、仮想ネットワークがサポートする仮想マシンが使用しているすべての VLAN ID を把握することも必要です。

ここまで

どうやら、仮想マシンで異なる複数VLANを使用するためにはWMIを使用して物理ポートをトランクモードに変更しなくてはいけないと読み取れます。実際のところHyper-V1.0では確認していなかったのでこれは盲点でした。

じゃあ、Hyper-V2.0ではどうなのか?

まずはスイッチのポートをトランクに設定します。これは各スイッチによって設定方法が異なりますが、私はシスコを使っているのでswichport mode trunkコマンドで設定しました。

そして仮想ネットワークマネージャーでVLANの設定です。

WS000076

ここでの設定は管理OS(ペアレント)が使用するVLANになります。このVLANが仮想端末(チャイルド)に影響することはありません。今回は10に設定しました。

そして仮想端末の設定です。

WS000077

ここでは20を設定しました。

さて他に何か設定は必要か?結論からいうと何も設定は必要なし!

問題なく管理OSではVLAN10、仮想端末ではVLAN20が使えました。更に他の仮想端末に対してVLAN10を追加して試しましたがGUIでの設定だけで使えました。

ちなみにPowershellを使用してVLANの確認を行いました。

WS000078

そしてポイントはローカルエリア接続が2つあるところかな?そもそもネットワークカードは1つしか私の環境はありません。どうやら、ローカルエリア接続-仮想スイッチポート0は管理OSが使用しているようですね。ではローカルエリア接続-仮想スイッチポート1は何?

Msvm_VLANEndpointクラスを見てみると・・・

WS000079

ここのDesiredEndpointModeが5になっています。実はアクセスモードが2でトランクモードが5なんですね。勝手にトランクにしてくれています。ですので、ローカルエリア接続-仮想スイッチポート1で物理的な接続をトランクで受けて、それを他のポートはアクセスモードで使用することができるんですね~

WMIを使用すると各ポートのモード(アクセスかトランク)を設定できるようです。ここら辺の説明は国井さんのブログに詳しく書いてあります。

まとめ

どうやら、Hyper-V2.0ではスイッチ側をトランクモードに設定すると、自動的に物理ポートをトランクモードに変えてくれるので、仮想端末は使用するVLAN IDを指定するだけで使用できるようになります。ですので、WMIなどを使用しなくても複数VLANを使用できる。

余談ですが、今までWMIを使った管理は行ったことがなかったので、かなりここら辺の話は鬼門です。でも、これから覚えなくては・・・・

スポンサーリンク
レクタングル(大)広告
レクタングル(大)広告
  • このエントリーをはてなブックマークに追加

コメント

  1. Suguru より:

    「複数の VLAN の仮想ネットワークに仮想マシンから外部アクセスできるようにするには、物理ネットワーク上のポートがトランク モードになるように構成する必要があります」私もここに引っかかっていたことがきっかけで調べてみました。普通にVLANを使うのであれば、GUIの設定だけでいけそうですね。

  2. Naoki より:

    いや~、国井さんのブログ見なかったら気づきませんでした(笑)確かに、Hyper-V2.0ではGUIだけで使えるようですね!

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*