我了解您不应将 MX 记录直接指向IP 地址,而应将其指向A记录,而该记录又指向您的邮件服务器的 IP 地址。
但是,原则上,为什么需要这样做?
domain-name-system email-server a-record ip-address mx-record
我dig xkcd.com,我得到了这样的东西:
; <<>> DiG 9.9.5-3ubuntu0.1-Ubuntu <<>> xkcd.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 52538
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 5
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;xkcd.com. IN A
;; ANSWER SECTION:
xkcd.com. 769 IN A 107.6.106.82
;; AUTHORITY SECTION:
xkcd.com. 87784 IN NS dns3.p03.nsone.net.
xkcd.com. 87784 IN NS dns1.p03.nsone.net.
xkcd.com. 87784 IN NS dns2.p03.nsone.net. …Run Code Online (Sandbox Code Playgroud) 在我的 nginx 配置文件之一中sites-available,我可以指定服务器名称别名,如下所示:
server_name example.com www.example.com;
Run Code Online (Sandbox Code Playgroud)
如果我有一个 Apache 服务器,我可以使用ServerName和执行类似的操作ServerAlias:
ServerName example.com
ServerAlias www.example.com
Run Code Online (Sandbox Code Playgroud)
我还在CNAME我的区域文件中指定了一条记录:
www.example.com. 1800 IN CNAME example.com.
Run Code Online (Sandbox Code Playgroud)
我想要www.example.com并example.com提供相同的内容。由于我有CNAME记录,无论如何www.example.com都会指向所有example.com记录,因此不需要别名。争论也可以反过来说CNAME不需要记录。
我的 Web 服务器(nginx 或 Apache)中的别名和 CNAME 记录是否多余?如果是这样,我应该摆脱其中一个吗?如果有,是哪一个?
当我运行时ping google.com,我得到一个ttl值55:
64 bytes from 173.194.127.103: icmp_seq=68 ttl=55 time=16.4 ms
Run Code Online (Sandbox Code Playgroud)
当我运行时dig google.com @ns1.google.com.,它的TTL值为300。
google.com. 300 IN A 173.194.127.34
Run Code Online (Sandbox Code Playgroud)
为什么我会得到两个不同的值TTL,哪个值在什么情况下是相关的?
dig ×2
ttl ×2
a-record ×1
alias ×1
apache-2.2 ×1
cache ×1
cname-record ×1
email-server ×1
ip ×1
ip-address ×1
mx-record ×1
networking ×1
nginx ×1
ping ×1