Samba 錯誤:在子網路 x 上查詢名稱 x 時收到多個回應

Samba 錯誤:在子網路 x 上查詢名稱 x 時收到多個回應

我的一台 Linux 伺服器上每 5 分鐘就會收到此錯誤。本例中的名稱不是主機名,而是我在兩台伺服器的 smb.conf 檔案中設定的工作群組名稱。我不知道為什麼它一直這樣做,我唯一的想法(作為 Windows 管理員)是第二個伺服器正在嘗試成為主瀏覽器或其他東西,並且在解析工作組名稱時會在第一個伺服器前面得到回复已開啟。這可以解釋為什麼其他伺服器在其日誌中沒有顯示錯誤。

兩個系統都有靜態配置的 IP 和包含網域和名稱伺服器條目的 resolv.conf。

但這讓我想知道:既然是 nmbd 來做這件事,我在 SMB3.1 Win10 網路中還真的需要它嗎?或者我們永遠無法擺脫 NETBIOS 嗎?

答案1

但這讓我想知道:既然是 nmbd 來做這件事,我在 SMB3.1 Win10 網路中還真的需要它嗎?或者我們永遠無法擺脫 NETBIOS 嗎?

nmbd 的功能(瀏覽和 NBNS)有總是對於現代客戶端(Win2000+)來說是可選的。最後一個在實際 SMB 連線之前故意發送 NetBIOS 資料報查詢的系統是 Windows 98(或可能是 Windows ME)。

因此,您可以透過IP 位址(或DNS 名稱)連線至smbd 服務,並使用您喜歡的任何SMB/CIFS 版本,無論是透過連接埠139 透過NetBIOS 會話的SMBv1,或是透過連接埠445 透過原始TCP 的SMBv3.1 ,而無需正在運行 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/
特別是最後一句話

如果你是獨立做的,那你應該要有本地主控=否,域主機 = 否首選大師 = 否。也禁用所有獲勝的東西。我認為你所需要的只是工作小組 = WORKGROUP

但是,我不使用 NT 網域登入。實際上我只使用工作組。 「首選主人=否」是我必須改變的。我在一台主機上將其設為“是”。變更為“否”並重新啟動 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

接下來,重新啟動 Samba 的 NetBIOS 伺服器部分:

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"

之後,上述訊息應該停止。

相關內容