私はdnsを学び、Digital Oceanでcentos 7にバインドしようとしています。 named-checkzone
を実行すると、同じエラーが発生します。空白を変更するときは、そのエラーを停止して、0 SOA and no NS error。
Sudo named-checkzone example.com /etc/named/zones/example.com.zone
/etc/named/zones/example.com.zone:1: no current owner name
/etc/named/zones/example.com.zone:2: no current owner name
/etc/named/zones/example.com.zone:3: no current owner name
/etc/named/zones/example.com.zone:16: no current owner name
/etc/named/zones/example.com.zone:17: no current owner name
/etc/named/zones/example.com.zone:18: no current owner name
/etc/named/zones/example.com.zone:19: no current owner name
/etc/named/zones/example.com.zone:24: no current owner name
/etc/named/zones/example.com.zone:25: no current owner name
/etc/named/zones/example.com.zone:26: no current owner name
/etc/named/zones/example.com.zone:27: no current owner name
/etc/named/zones/example.com.zone:28: no current owner name
/etc/named/zones/example.com.zone:29: no current owner name
$Origin example.com.
$TTL 14400
@ IN SOA ns1.example.com. hostmaster.example.com. (
2014071301 ; serial. date. today + increment
3600 ; refresh. seconds. frequency slave refreshes from master.
600 ; retry. seconds. frequency slave retries master after failure.
604800 ; expire. seconds. slave stops responding as authoritative.
86400 ; ttl. seconds. Maximum caching time by resolver.
)
;------------------------------------------------------------------------------
; Special Records
;
; Note: SPF Records are limited to 10 DNS lookups recursively.
;
IN NS ns1.example.com.
IN NS ns2.example.com.
IN MX 10 mail.example.com.
IN TXT "v=spf1 -ALL"
;------------------------------------------------------------------------------
; Main Records
;
@ IN A 192.0.2.1
* IN A 192.0.2.1
ns1 IN A 192.0.2.2
ns2 IN A 192.0.2.3
mail IN A 192.0.2.1
www IN A 192.0.2.1
db.192.0と呼ばれる逆も同様
$Origin 2.0.192.in-addr.arpa.
$TTL 86400
@ IN SOA ns1.example.com. hostmaster.example.com. (
3 ; serial
21600 ; refresh after 6 hours
3600 ; retry after 1 hour
604800 ; expire after 1 week
86400 ) ; minimum TTL of 1 day
@ IN NS ns1.example.com.
2 IN PTR ns1.example.com.
3 IN PTR ns2.example.com.
Julie Pelletierがすでにコメントしているように、それらはBindゾーンファイルで特別な意味を持っているので、ゾーンレコードの先頭の空白を削除します。
空白(ホスト名、ゾーン名、ゾーンOriginの@省略形ではない)で行を開始すると、その行はその上のレコードの続きになります。
$Origin neilanuskiewicz.com.
$TTL 14400
@ IN SOA ns1.neilanuskiewicz.com. ...
SOAレコードのある行は、その上に存在しないレコードの継続(変数はその点では考慮されません)となるため、失敗します。その上にリソースレコードがあります。その継続レコードを適用する所有者。
$Origin neilanuskiewicz.com.
$TTL 14400
@ IN SOA ns1.neilanuskiewicz.com. ...
ただし、空白で始まる行を意図的に使用できます。
@ IN A 192.0.2.1 ; IPv4 address for the bare domain using the @ short hand
neilanuskiewicz.com. IN AAAA 2001:db8:10::1 ; IPv6 address for the bare domain
www IN A 192.0.2.1
IN AAAA 2001:db8:10::1 ; IPv6 address for www using DNS shorthand by starting this line with a space