我在 Fortigate 60D 上启动了 DNS 服务器。
但是,它并没有dig
给我我定义的所有 A 记录(大约 80 条),而是只显示以下内容(请注意,没有任何以下形式的行
local. 172719 IN A 192.168.1.97
):
$ dig local all
; <<>> DiG 9.9.4-RedHat-9.9.4-72.el7 <<>> local all
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 15919
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;local. IN A
;; AUTHORITY SECTION:
. 1293 IN SOA a.root-servers.net. nstld.verisign-grs.com. 2019012302 1800 900 604800 86400
;; Query time: 11 msec
;; SERVER: 192.168.1.99#53(192.168.1.99)
;; WHEN: Wed Jan 23 13:52:42 PST 2019
;; MSG SIZE rcvd: 109
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 26634
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;all. IN A
;; AUTHORITY SECTION:
. 3600 IN SOA a.root-servers.net. nstld.verisign-grs.com. 2019012302 1800 900 604800 86400
;; Query time: 21 msec
;; SERVER: 192.168.1.99#53(192.168.1.99)
;; WHEN: Wed Jan 23 13:52:42 PST 2019
;; MSG SIZE rcvd: 107
我期望发生类似的事情:
;; ANSWER SECTION:
local. 86400 IN NS dns.local.
local. 86400 IN A 192.168.1.97
local. 86400 IN A 192.168.1.98
您能建议一种让 dig 显示 A 记录的方法吗?
答案1
dig local A
这将仅请求域“本地”的 A 记录。我通常会指定一个服务器 -
dig @server.name domain.name A
答案2
以下是解决方法A 记录,但总比没有好:
(echo "diag test app dnsproxy 8"; echo "exit") | ssh -tt <user>@<Fortigate IP>
以上将显示全部A 记录在 shell 线上。