Нет интернета на виртуальной машине Hyper-V: настройка Virtual Switch
Симптомы отсутствия сети в Hyper-V
После создания и установки новой виртуальной машины на Hyper-V (Windows или Linux) внутри гостевой ОС горит значок «Нет подключения к интернету», не выдается IP-адрес или адаптер находится в статусе «Неопознанная сеть».
Шаг 1. Разница между тремя типами коммутаторов Hyper-V
- Внешний (External): Связывает ВМ с физической сетевой картой хоста. Виртуальная машина получает собственный IP-адрес от вашего офисного роутера и имеет прямой доступ в интернет. (Рекомендуется в 90% случаев).
- Внутренний (Internal): Создает изолированную сеть только между хост-сервером и виртуальными машинами (интернета на ВМ нет без настройки NAT).
- Частный (Private): Виртуальные машины видят только друг друга. Хост-сервер и интернет им недоступны.
Шаг 2. Создание внешнего коммутатора (External Switch)
- Откройте Диспетчер Hyper-V (virtmgmt.msc).
- В правой панели действий нажмите Диспетчер виртуальных коммутаторов (Virtual Switch Manager).
- Выберите Создать виртуальный сетевой коммутатор → тип Внешний (External) → кнопка Создать.
- Задайте имя (например:
External-Internet). - В типе подключения выберите вашу реальную физическую сетевую карту (Ethernet или Wi-Fi).
- Поставьте галочку: «Разрешить операционной системе совместное использование этого сетевого адаптера».
- Нажмите Применить и ОК.
Шаг 3. Подключение созданного коммутатора к виртуальной машине
- Кликните правой кнопкой мыши по виртуальной машине → Параметры (Settings).
- В левом списке найдите Сетевой адаптер (Network Adapter).
- В выпадающем списке Виртуальный коммутатор выберите созданный
External-Internet. - Нажмите Применить → ОК. Сеть на ВМ появится мгновенно!
Частые вопросы (FAQ)
Почему при создании внешнего коммутатора на секунду рвется интернет на хост-сервере?
Это нормальное поведение: Hyper-V перенастраивает физический сетевой адаптер в режим сетевого моста (Virtual Bridge), кратковременно перезапуская стек TCP/IP.
Как настроить интернет через Внутренний (Internal) коммутатор с помощью NAT?
Используйте PowerShell: New-VMSwitch -Name 'NATSwitch' -SwitchType Internal, затем назначьте IP шлюза: New-NetIPAddress -IPAddress 192.168.100.1 -PrefixLength 24 -InterfaceAlias 'vEthernet (NATSwitch)', и включите трансляцию: New-NetNat -Name 'HyperVNAT' -InternalIPInterfaceAddressPrefix '192.168.100.0/24'.
Что делать, если в Linux ВМ сеть не поднимается даже с внешним свитчем?
В Linux выполните команду 'sudo dhclient' или настройте файл Netplan (/etc/netplan/*.yaml) на автоматическое получение адреса по DHCP (dhcp4: yes).
Что такое 'Статический MAC-адрес' в свойствах адаптера Hyper-V?
Это фиксация физического адреса виртуальной карты, чтобы роутер или DHCP-сервер всегда выдавал этой ВМ один и тот же постоянный IP-адрес.