%20%E4%B8%8A%E5%91%BD%E5%90%8D%20-%20DIG%20%E6%89%BE%E4%B8%8D%E5%88%B0%E6%B2%92%E6%9C%89%20FQDN%20%E7%9A%84%E4%B8%BB%E6%A9%9F%EF%BC%9F.png)
好吧,我是 AIX 和 Named 的新手,所以希望我只是錯過了一些簡單的東西。 :)
目標是在這個愚蠢的 Windows 工作組/AIX DNS 設定中進行順利的 DNS 查找(它最終會改變,但目前我可以進行的基礎設施更改有限),並將任何未知數轉發到 OpenDNS。
正如我現在所設定的,它“大部分”工作。但是,如果我從 Windows 電腦使用 NSLookup,它將無法解析主機名,除非我指定 FDQN。
Windows 機器上的 NSLookup:
> ts02
Server: ccserver.intranet.domainname.com
Address: 10.0.13.2
Non-authoritative answer:
Name: ts02
Address: 67.215.65.132
(67.215.65.132 是 OpenDNS。)
如果我使用 FQDN(Windows 機器)進行 NSLookup:
> ts02.intranet.domainname.com
Server: ccserver.intranet.domainname.com
Address: 10.0.13.2
Name: ts02.intranet.domainname.com
Address: 10.0.13.5
如果我從 AIX 機器本身進行 NSLookup:
# nslookup ts02
Server: ccserver
Address: 0.0.0.0
Name: ts02.intranet.domainname.com
Address: 10.0.13.5
它按預期解決。
但如果我從 AIX 伺服器挖掘:
; <<>> DiG 9.4.2-P2 <<>> ts02
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 495
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 13, ADDITIONAL: 0
;; QUESTION SECTION:
;ts02. IN A
;; ANSWER SECTION:
ts02. 0 IN A 67.215.65.132
;; AUTHORITY SECTION:
. 514925 IN NS d.root-servers.net.
. 514925 IN NS c.root-servers.net.
. 514925 IN NS g.root-servers.net.
. 514925 IN NS h.root-servers.net.
. 514925 IN NS k.root-servers.net.
. 514925 IN NS m.root-servers.net.
. 514925 IN NS b.root-servers.net.
. 514925 IN NS e.root-servers.net.
. 514925 IN NS l.root-servers.net.
. 514925 IN NS i.root-servers.net.
. 514925 IN NS a.root-servers.net.
. 514925 IN NS f.root-servers.net.
. 514925 IN NS j.root-servers.net.
;; Query time: 99 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
使用 FQDN 從 AIX 中挖掘:
; <<>> DiG 9.4.2-P2 <<>> ts02.intranet.domainname.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 269
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; QUESTION SECTION:
;ts02.intranet.domainname.com. IN A
;; ANSWER SECTION:
ts02.intranet.domainname.com. 900 IN A 10.0.13.5
;; AUTHORITY SECTION:
intranet.domainname.com. 900 IN NS ns1.intranet.domainname.com.
;; ADDITIONAL SECTION:
ns1.intranet.domainname.com. 900 IN A 10.0.13.2
;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
我的/etc/resolv.conf:
# cat resolv.conf
domain intranet.domainname.com
Nameserver 127.0.0.1
我正在用頭撞牆,所以任何想法都會受到讚賞。如果需要的話我還可以提供更多資訊...
先致謝!
更新:
好的,按照建議,我將“搜尋”添加回 resolv.conf 中:
# cat resolv.conf
domain intranet.domainname.com
search intranet.domainname.com
Nameserver 127.0.0.1
這似乎沒有任何區別。我之前曾在那裡進行過搜索,但在網上(IBM 的網站)看到如果只有一個網域則不需要它後將其刪除。我會把它留在那裡。
我還可以平往返 AIX 伺服器,以及 Windows 主機之間,無論有或沒有 FQDN,它都會如預期進行解析。
但除非我使用 FQDN,否則來自 Windows 主機的 NSLookup 仍然會失敗,包括嘗試透過常用(和現有)「ns1」別名來尋找 DNS 伺服器:
C:\>nslookup ccserver
Server: ccserver.intranet.domainname.com
Address: 10.0.13.2
Non-authoritative answer:
Name: ccserver
Address: 67.215.65.132
C:\>nslookup ns1
Server: ccserver.intranet.domainname.com
Address: 10.0.13.2
Non-authoritative answer:
Name: ns1
Address: 67.215.65.132
C:\>nslookup ccserver.intranet.domainname.com
Server: ccserver.intranet.domainname.com
Address: 10.0.13.2
Name: ccserver.intranet.domainname.com
Address: 10.0.13.2
C:\>nslookup ns1.intranet.domainname.com
Server: ccserver.intranet.domainname.com
Address: 10.0.13.2
Name: ns1.intranet.domainname.com
Address: 10.0.13.2
我沒有什麼新的想法,所以如果其他人有的話,請幫助兄弟。 :)
答案1
您不需要更新您的 resolv.conf 檔案嗎?
# cat /etc/resolv.conf
domain intranet.domainname.com
search intranet.domainname.com
Nameserver 127.0.0.1
答案2
在查找不同作業系統的類似問題時偶然發現了這一點,但它適用於此處。希望這個遲來的答案仍然對某人有幫助。
Dig 預設不使用搜尋參數/etc/resolv.conf
。您必須在命令或$HOME/.digrc
.
來自 dig 的 AIX 手冊頁:
+[no]search
Use [do not use] the search list defined by the search list or domain
directive in resolv.conf (if any). The search list is not used by default.