⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dnsmkptr

📁 早期freebsd实现
💻
字号:
#!/usr/bin/perl## $Id: dnsmkptr,v 2.0 90/09/11 11:07:34 hakanson Rel $## Convert DNS master (RFC-1035) file A records to PTR records.#   Marion Hakanson (hakanson@cse.ogi.edu)#   Oregon Graduate Institute of Science and Technology## Copyright (c) 1990, Marion Hakanson.## You may distribute under the terms of the GNU General Public License# as specified in the README file that comes with the dnsparse kit.## Read the master files, and produce PTR records based on the A records# contained in them.  Note that if multiple names are found mapping to# a single address, we print out only the first mapping encountered.## This is quite rudimentary, sorts the output by number, and does not# attempt to split the file by net or subnet number.  Hence it lumps# multiple domain zones into a single PTR zone file, and thus may be# less useful than it could be.do "dnsparse.pl"; die "$@, aborted" if $@;do dns_init(@ARGV);open(OFILE, '| sort -n -t. +3 -4 +2 -3 +1 -2 +0 -1')    || die "Cannot start 'sort', aborted";# bug -- can we guarantee this goes out first after being sorted?print OFILE "\$ORIGIN IN-ADDR.ARPA.\n";	# in case we get fed to a nameserverrr: while ( (@rr = do dns_getrr()) && @rr ) {    ($domain, $ttl, $class, $type, @data) = @rr;    next rr if ( $class ne 'IN' || $type ne 'A' );    # only print out the first one    next rr if ( defined($addr{$data[0]}) );        $addr{$data[0]} = 1;        $revaddr = join('.',reverse(split(/\./, $data[0])));    print OFILE "$revaddr\tIN\tPTR\t$domain.\n";}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -