@和ns記錄有什麼區別
我試圖了解 A 記錄與記錄之間的
@
區別ns
。我試圖將一個子域 testing.example.com 指向另一台伺服器,該伺服器將擁有自己的
DNS
伺服器、dkim
,spf
&dmarc
記錄。據我從這裡 sysadmin1138 提供的答案中了解到:膠水記錄子域?
我需要在
example.com
域中有以下粘合記錄example.com: [...] testing.example.com. IN NS ns1.testing.example.com. testing.example.com. IN NS ns2.testing.example.com. ns1.testing.example.com. IN A 113.197.55.206 ns2.testing.example.com. IN A 113.197.55.206
那麼我還應該添加
A
記錄@
並將其指向113.197.55.206
嗎?
@ 是一個簡單的“起源”。它用於域名語法上應該去的地方,但該名稱與原始集相同。即在您所說的 BIND 配置中
zone "domain.com"
,原點是domain.com
(直到由區域文件中的 $ORIGIN 指令重新設置)並且@ NS ns
與domain.com. NS ns.domain.com.
. 請注意,任何沒有尾隨點的記錄都會自動附加一個來源,但是要利用此功能,您必須為 NS 記錄留下“空名稱”,這意味著其他事情(對於這種情況,請認為語法不正確)。於是發明了符號@。這意味著,它與粘合記錄或委託記錄無關。您甚至可以選擇在任何地方都不使用它,您可以明確地編寫所有內容。像這樣:如果你想創建 A 記錄,你可以使用 @ 來表示,like
@ A 192.0.2.1
,但你也可以不使用它並寫 asdomain.com. A 192.0.2.1
(前提是 origin 仍然是domain.com
)。閱讀http://www.zytrax.com/books/dns/apa/origin.html
當子域在其區域內具有 DNS 伺服器名稱時,需要使用 Glue。讓我們委託
sub.example.com
哪個ns.sub.example.com
有地址192.0.2.2
。為此,我們需要ns.sub.example.com
事先解析該 A 記錄,但誰應該回答查詢?我們委託一個區域的伺服器不能,因為在我們解決這個查詢之前我們仍然不知道它的地址。這個雞與蛋的問題由膠水記錄解決:委託伺服器將儲存一條ns.sub.example.com A 192.0.2.2
記錄。然後,我們還可以使用名稱伺服器委託記錄,sub.example.com. NS ns.sub.example.com.
.或者,如果您的來源是
example.com
,那將是ns.sub A 192.0.2.2
- 粘合和sub NS ns.sub
- 委託。@ 符號在這裡沒有使用,因為我們在任何地方都沒有遇到“空名”。或者,您可以設置
$ORIGIN sub.example.com
然後必須使用@:我們的記錄將被寫為ns A 192.0.2.2
and@ NS ns
。請注意,儘管我提出了三種用膠水記錄表達這個委託的方法,但所有三種情況都表達了完全相同的資訊,並且工作方式相同。它只是語法上的差異,而不是主要的。
如果您將該區域委託給在該區域內沒有其名稱的伺服器,則不需要粘合。例如,如果
sub.example.com
被委派給ns.example.org
,則sub.example.com. NS ns.example.org.
需要一個,因為ns.example.org
’ 的地址將以其他方式解析。和一句話。DNS 註冊商要求您至少指定兩個 DNS 伺服器這一事實並不意味著您還必須要求多個 DNS 伺服器。如果您兩次指定相同的伺服器,它不會有任何改進。對於您的特定情況,一張膠水和一張委託記錄就足夠了。