Назад | Перейти на главную страницу

Как получить с узла Hyper-V 2008 R2 с Powershell IP-адрес и Vlan ID

Я попытался взять с узла Hyper-V (Hyper-V 2012) с помощью этой команды IP-адрес:

Get-VM | select -ExpandProperty networkadapters | select vmname, ipaddress

Дело в том, что на выходе я беру только назначенные частные IP-адреса, а не общедоступные IP-адреса, которые есть у некоторых виртуальных машин. Есть идеи, почему у меня эта проблема?

Также есть ли способ получить тот же вывод и идентификатор Vlan, который у меня есть в настройках моей виртуальной машины? Чтобы получить Vlan с конкретной виртуальной машины, я могу сделать это с помощью этого

Get-VM 'Name of the VM' | Get-VMNetworkAdapterVlan | select AccessVlanId

Все это есть на Hyper-V 2012, я хочу это и для Hyper-V 2008 R2. Поэтому могут потребоваться некоторые изменения в командах.

Ненавижу просто вставлять здесь ссылки, но вам стоит изучить библиотеку Джеймса О'Нейла PowerShell для Hyper-V 2008R2. Мог бы сэкономить вам время.

pshyperv.codeplex.com

Поскольку у меня нет Hyper-V 2012 для тестирования, я могу хотя бы ответить на часть вашего вопроса, касающуюся PowerShell:

Get-VM | select -ExpandProperty networkadapters |
    Foreach-Object {
        $_ | AddMember -MemberType NoteProperty -Name VLAN -PassThru
            -Value ($_ | Get-VMNetworkAdapterVlan).AccessVlanID
    } | ft vmname, ipaddress, vlan