---
name: "fpdns"
section: "1"
platform: "linux"
package: "fpdns"
version: "0.9.1-1"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/fpdns"
---

# fpdns(1)

DNS server fingeprinting tool

## NAME

fpdns.pl - DNS server fingeprinting tool

## SYNOPSIS

**fpdns.pl** \[ **-c** \] \[ **-d** \] \[ **-f** \] \[ **-F** *nchild* \]\
    \[ **-p** *port* \] \[ **-Q** *srcaddr* \] \[ **-r** *retry* \]\
    \[ **-s** \]  \[ **-t** *timeout* \] \[ **-v** \] \[ *server*\]

## DESCRIPTION

**fpdns.pl** 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.

False positives or incorrect versions may be reported when  trying to identify a set of servers residing behind a  load-balancing apparatus where the servers are of different  implementations, when a specific implementation behaves like a  forwarder, behind a firewall without statefull inspection or without  *Application Intelligence*.

## OPTIONS

- **-c**

  Where appropriate check CH TXT version. Off by default.

- **-d**

  Enable debugging. Off by default.

- **-f**

  Force checking of CH TXT version. Off by default.

- **-F** *nchild*

  Maximum number of forked child processes. Defaults to 10.

- **-p** *port*

  Port to query remote nameserver on. Default is 53.

- **-Q** *srcaddr*

  Set the source IP address to use.

- **-r** *retry*

  Number of attempt to retry fingerprints. Defaults to 1.

- **-s**

  Short display form. Useful for surveys.

- **-t** *timeout*

  Set the query timeout in seconds. Defaults to 5.

- **-v**

  Show version of fpdns.

- *server*

  IP address or name to query. Alternatively may be '-' to  read from a list of these from stdin

## AUTHORS

fpdns was written by Roy Arends and Jakob Schlyter.

## SEE ALSO

[*perl*(1)](/perl/1.md), *Net::DNS*(1)
