Windows7のVMwarePlayerのホストでタグVLANを使う

とは言ってもVMホストのNICがタグVLANに対応している必要がありますが。。。


設定したVMホストのNICは次のような構成になっています。

オンボードNIC
Realtek PCIe GBE Family Controller
増設NIC
VIA Velocity-Family Gigabit Ethernet Adapter

デスクトップ機ですがどちらのNICもGbEでVLANにも対応していたので、既に使っていた増設NICをタグ無し、オンボードNICをタグ付きに設定します*1

VLANの設定

まずはNICにVLANの設定を行うためのツールを下記からインストールします。
http://www.realtek.com/
トップレページから
「ダウンロードセンター > ネットワ-ク向けIC > Network Interface Controllers > 10/100/1000M Gigabit Ethernet > PCI Express > Software」
と辿って、"Windows Diagnostic Program" をダウンロード・インストールします。

インストールされた "Realtek Ethernet Diagnostic Utility" を起動します。

"Realtek PCIe GBE Family Controller" を選択するとVLANの項目が表示されるので、追加ボタンを押下して目的のVLAN-IDを入力します(折角なので2個追加しました)。

f:id:ngyuki:20110815223709p:image:w360

仮想NICの設定

コントロールパネルからネットワークアタプタの一覧を表示します*2

デバイス名が"Realtek Virtual Miniport Driver for VLAN"のような名前のアダプタが、VLANの仮想NICとして追加されているので、右クリックしてプロパティを表示します。

下記のチェックを外します*3

  • Microsoftネットワーク用クライアント
  • Microsoftネットワーク用ファイルとプリンター共有
  • インターネット プロトコル バージョン 6 (TCP/IPv6)
  • インターネット プロトコル バージョン 4 (TCP/IPv4)

ついでのアダプタの名称を適当にわかりやすい名前に変えておきます(下図では "VLAN101" と "VLAN102" に変えています)。

f:id:ngyuki:20110815223710p:image:w360

VMwareのネットワーク設定

vmnetcfg を開いてVMwareのネットワーク設定を行います*4

VMnet0を次の通り設定する(デフォルトはブリッジ先が"自動"になっているので明示的に指定します)。

  • VMnet情報: ブリッジ
  • ブリッジ先: "VIA Velocity-Family Gigabit Ethernet Adapter"


VMnet2とVMnet3を次の通り設定する(VLANが複数ある場合はブリッジ先がどっちがどっちかを間違えないように・・・)。

  • VMnet情報: ブリッジ
  • ブリッジ先: "Realtek Virtual Miniport Driver for VLAN 〜〜"

f:id:ngyuki:20110815223711p:image:w360

VMゲストの設定

VMのvmxファイルで、次の通り記述を追加する。

ethernet1.present = "TRUE"
ethernet1.connectionType = "custom"
ethernet1.vnet = "VMnet2"
ethernet1.virtualDev = "e1000"
ethernet2.present = "TRUE"
ethernet2.connectionType = "custom"
ethernet2.vnet = "VMnet3"
ethernet2.virtualDev = "e1000"

VMを起動する、VMの設定画面を開くと、上で追加したNICが次のように表示されているはずです。

f:id:ngyuki:20110815223712p:image:w360

ゲストOSの設定と疎通確認

ゲストOSでI/Fが増えているはずなので、VLAN内のIPアドレスを設定する。

ifconfig eth1 192.168.101.123 netmask 255.255.255.0 up
ifconfig eth2 192.168.102.123 netmask 255.255.255.0 up

VLAN内の別サーバにとかにPINGとかを打ってみて通れば成功。eth1はVLAN101に属し、eth2はVLAN102に属しています。

・・・VMホスト側のNICをWiresharkで見てもタグが付いている気配が無い? 本当に設定出来ているのか不安・・・

*1:1つのポートでタグ無しとタグありの両方のVLANにすることも出来ると思いますが、たまたま2毎刺しだったので。

*2:コントロールパネルの表示方法によりますが「コントロールパネル > ネットワークとインターネット -> ネットワークの状態とタスクの表示 > アタプタ―の設定の変更」の通りにたどれば表示されます。スタートメニューに「ネットワーク」という項目があれば、「ネットワーク」を右クリックでプロパティ表示の方が簡単です。私はいつもそうしてます。

*3:有効にしていてもVLANは使えると思いますが、要らないのでOFFにします

*4:vmnetcfg が無ければこの辺 の記事を参考にインストーラから抽出してください。