web-dev-qa-db-ja.com

スレーブDNSサーバー(バインド)ゾーンファイルが転送されましたが、データが読み取れません

バインドを使用してLinux上にスレーブDNSサーバーをセットアップしました。名前付きサービスを開始すると、ゾーンファイルはslaves/に転送されますが、ファイル内の情報は、次のような記号や四角がある奇妙なコンピューター記号(これの正しい用語が何であるかはわかりません)のように見えます。以下のスニペット。

何がこれを引き起こしたのか誰か知っていますか?重要なステップを逃したことがありますか?

enter image description here

2
neilH

これは、バインド9.10のデフォルトの動作です(少なくとも)。 ftp://ftp.isc.org/isc/bind9/cur/9.10/doc/arm/Bv9ARM.ch06.html#zone_statement を参照してください。

masterfile-format
Specifies the file format of zone files (see the section called

「追加のファイル形式」)。デフォルト値はtextです。これは、デフォルト値がrawであるスレーブゾーンを除いて、標準のテキスト表現です。

スレーブ上のゾーンファイルの内容を調べる必要がある場合は、構成ファイルでこの設定を(「テキスト」に)変更するか、named-compilezoneを使用して内容をダンプできます。

2
Paul Haldane

あなたは何も悪いことをしていません。 BIND 9.9以降では、type slaveのゾーンが生のバイナリ形式でディスクに保存されます。人間は、マスター上のゾーンファイルの内容を手動で微調整するだけでよいと想定されています。さまざまな形式の詳細を読むことができます ここ

セカンダリサーバーに複製されたデータを検証することだけに関心がある場合(およびSOAレコードのシリアル番号を比較するだけでは不十分な場合)、named-compilezoneを使用して変換することができます。ファイルをtext形式に戻します:

$ file example.com.zone
example.com.zone: data
$ named-compilezone -f raw -F raw -o example.com.zone.out example.com example.com.zone
zone example.com/IN: loaded serial 2016090801
dump zone to example.com.out...done
OK
$ file example.com.zone.out
example.com.zone.out: ASCII text

ゾーンファイル形式の変更について詳しく説明するつもりでしたが、Paulは私を殴りました。何らかの自動化に必要な場合を除いて、そのままにしておくことをお勧めします。通常、ロードされたゾーンのシリアル番号を比較するだけで十分です。

1
Andrew B