Ошибка Samba: получено несколько ответов на запрос в подсети x для имени x

Ошибка Samba: получено несколько ответов на запрос в подсети x для имени x

Я получаю эту ошибку каждые 5 минут на одном из моих серверов Linux. Имя в этом случае не является именем хоста, а именем рабочей группы, которое я установил в файле smb.conf обоих серверов. Я понятия не имею, почему это происходит, единственная мысль, которая у меня есть (как у администратора Windows), заключается в том, что второй сервер пытается стать главным браузером или чем-то в этом роде и после разрешения имени рабочей группы получает ответ от первого сервера, который был включен. Это объясняет, почему другой сервер не показывает ошибок в своем журнале.

Обе системы имеют статически настроенные IP-адреса и файл resolv.conf, содержащий записи домена и сервера имен.

Но это заставляет меня задуматься: раз это делает nmbd, то мне это все еще нужно в сети SMB3.1 Win10? Или мы никогда не сможем избавиться от NETBIOS?

решение1

Но это заставляет меня задуматься: раз это делает nmbd, то мне это все еще нужно в сети SMB3.1 Win10? Или мы никогда не сможем избавиться от NETBIOS?

Функции nmbd (просмотр и NBNS) имеютвсегданеобязательно для современных клиентов (Win2000+). Последней системой, которая намеренно отправляла запрос датаграммы NetBIOS перед фактическим подключением SMB, была Windows 98 (или, возможно, Windows ME).

Таким образом, вы можете подключиться к службе smbd по IP-адресу (или DNS-имени) и использовать любую версию SMB/CIFS, которая вам нравится, будь то SMBv1 через сеанс NetBIOS через порт 139 или SMBv3.1 через сырой TCP через порт 445, без запуска nmbd.

решение2

Несколько ответов могут быть получены из-за хоста в той же физической сети, которая имеет два интерфейса. Затем широковещательный запрос отвечает им обоим от вашего nmbd. Смотрите этот пост 17-летней давности: query_name_response: Получено несколько ответов.

Проверьте также файл smb.confна предмет interfacesпараметра, возможно, в нем указано не более одного интерфейса.

решение3

Для меня ответ можно найти здесь:https://forums.freebsd.org/threads/samba-multiple-2-responses-two-freebsd-systems-on-my-network.65759/
И особенно последнее предложение

Если вы работаете автономно, то вам следует иметьлокальный мастер = нет,хозяин домена = нетипредпочтительный мастер = нет. Отключите все wins-вещи тоже. Я думаю, все, что вам нужно, это workgroup = WORKGROUP

Однако я не использую домен NT для входа. На самом деле я не использую ничего, кроме рабочей группы. Мне пришлось изменить "предпочтительный мастер = нет". Я установил его на "да" на 1 хосте. Изменил на "нет" и перезапустил samba. После этого все продолжало работать, и сообщения прекратились.

решение4

Добавьте/обновите следующие строки в smb.conf в [global]разделе:

[global]
bind interfaces only = yes
interfaces = 127.0.0.0/8 eth0  # -> subnet where samba serwer is
smb ports = 139
prefered master = yes

Далее перезапустите серверную часть NetBIOS Samba:

sudo systemctl restart nmbd
sudo systemctl status nmbd

После перезапуска в файлах журнала вы должны увидеть:

Samba name server "xxx" is now a local master browser for workgroup WORKGROUP on subnet "IP server Samba"

После этого указанные сообщения должны прекратиться.

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