將 Windows 設定為在未連接到網域控制站時透過 DNS 解析所有主機名稱?

將 Windows 設定為在未連接到網域控制站時透過 DNS 解析所有主機名稱?

環境是一個具有單一路由器的專用網絡,使用 DD-WRT 的 dnsmasq 來解析名稱並進行快取。透過 DNS 解析主機效果很好:

挖掘 +short @192.168.1.1 伽瑪

192.168.1.22

現在,當嘗試存取主機上的 SMB 共用或甚至只是對其執行 ping 操作時,Windows 甚至不會嘗試透過 DNS 解析名稱,而是請求 LLMNR 和 NBNS 解析,這兩種情況都是我想避免的。

這是 ping 主機時 Wireshark 的輸出伽瑪,請注意沒有任何 DNS 解析:

0.000000 192.168.1.11 -> 224.0.0.252  LLMNR 65 Standard query 0x64a0  A gamma
0.099582 192.168.1.11 -> 224.0.0.252  LLMNR 65 Standard query 0x64a0  A gamma
0.303237 192.168.1.11 -> 192.168.1.255 NBNS 92 Name query NB GAMMA<00>
1.052808 192.168.1.11 -> 192.168.1.255 NBNS 92 Name query NB GAMMA<00>
1.802938 192.168.1.11 -> 192.168.1.255 NBNS 92 Name query NB GAMMA<00>

另一方面,使用 FQDN ping 主機位址,例如局部伽瑪,始終使用 DNS:

0.426289 192.168.1.11 -> 192.168.1.1  DNS 71 Standard query 0xe319  A gamma.local
0.427027 192.168.1.1  -> 192.168.1.11 DNS 87 Standard query response 0xe319  A 192.168.1.22

這是我的客戶端配置的一些輸出:

netsh dnsclient 顯示狀態

Name Resolution Policy Table Options
--------------------------------------------------------------------

Query Failure Behavior                : Always fall back to LLMNR and
                                        NetBIOS for any kinds of errors

Query Resolution Behavior             : Resolve both IPv4 and IPv6
                                        addresses for names

Network Location Behavior             : Never use Direct Access settings

Machine Location                      : Outside corporate network

Direct Access Settings                : Not Configured

DNSSEC Settings                       : Not Configured

ipconfig /全部

Host Name . . . . . . . . . . . . : BETA
Primary Dns Suffix  . . . . . . . :
Node Type . . . . . . . . . . . . : Hybrid
IP Routing Enabled. . . . . . . . : No
WINS Proxy Enabled. . . . . . . . : No

現在我到處尋找解決方案,但從我收集的資訊來看,Windows 僅在連接到網域控制站時執行真正的 DNS 解析。這是可以改變的嗎?也許將客戶端設定為一種模式它連接到網域控制器嗎?

到目前為止我發現的唯一解決方案是透過適配器的 DNS 配置附加 .local DNS 後綴(Windows例如發送 gamma.local 的 DNS 查詢),但是沒有辦法將 Windows 設定為始終解析類似名稱伽瑪雖然首先是 DNS?

相關內容