0

BIND ゾーン ファイルを取り込み、すべての A レコードを取得するスクリプトを .xml 形式で作成しようとしていますhost ipgrep -w 'A' "$A_ZONE"|awk '{print $1,$4}'|sort -Vその部分をスキップするために、私はそれをしましたIN A。ここで、所有しているすべての逆ゾーンから PTR レコードを抽出する必要があります。これらは /24 サブネットごとにグループ化されているため、 の PTR レコードがある場合10.0.0.10.0.10.in-addr.arpa.zoneファイルには10 IN PTR host.domain.tld. 少し複雑なので、最初に抽出したファイルの形式になるように、IP を適切に抽出する方法がわかりませんhost ip

助言がありますか?

4

1 に答える 1

1

次のコマンドを使用できます。

egrep '^[0-9]+' 0.0.10.in-addr.arpa.zone | \
  perl -p -e 's/^(\d+).*\s(\S+)\s*$/$2 10.0.0.$1/'

出力:

ホスト.ドメイン.tld. 10.0.0.10

数字で始まるすべてのレコードをgrepし、数字とホスト名を一致させ、それらを逆にします。次に、ホスト名とともに IP アドレスが作成されます。

私が示したコマンドでは、サブネットは正規表現でハードコードされていますが、同様の戦略を適用してファイル名から抽出し、正規表現にプラグインすることができます。

named-compilezoneまた、スクリプトに適した正規の形式であることを確認するために、ゾーン ファイルを実行することを検討することもできます。

于 2013-08-03T10:04:22.223 に答える