Find out DNS Server Version With DNS Server Fingeprinting tool

in Categories Debian Linux, FreeBSD, Howto, Linux, Networking, Security, Sys admin, Tip of the day, UNIX last updated September 27, 2007

By hiding out DNS server version number you can improve server security. fpdns is a program that remotely determines DNS server versions. It does this by sending a series of borderline DNS queries which are compared against a table of responses and server versions. (just like nmap command’s remote OS detection facility).

A nameserver basically responds to a query. Interoperability is an obvious requirement here. The standard protocol behavior of different DNS implementations is expected to be the same.

Install fpdns

Debian / Ubuntu user, enter the following command:
$ sudo apt-get install fpdns
FreeBSD user, either use ports or binary package:
$ pkg_add -v -r fpdns
Alternatively grab source code from official web site.

Howto remotely determine DNS server version

To determine DNS server version for domain, enter:
$ fpdns -D

fingerprint (, bboy MyDNS
fingerprint (, bboy MyDNS 

You can easily find out if recursion enabled or not:
$ fpdns

fingerprint (, ISC BIND 9.2.3rc1 -- 9.4.0a0 [recursion enabled]  

To read list of servers from key board, enter:
$ fpdns -
fingerprint (, ISC BIND 9.2.3rc1 -- 9.4.0a0 [recursion enabled]
fingerprint (, ISC BIND 9.2.3rc1 -- 9.4.0a0
fingerprint (, ISC BIND 8.3.0-RC1 -- 8.4.4
fingerprint (, ISC BIND 8.3.0-RC1 -- 8.4.4 

Further readings

=> Read fpdns man page.

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

Share this on (or read 1 comments/add one below):

1 comment

    Have a question? Post it on our forum!