Fedora Linux VM на хосте Windows 10 HyperV за сетевым прокси не может получить доступ к интернету.

Вопрос или проблема

Я опубликовал этот вопрос на форумах Server Fault, но пока не получил ни ответа, надеюсь получить информацию, опубликовав его здесь.

Я настраиваю виртуальную машину Fedora с использованием HyperV на компьютере с Windows 10. Я установил ее, виртуальная машина запускается без проблем, но я не могу подключиться к Интернету с виртуальной машины через хост-компьютер.

Вот настройки:

Хост-машина:

Windows 10 enterprise 22H2

Сборка ОС: 19045.5011

Пакет функций Windows Experience 1000.19060.1000.0

HyperV Manager: v10.0.19041.1

Хост находится в корпоративной сети за прокси-сервером.

Детали ВМ:

Fedora Workstation

версия 40 (издание рабочей станции)

platform_id: platform:f40

При настройке сетевого адаптера для ВМ я следовал этому набору инструкций (я знаю, что это предназначено для использования Hyper-V для настройки виртуальной машины Windows, а не Linux, но я подумал, что если я буду следовать тем же принципам, это сработает. Кроме того, это единственное, что я смог найти, что близко к моей ситуации).

После выполнения этих инструкций я создал внутренний виртуальный коммутатор, ВМ Fedora, работающая в Hyper-V, настроена с этим коммутатором, на хост-машине есть NetIPAddress в новой NAT-сети, и я могу пинговать хост с ВМ и наоборот. Однако я не могу получить доступ к Интернету с ВМ Fedora. Открытие браузера (Firefox) в Fedora и попытка зайти в Интернет вызывает ошибку в браузере, говоря “У нас проблемы с поиском этого сайта”.

Я не знаю, может ли это быть связано с тем, что хост-компьютер находится в рабочей сети и, как следствие, за прокси-сервером, или есть что-то, что я неправильно настроил в ВМ Fedora. Судя по всему, что я читал о NAT-сетях с такими ВМ, пакеты должны маршрутизироваться с ВМ на шлюз по умолчанию (в данном случае IP-адрес, который я настроил для своей хост-машины в NAT-сети), а затем пакеты должны выходить из хост-машины.

Вот вывод ipconfig /all на моей хост-машине, детали нового виртуального коммутатора в красном квадрате.

Вывод ipconfig на хост-машине

А вот вывод ifconfig на ВМ Fedora:

вывод ifconfig на ВМ Fedora

Я новичок в конфигурации Linux и exhausted все свои знания, которые могу применить для устранения этой проблемы. Если кто-то сможет помочь мне выяснить, что мне нужно сделать, чтобы получить доступ к Интернету с этой ВМ Fedora, работающей в Hyper-V на моем компьютере с Windows 10, я буду очень признателен.

ИЗМЕРЕНИЕ: Я только что проверил, что с ВМ Fedora на Hyper V я могу пинговать DNS-сервер, к которому настроен хост, так что поскольку я могу пинговать внешний IP-адрес, это заставляет меня думать, что либо DNS не настроен правильно на ВМ Fedora, либо что-то неправильно настроено с тем, как хост должен маршрутизировать пакеты обратно в ВМ. Изначально я настроил шлюз по умолчанию как DNS-сервер, что не сработало, поэтому я попытался настроить DNS-сервер на IP-адрес DNS-сервера, на который указывает хост. Ни одно из них не сработало. Кроме того, значок сети в правом верхнем углу имеет вопросительный знак.

Ответ или решение

Проблема с отсутствием доступа в интернет для виртуальной машины (VM) Fedora, работающей на хосте Windows 10 с установленным Hyper-V и находящейся за прокси-сервером, может быть вызвана несколькими факторами. Давайте рассмотрим, как можно решить эту проблему, детально анализируя настройки и конфигурационные элементы.

1. Понимание конфигурации сети

Согласно вашему описанию, вы создали внутренний виртуальный коммутатор (Internal Virtual Switch) и настроили NAT (Network Address Translation). Важно убедиться, что ваш виртуальный адаптер сети правильно подключен к этому коммутатору. Проверьте настройки виртуальной машины и убедитесь, что она использует именно этот коммутатор.

2. Настройка NAT для виртуальной машины

Для корректной работы NAT необходимо, чтобы хост компьютер выполнял роль маршрутизатора. Настроим NAT следующим образом:

  1. Запустите PowerShell с правами администратора и выполните следующие команды:

    # Создание NAT сети
    New-NetNat -Name "NATNetwork" -InternalIPInterfaceAddressPrefix "192.168.100.0/24"
    
    # Настройка IP-адреса для NAT
    New-NetIPAddress -IPAddress "192.168.100.1" -PrefixLength 24 -InterfaceAlias "vEthernet (NATNetwork)"

    Убедитесь, что "192.168.100.0/24" подходит для ваших нужд, и измените его, если это необходимо.

3. Проверка маршрутизации

На Fedora VM проверьте, правильно ли настроены маршруты и используется ли правильный шлюз. Введите команду:

ip route

Вы должны увидеть маршрут, указывающий на IP-адрес NAT, например:

default via 192.168.100.1 dev eth0

Если маршрута по умолчанию нет, добавьте его:

sudo ip route add default via 192.168.100.1

4. Настройка DNS

Как вы указали, у вас проблемы с разрешением имён. Убедитесь, что файл /etc/resolv.conf содержит корректные DNS-серверы. Например:

nameserver 8.8.8.8
nameserver 8.8.4.4

Или используйте DNS-серверы вашей компании, если они предоставлены.

5. Проверка прокси

Так как ваш хост находится за прокси-сервером, возможно, вам необходимо настроить прокси и на виртуальной машине. Вы можете добавить настройки прокси в переменные окружения:

export http_proxy="http://proxy.company.com:port"
export https_proxy="http://proxy.company.com:port"

Не забудьте заменить proxy.company.com и port на фактические данные вашего прокси-сервера.

6. Проверка соединения

После внесения вышеуказанных изменений, проверьте, доступен ли интернет с помощью пинга:

ping google.com

Если всё настроено правильно, вы должны получать ответы от сервера.

7. Устранение неполадок

Если проблема не решена, выполните следующие команды диагностики:

  • Проверьте настройки сетевого интерфейса с помощью ifconfig или ip addr.

  • Убедитесь, что службы сети запущены на Fedora:

    systemctl status NetworkManager
  • Перезагрузите сетевой интерфейс:

    sudo systemctl restart NetworkManager

Заключение

С учетом вышеизложенного, проблема с доступом в интернет на виртуальной машине Fedora в Hyper-V на Windows 10 может быть решена путем проверки конфигураций сети, настройки NAT, правильного указания маршрутов и DNS, а также учёта настроек прокси-сервера. При выполнении всех шагов, указанных в этом гайде, вы должны получить стабильный доступ в интернет на вашей Fedora VM. Если проблема сохраняется, могут потребоваться более глубокие исследования конфигураций вашего прокси-сервера и сетевой инфраструктуры.

Оцените материал
Добавить комментарий

Капча загружается...