[自分用メモ][BIND] BINDで「bad owner name (check-names)」が出力されてしまう。

2013-02-12 10:25:16AIX、UNIX、Linuxbad owner name, bind, DNS, zone

自宅環境で導入しているBINDで、zoneファイルの書き換えを行なって念のためサービスの再起動を行ったところ以下の様なエラーメッセージが。

現象

etc/init.d/named restart
Stopping named:                                            [  OK  ]
Starting named:
Error in named configuration:
zone localhost/IN: loaded serial 2012070601
zone 0.0.127.in-addr.arpa/IN: loaded serial 2012070601
dns_rdata_fromtext: zones/1.168.192.rev:20: near 'centos_proxy.hoge.local.': bad name (check-names)
zone 1.168.192.in-addr.arpa/IN: loading from master file zones/1.168.192.rev failed: bad name (check-names)
zone 1.168.192.in-addr.arpa/IN: not loaded due to errors.
internal/1.168.192.in-addr.arpa/IN: bad name (check-names)
zones/hoge.local.db:19: centos_proxy.hoge.local: bad owner name (check-names)
zone hoge.local/IN: loading from master file zones/hoge.local.db failed: bad owner name (check-names)
zone hoge.local/IN: not loaded due to errors.
internal/hoge.local/IN: bad owner name (check-names)

とりあえず記述しているレコード名が拙そうなのは分かったのですが、イマイチよく分からなかったので調べてみると、どうやらホスト名に"_(アンダースコア)"を使用しているのがマズイらしい。

どういう問題?

BIND9.3.1以降はRFC952に書かれている通りというか、ホスト名に「_」(アンダーバー)が使えない・・・がデフォルトになっているようです。

http://1x4x9.net/2008/08/bind-2.html

RFCに記載があるみたいですね・・・。とりあえず設定の追加でチェック自体を緩くすることも可能のようですが、特に緩くすることを容認する理由もないので、ホスト名の変更で調整しました。

1. A “name" (Net, Host, Gateway, or Domain name) is a text string up to 24 characters drawn from the alphabet (A-Z), digits (0-9), minus sign (-), and period (.). Note that periods are only allowed when they serve to delimit components of “domain style names".

http://tools.ietf.org/html/rfc952

やはりネットワーク周りに触れる場合にはRFCなどを読むようにしないといけないですね・・・
また一つ勉強になりました。

参考Webサイト:

この記事を書いた人

kometchtech

うつ病を患いながら、IT業界の末席にいるおっさんエンジニア。科学計算をしたことがないのに、HPC分野にお邪魔している。

興味のある分野で学習したことをblogにまとめつつ、うつ病の経過症状のメモも置いておく日々。

じつはRouterboard User Group JPの中の人でもある。

Amazon欲しいものリスト / Arm板を恵んでくれる人募集中

2013-02-12 10:25:16AIX、UNIX、Linuxbad owner name, bind, DNS, zone