Linux видит имя хоста, но Windows его не видит

Linux видит имя хоста, но Windows его не видит

Я настраиваю все для вечеринки по локальной сети и хотел бы, чтобы подключение к серверу было максимально простым. На этой вечеринке будут компьютеры как с Linux, так и с Windows, поэтому он должен быть совместим с обеими ОС на сетевом уровне. Я не хочу заходить на каждый из гостевых компьютеров и менять настройки.

Я пытаюсь сделать сервер доступным под именем хоста Galadhriel-Server с помощью маршрутизатора DD-WRT. Вот информация для входа:

MAC Address: 08:00:27:0d:29:e7
Host Name: Galadhriel-Server
IP Address: 192.168.1.2
Client Lease Time: 1500

Маршрутизатор может подтвердить, что Galadhriel-Server подключен к IP-адресу выше с помощью DHCP, и пинги с других машин Linux также работают. Я также могу подключиться к Galadhriel-Server с помощью веб-браузера на Linux.

С другой стороны, Windows отказывается подключаться, пока я не введу IP-адрес, сообщая, что сервер не может быть найден.

Информация о подключении, предоставленная Windows:

IPv4 Address: 192.168.1.52
IPv4 Subnet Mask: 255.255.255.0
IPv4 Default Gateway: 192.168.1.1
IPv4 DHCP Server: 192.168.1.1
IPv4 DNS Server: 192.168.1.1

Информация о подключении, предоставленная Linux-машиной:

ubuntu@ubuntu:~$ ifconfig
eth0      Link encap:Ethernet  HWaddr 08:00:27:c8:f7:ff  
          inet addr:192.168.1.57  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fec8:f7ff/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2461 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1553 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:1734014 (1.7 MB)  TX bytes:133134 (133.1 KB)

Информация о подключении предоставлена ​​Galadhriel-Server:

david@Galadhriel-Server:~$ ifconfig
eth0      Link encap:Ethernet  HWaddr 08:00:27:0d:29:e7  
          inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe0d:29e7/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1654 errors:0 dropped:0 overruns:0 frame:0
          TX packets:503 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:167251 (167.2 KB)  TX bytes:73760 (73.7 KB)

Спасибо вам за помощь!

решение1

Чтобы компьютеры могли разрешать имена хостов DNS через DNS, все они должны быть настроены с одним и тем же DNS-суффиксом, и все они должны быть настроены на использование одного и того же DNS-сервера, на котором размещен файл зоны для этого DNS-суффикса. DNS-сервер на вашем маршрутизаторе — это не более чем DNS-пересылка/резолвер. Он не размещает никаких DNS-зон, в которых ваши клиенты LAN могут регистрировать свои записи A и разрешать записи A других клиентов LAN.

Клиенты Windows Vista/7/8 должны иметь возможность разрешать имена других клиентов Windows Vista/7/8 через LLMNR, если разрешение имен DNS недоступно, при условии, что включено сетевое обнаружение.

Клиенты Windows, работающие под управлением Windows XP и более ранних версий, должны иметь возможность разрешать имена других клиентов Windows с помощью разрешения имен NetBIOS.

решение2

Вы не дали слишком много подробностей о вашей локальной сети, поэтому сложно сказать, что именно происходит. Однако, имея опыт в этом отделе (смешанные машины Linux, Mac OS и Windows в одной локальной сети), лучше всего, если все машины будут в одной подсети и все машины будут иметь одно и то же имя рабочей группы и/или домена, включая машины Linux.

Вам нужно будет задать имя рабочей группы или домена в Samba (убедитесь, что Samba и winbind, а также все остальные зависимости установлены на сервере и машинах Linux). Затем убедитесь, что все машины Windows имеют то же имя рабочей группы и/или домена, что и то, которое вы установили для сервера. Также убедитесь, что сервер или по крайней мере одна машина Windows является «главным браузером».

Обычно этого должно быть достаточно, чтобы все свести воедино. По крайней мере, для меня так. Надеюсь, так будет и для вас.

Обновлено:

Мне стало известно, что в некоторых системах Samba может быть настроена некорректно, чтобы все компьютеры могли видеть друг друга. Поэтому я добавляю следующее.

Если вы по-прежнему не видите машину Linux и машина Linux не может просматривать сеть Windows, убедитесь, что в глобальном разделе файла /etc/samba/smb.conf есть следующие параметры (введите свои собственные имена длярабочая группаиимя хостаи без угловых скобок):

workgroup = <workgroup>
netbios name = <hostname>
name resolve order = bcast host

Сохраните файл, а затем выполните следующие команды (они могут различаться в зависимости от вашей версии и дистрибутива Linux):

sudo service nmbd restart
sudo service smbd restart

Это должно решить проблему с просмотром, если в вашей конфигурации отсутствуют нужные настройки.

решение3

Ничто из этого не является конкретным решением, поэтому я начал устанавливать VPN на все свои устройства. После установки VPN на все устройства он может очень хорошо распознавать устройства.

Я начал использовать Netbird (бесплатно для 100 устройств). Ниже приведены решения с открытым исходным кодом, которые вам стоит рассмотреть.

  • NetBird
  • Хвостовая шкала
  • Нулевой уровень

Связанный контент