我在同一个服务器(Linux)中有 2 个域。(IP 地址仅供参考)
服务器:192.168.1.20 域1:server1.example.com 域2:server2.example.com
cat /etc/resolv.conf
# Generated by NetworkManager
search example.com
nameserver 192.168.1.3
nameserver 192.168.1.2
cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
在我的 DNS 服务器(绑定)中,我有:
$TTL 3D
1.168.192.in-addr.arpa. IN SOA ns1.example.com. root.example.com. (
2007082126 ; Serial Number
10800 ; Refresh after 3 hours
3600 ; Retry after 1 hour
604800 ; Expire after 1 week
86400 ) ; Minimum TTL of 1 day
IN NS ns1.example.com.
20 IN PTR server1.example.com.
20 IN PTR server2.example.com.
现在,外部一些服务器无法解析server2.example.com地址,但可以解析server1。
$host server2.example.com
Host server2.example.com not found: 3(NXDOMAIN)
$host server1.example.com
Host server1.example.com has address 192.168.1.20
当我使用 IP 地址时:
$host 192.168.1.20
20.1.168.192.in-addr.arpa domain name pointer server1.example.com.
20.1.168.192.in-addr.arpa domain name pointer server2.example.com.
当我使用 dig 命令时:
$ dig server2.example.com
; <<>> DiG 9.8.1-P1 <<>> server2.example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 5549
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;server2.example.com. IN A
;; AUTHORITY SECTION:
example.com. 401 IN SOA ns1.example.com. root.example.com. 2007111668 28800 7200 2419200 86400
;; Query time: 2 msec
使用 google dns 进行 dig 命令
; <<>> DiG 9.8.1-P1 <<>> @8.8.8.8 server2.example.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58750
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;server2.example.com. IN A
;; ANSWER SECTION:
server2.example.com. 21599 IN A 192.168.1.20
;; Query time: 93 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
什么问题导致某些位置无法访问 server2.example.com 并出现 NXDOMAIN 错误?
提前致谢
答案1
您只发布了反向区域“1.168.192.in-addr.arpa”。检查您的“example.com”区域文件并确保 A 记录存在会很有用。
发布区域文件的摘录会有所帮助。了解实际域将有助于排除故障。您可能有一些不分享它的好理由。
注意:(如果您已经明白的话,抱歉)
- 正向 DNS 记录是当您查找主机名并且响应是 IP 时使用的。记录。
反向 DNS 记录是指您查找 IP 并且响应是主机名。
当给定 IP 时,“host”命令将自动反向查找。使用“dig”查找 IP 时,您需要使用“-x”选项(即“dig -x 192.168.1.1”)。
关于有多个名称指向同一个 IP。不建议有多个 PTR 记录指向同一个 IP。
https://en.wikipedia.org/wiki/Reverse_DNS_lookup
理想情况下,每个 IP 应有一个正向 (A) 和一个反向 (PTR)。您可以在一台服务器上拥有两个 IP,如果您运行两个独立的服务,这可能是最干净的方式。显然,在处理公共 IP 时,您通常没有这种奢侈。
人们经常使用 CNAME 记录来让多个名称指向同一个 IP。CNAME 本质上是指向另一个名称的指针。例如:
example.org 区域
服务器1 在 192.168.1.20
server2 CNAME server1.example.org。
1.168.192.in-addr.arpa.区域
20 IN PTR server1.example.org。