Domain-Name-System

子域沒有解析

  • January 24, 2015

我有一個帶有多個站點的 Ubuntu+Virtualmin 伺服器。網站執行良好,但出於某種原因“www”。和其他子域沒有解析。

我的伺服器 IP 是 107.170.xxx.xx。如果我將此記錄添加到本地機器上的 /etc/hosts 中,我可以訪問 www.site.com,因此 Apache2 可以正常工作:

107.170.xxx.xx www.site.com 

nslookup:

> site.com
Server:     200.30.xxx.xx
Address:    200.30.xxx.xx#53
Non-authoritative answer:
Name:   site.com
Address: 107.170.xxx.xx

> www.site.com
Server:     200.30.xxx.xx
Address:    200.30.xxx.xx#53

** server can't find www.site.com: NXDOMAIN

所有站點的 BIND9 記錄相似(我嘗試了 CNAME,但沒有運氣):

$ttl 38400
@   IN  SOA host-domain.com. root.host-domain.com. (
           140xxx7595
           10800
           3600
           604800
           38400 )
@   IN  NS  host-domain.com.
site.com.   IN  A   107.170.xxx.xx
www.site.com.   IN  A   107.170.xxx.xx
ftp.site.com.   IN  A   107.170.xxx.xx
m.site.com. IN  A   107.170.xxx.xx
localhost.site.com. IN  A   127.0.0.1
webmail.site.com.   IN  A   107.170.xxx.xx
admin.site.com. IN  A   107.170.xxx.xx
mail.site.com.  IN  A   107.170.xxx.xx
site.com.   IN  MX  5 mail.site.com.
site.com.   IN  TXT "v=spf1 a mx a:site.com ip4:107.170.xxx.xx ?all"

嗯,問題很簡單。我的網站託管在 Digital Ocean 上,我的 DNS 記錄中只有非 www 域。

我仍然不知道如何動態添加所有子域(不支持星號),但這是另一回事。

您必須一次跟踪一個 DNS 查詢,以查看它在哪裡爆炸。在你的電腦上,試試這個:

nslookup
> 設置類型=ns
> 網站.com

這應該返回一個名稱伺服器列表。選擇一個:

> 伺服器 ip_address_of_one_of_the_NS_servers_returned_above

然後該伺服器應該有 www 記錄。通過執行確認這一點:

> 設置類型=a
> www.site.com

引用自:https://serverfault.com/questions/660140