PCのNICにtag vlanをpowershellコマンドで設定する方法

IT技術解説

WindowsPC・Server のNICにtag vlan(トランクポート)を設定

通常パソコンの有線インターフェイス(NIC)はuntag(アクセスポート)となっているので、ネットワークスイッチやルータなどでuntag vlan(トランクポート)を設定したインターフェイスと直接繋いでも、通信を行うことはできません。

今回はWindowsパソコンのNICにvlanIDを設定し、tag vlanのインターフェイスにする設定方法のコマンドを解説します。

設定を変更するNICによって設定方法が異なるので、PCに搭載されている有線インターフェイスのNICが「Intel」の場合と「Realtek」の場合2パターン解説します。

PCのインターフェイスをtag vlanに変更 コントロールパネルから行う方法

コマンドを使用せずに手動で設定変更を行う場合、下記が大まかな流れです。

  1. コントロールパネルより[ネットワークとインターネット]を開く
  2. [ネットワークと共有センター]より[アダプターの設定の変更]をクリック
  3. [構成するイーサネットアダプター]を右クリック
  4. [プロパティ]を選択
  5. [インターネットプロトコル バージョン 4 (TCP/IPv4)]をダブルクリック
  6. [プロパティ] より[IPv4 プロパティ] ウィンドウを開く
  7. [詳細]をクリック
  8. 「IP 設定」タブの下にある「追加」ボタンをクリック
  9. [プロパティ]のドロップダウンメニューより[802.1Q VLAN ID]を選択
  10. [値]に設定するVLAN IDを入力
  11. 「OK」をクリック

IntelのNICをtag vlanにするPowerShellスクリプト

PowerShellを使用してIntelのNICをtag vlanにする場合、下記のようにコマンド入力します。

$adapterName = "[NWアダプタの名前]"

$adapterIndex = (Get-NetAdapter | Where-Object {$_.InterfaceDescription -eq $adapterName}).ifIndex

$vlanID = [設定するvlanID]

Set-NetAdapterAdvancedProperty -Name $adapterName -DisplayName "802.1Q VLAN Tagging" -DisplayValue "Enabled"

Set-NetAdapterAdvancedProperty -Name $adapterName -DisplayName "Adapters VLAN ID" -DisplayValue "4095"

New-NetAdapterVlan -Name $adapterName -Id $vlanID -Trunk 1

Restart-NetAdapter -InterfaceIndex $adapterIndex

上記7行の内、ご利用の環境に合わせて変更する点は「1行目」の[NWアダプタの名前]と「3行目」のvlanIDのみです。

NWアダプタは[Intel(R) Ethernet Connection I219-V]などの名称のことです。

不明な場合は「コントロールパネル>ネットワークとインターネット>ネットワークと共有センター>アダプターの設定の変更」より確認できます。コマンドの場合は[Get-NetAdapter]にて確認できます。

vlanIDは自身がPCのインターフェイスに設定したいvlanIDを設定します。

下記がコマンドの簡単な解説です。

  • 1行目:vlanを設定するネットワークアダプタを指定
  • 2行目:ネットワークアダプタのインデックス番号を取得
  • 3行目:VLAN IDを指定
  • 4行目:タグVLAN(802.1Q)を有効
  • 5行目:トランクモード(4095)を有効
  • 6行目:VLAN IDを設定
  • 7行目:ネットワークアダプタ再起動(ここで設定が適応)

このスクリプトはPowerShellを管理者として実行している必要があります。

RealtekのNICをtag vlanにするPowerShellスクリプト

PowerShellを使用してRealtekのNICをtag vlanにする場合、下記のようにコマンド入力します。

Enable-NetAdapterAdvancedProperty -Name "[NWアダプタの名前]" -DisplayName "Priority & VLAN"

Set-NetAdapterAdvancedProperty -Name "[NWアダプタの名前]" -DisplayName "Priority & VLAN" -DisplayValue "Enable VLAN Tagging"

New-NetLbfoTeam -Name "Team1" -TeamMembers "[NWアダプタの名前]" -TeamingMode Static -LoadBalancingAlgorithm HyperVPort

New-Vlan -InterfaceAlias "Team1" -VlanId [設定するvlanID]

上記4行の内、ご利用の環境に合わせて変更する点は「1,2,3行目」の[NWアダプタの名前]と「4行目」のvlanIDです。こちらも同じくコントロールパネルもしくは、[Get-NetAdapter]コマンドにて確認できます。

こちらのスクリプトもPowerShellを管理者として実行している必要があります。

下記がコマンドの簡単な解説です。

  • 1行目:NICのVLAN機能を有効にする
  • 2行目:NICのVLANタグ機能を有効にする
  • 3行目:NICをチーム化する
  • 4行目:VLAN ID 10のVLANを作成する

ちなみに上記コマンドはWindows Server 2012以降のOSでサポートされています。

NICがVLAN機能をサポートしていない場合もあるので、ご確認ください。[Realtek]