Мой хост Hyper-V — Windows 10 Enterprise x64. У меня запущена только одна гостевая система: archlinux.
Гость подключен ко всем сетевым картам:
- Wi-Fi
- Ethernet (физический)
Иногда я подключаюсь к гостевой системе по SSH либо с хостовой системы, либо с любого другого ПК в моей локальной сети. Ни один ПК в моей локальной сети не имеет статического IP, включая гостевую систему.
Проблема в том, что после загрузки хоста (и, соответственно, загрузки гостя) IP гостя устанавливается динамически и неизвестен. Только после подключения к гостю и выполнения ip addr
я могу использовать IP-адрес для SSH-подключений ( [email protected].*
).
Я хочу получить доступ к гостевой системепо имени хостачтобы мне не приходилось каждый раз получать IP. Вот в чем проблема:
Допустим, гостевой системе archlinux был назначен IP 192.168.0.24
. Имя хоста arch настроено как Hyper-al
. Я могу пинговать каждый ПК (Windows) в моей сети по имени хоста (например ping DESKTOP-XXXXX
) и IP. Пингование гостевой системы по ее IP работает нормально. Однако имя хоста Hyper-al
не разрешается.
Так что когда я, например, пытаюсь подключиться к гостю с помощью PuTTY, я могу сделать это просто отлично с IP. Однако когда я пытаюсь с именем хоста, оно не разрешается. Имя хоста правильно настроено в arch в обоих /etc/hostname
и /etc/hosts
распознается, например, PuTTYпослевход в систему с использованием IP.
Как мне получить доступ к гостевой системе Arch по имени хоста? У меня это получилось с гостевыми системами Ubuntu Server, так что я думаю, что это должно сработать.
решение1
Для тех, кто использует Ubuntu, вот инструкции, которые сработали у меня.
Сначала установите Samba,
sudo apt-get install samba
Во-вторых, настройте желаемое имя хоста (этоможетотличаться от фактического имени хоста Ubuntu)
Отредактируйте файл конфигурации Samda,sudo vi /etc/samba/smb.conf
Под строкой, содержащей workgroup = WORKGROUP
добавьте новую строку сnetbios name = NameOfHost
Наконец, перезапустите samba.
systemctl restart smbd
решение2
Archlinux необходим Samba для трансляции имени хоста с использованием протокола NetBIOS, который используют клиенты Windows.
Установите и настройте samba в гостевой системе:
pacman -Sy samba
nano /etc/samba/smb.conf
помещать
workgroup = WORKGROUP
netbios name = Hyper-al
WORKGROUP
является значением по умолчанию и достаточным, если гостю не нужно присоединяться к рабочей группе.
Включить службы:
systemctl enable smbd.service
systemctl enable nmbd.service
Перезагрузить.