為什麼阻止 NetBios 數據包會影響 SMB3?
問題
為什麼 NetBios 過濾會影響 SMB3/連接到埠 445 的能力?
語境
一些使用者(包括我自己)在從其家庭連接訪問託管在 Azure Files 中的文件共享時遇到問題,收到以下錯誤。
Windows 無法訪問 \myStorageAccount.file.core.windows.net\my-share\
檢查名稱的拼寫。否則,您的網路可能有問題。要嘗試辨識和解決網路問題,請點擊診斷。
錯誤程式碼:0x80070035
找不到網路路徑
執行線上埠測試
myStorageAccount.file.core.windows.net
顯示埠 445 已打開。從我的本地機器執行
Test-NetConnection -ComputerName 'myStorageAccountName.file.core.windows.net' -port 445
會失敗;儘管我的本地設備的防火牆軟體沒有阻止連接。最終我發現原因出
NetBios filter
在我的路由器上;啟用此功能後,與 Azure 文件共享上的埠 445 的連接失敗;禁用它所有工作。我的路由器文件還提到此過濾器會影響 SMB:
啟用 NetBIOS 過濾器
出於安全原因,FRITZ!Box 中的 NetBIOS 過濾器預設開啟。它會阻止 NetBIOS 數據包,這些數據包通常不需要在 Internet 中進行通信。僅當您使用必須與 Internet 交換 NetBIOS 數據包的應用程序時才禁用此過濾器。例如,SMB 訪問 Strato HiDrive 就是這種情況。
我不確定這是否歸結為路由器過濾邏輯中的一些錯誤,或者是否還有更多事情發生。
如果相關,我們啟用了 RBAC 過濾(例如,我的帳戶
Storage File Data SMB Share Elevated Contributor
分配了角色),並在我們的文件共享上啟用了 AD ACLS(如John Savill 影片中所述)……儘管我認為那些不應該用於簡單的埠測試?
如前所述,此規則的命名並不正確。雖然埠 445 可用於 NetBios,但它也可用於基於 TCP 的 SMB,因此 SMB 無法正常工作。您將需要打開它以允許到 Azure 文件的流量。