Skip to content
IPv4 cache refreshed 16 hr ago  ◆  IPv6 cache refreshed 14 hr ago  ◆  Prefixes in table 1,130,374 v4 · 264,818 v6  ◆  Peers 80 v4 · 20 v6  ◆  whois.pwhois.org:43 answering  ◆ 
Prefix WhoIs The Prefix
WhoIs Project
server · installation

Installing and using pWhoIs

From tarball to a whois server answering on port 43. The installer handles most of it; every step is also documented for doing it by hand.

Before you start: memory

If you plan to load the entire global routing table — from a gateway router with a full table, or a route-view router or server — remember it is large: over a million IPv4 prefixes and a quarter-million IPv6 prefixes today. For fast answers the server caches it in memory in a patricia tree. Be forewarned: expect to need several hundred megabytes of RAM to run both pwhoisd and pwhois-updatedb with a full table, not counting what PostgreSQL itself needs.

Quick installation

After downloading and unarchiving the package, run the installer as root:

$ ./install.sh

It asks a few questions and is not especially robust, but it will carry you through. If you have suggestions or code to contribute, send them along.

Requirements

The server and update agent are written mostly in Perl and want a current Perl 5 with the DBD::Pg module and libpq, plus a current PostgreSQL. Several other Perl modules are required — install.sh lists them.

The manual steps

  1. Create the user and group for the pwhoisd process to run as (e.g. pwhois).
  2. Install the binaries into their permanent location — we like /usr/sbin or /usr/local/sbin.
  3. Set up the init script if warranted; one is provided for Debian-style systems.
  4. Create the database, user and password, and import the tables — see the postgresql/ directory for the scripts and SQL.
  5. Set up the cron entry to run pwhois-updatedb at your chosen interval. A sample crontab shows what we run.
  6. Edit the configuration file, usually /etc/pwhois/pwhoisd.conf.
  7. Import your first data set with pwhois-updatedb.
  8. Start the pwhoisd server process.

You are now ready to connect and try it out:

$ whois -h localhost help