Skip to content
No description, website, or topics provided.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


A perl script used to batch compare serial numbers for SOA records in DNS. Background for this script was some customers moving DNS zones outside of my company. It is used for quick verification by comparing SOA serial numbers of DNS zones to make sure that the zone was truly transferred and the configuration can be safely removed.

You can also use this script to quickly check if increased SN has propagated to all the slave DNS servers.



-i, --interactive		provide list in interactive prompt. Confirm with CTRL+D.
-f, --file [FILENAME]		provide file with domains. One domain per line.
-s, --servers [SERVERS]		provide list of servers (IP or domain names)


perl --servers --file check_soa_domain_list.txt

perl --servers --file check_soa_domain_list.txt

perl --servers --interactive

perl --servers --interactive

--file expects one domain name per line in a file.

You can specify as many DNS servers as you like.

Sample output:

perl --server --interactive
Please provide interactive of domains to be checked. One domain per line. Confirm with Ctrl +D after newline(enter)
Started at Tue Sep 24 20:50:04 2019

Domain                                  DNS server          Status              SOA SN              DNS server          Status              SOA SN              Same SOA SN                                NOERROR             2019090512  NOERROR             2019090512          Yes                                NOERROR             2019090512  NOERROR             2019090512          Yes       

Finished at Tue Sep 24 20:50:04 2019
Duration: 0s

Returns NOERROR on success, ERROR on response REFUSED (possibly zone doesn't exist on server).

You can’t perform that action at this time.