Гайд: Неопознанная сеть (Unidentified Network) на виртуальной машине Hyper-V
Архитектура работы vSwitch и службы NLA
Проблема Неопознанной сети (Unidentified Network) в виртуальных машинах Hyper-V возникает, когда служба Network Location Awareness (NLA) гостевой ОС не может определить сетевой профиль (Domain, Private, Public). На уровне архитектуры Hyper-V это означает, что пакеты (в частности, ARP, DHCP Discover или DNS-запросы) блокируются на уровне драйвера NDIS фильтра (vmswitch.sys), либо физический коммутатор отбрасывает тегированный трафик.
Бизнес-риски изоляции ВМ
Перевод сети в профиль "Public" автоматически включает жесткие правила Windows Firewall, блокируя RDP, WinRM, SMB и RPC. Это приводит к разрыву репликации Active Directory (угроза USN Rollback для DC), остановке пулов IIS и отказу систем резервного копирования (Veeam/DPM не могут достучаться до VSS-агента).
Таблица: Топология причин Unidentified Network
| Уровень OSI | Компонент Hyper-V | Техническая причина сбоя |
|---|---|---|
| Уровень 2 (L2) | Virtual Switch / vNIC | Дублирование MAC-адресов в пуле Hyper-V или отбрасывание фреймов из-за бага аппаратной разгрузки VMQ. |
| Уровень 2 (VLAN) | Hyper-V Port | Несоответствие VLAN ID на vNIC виртуальной машины и настроек Trunk-порта физического коммутатора. |
| Уровень 3 (L3) | Гостевая ОС (TCP/IP) | Отсутствие ответа от DHCP-сервера (ВМ получает APIPA адрес 169.254.x.x) или недоступность шлюза по умолчанию. |
Сценарии диагностики и восстановления сети
Сценарий 1: Отключение Virtual Machine Queue (VMQ) на хосте
Аппаратная разгрузка VMQ на сетевых картах Broadcom/Intel (особенно на чипах 1Gbps) часто приводит к тихой потере пакетов (Drop) на уровне vSwitch, из-за чего ВМ перестает видеть шлюз. Отключите VMQ для виртуального адаптера.
Проверка статуса VMQ на хосте Hyper-V
Get-NetAdapterVmq
Отключение VMQ для конкретной ВМ
Set-VMNetworkAdapter -VMName "Имя_ВМ" -VmqWeight 0
Глобальное отключение VMQ на физическом адаптере хоста (при багах в драйвере)
Disable-NetAdapterVmq -Name "Ethernet 1"Сценарий 2: Пересоздание виртуального сетевого адаптера (vNIC)
Если конфигурация vNIC повреждена в WMI-репозитории хоста (часто после сбоев Live Migration или нештатной перезагрузки), самое надежное решение — удалить и добавить адаптер заново, назначив ему статический MAC-адрес во избежание коллизий пула.
Удаление и добавление vNIC с привязкой к vSwitch и статичным MAC
Remove-VMNetworkAdapter -VMName "Имя_ВМ" -Name "Network Adapter"
Add-VMNetworkAdapter -VMName "Имя_ВМ" -SwitchName "vSwitch_LAN" -StaticMacAddress "00155D010203"Сценарий 3: Ресет стека TCP/IP внутри гостевой ОС
Подключитесь к ВМ через консоль Hyper-V (VMConnect) и выполните полный сброс сетевых параметров. Это заставит службу NLA заново инициализировать поиск шлюза и контроллера домена.
Сброс сетевого стека внутри виртуальной машины (выполнять от админа)
netsh winsock reset
netsh int ip reset
ipconfig /release
ipconfig /renew
Restart-Computer -ForceТиповые ошибки администраторов
- Служба NLA в Delayed Start: Популярный "костыль" с форумов — перевод службы Network Location Awareness в отложенный запуск. Это маскирует проблему STP-задержек на свитчах (Spanning Tree), но не решает её. Правильное решение — настройка PortFast (Edge Port) на портах физического коммутатора.
- Бездумное пересоздание vSwitch: Полное удаление виртуального коммутатора на рабочем хосте приведет к разрыву связи у ВСЕХ запущенных виртуальных машин. Диагностику нужно начинать с гостевой ОС и настроек конкретного vNIC.
- Игнорирование изоляции VLAN: Ввод правильного IP-адреса вручную при неверно настроенном параметре
VlanIdна уровне ВМ не поднимет сеть, так как Ethernet-кадры будут отбрасываться на Layer 2.
Проблемы с Unidentified Network при Live Migration указывают на рассинхронизацию таблиц MAC-адресов на коммутаторах или неверную архитектуру vSwitch. Передайте управление кластером экспертам ITSTM: мы настроим Switch Embedded Teaming (SET), оптимизируем RDMA/RoCE и обеспечим 100% отказоустойчивость вашей платформы виртуализации.
Частые вопросы (FAQ)
Почему служба NLA показывает 'Неопознанная сеть', даже если я прописал статический IP-адрес?
Службе NLA для идентификации профиля (Domain или Private) недостаточно наличия IP-адреса. Она должна успешно разрешить DNS-суффикс и получить ответ от шлюза по умолчанию по протоколу ARP. Если шлюз не пингуется на L2-уровне, профиль останется Public (Unidentified).
Как функция Virtual Machine Queue (VMQ) ломает сеть в виртуальных машинах?
VMQ распределяет входящий сетевой трафик по нескольким очередям, обрабатываемым разными ядрами процессора. В старых драйверах Broadcom/Intel алгоритмы хеширования очередей содержали баги, из-за чего пакеты, предназначенные для конкретного MAC-адреса ВМ, отправлялись в неверную очередь и отбрасывались (Drop).
Может ли технология SR-IOV вызывать ошибке неопознанной сети?
Да, если виртуальная функция (VF) SR-IOV на физической сетевой карте перестает отвечать, Hyper-V пытается выполнить Fallback — переключить трафик ВМ на стандартный программный vSwitch. Если в этот момент происходят задержки в маршрутизации, ВМ временно теряет сеть, а NLA фиксирует Unidentified Network.
Что делать, если Unidentified Network появляется только после Live Migration?
Это симптом ARP-кеширования на физических коммутаторах. После миграции MAC-адрес ВМ переезжает на другой порт свитча (другой хост). Если коммутатор медленно обновляет таблицу CAM, трафик будет уходить на старый хост. Помогает включение функции 'MAC Address Spoofing' на vNIC или принудительная отправка Gratuitous ARP.