The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Net::pWhoIs - Client library for Prefix WhoIs (pWhois)

SYNOPSIS

    use Net::pWhoIs;

    my $obj = Net::pWhoIs->new();
  
    # You may pass hostnames or IP addresses.
    my @array = qw(
        166.70.12.30
        207.20.243.105
        67.225.131.208
        perlmonks.org
        8.8.8.8
        12.12.12.12
        ftp2.freebsd.org
    );

    # You can pass an array.
    my $output = $obj->pwhois(\@array);

    # Or you can pass a single string.
    my $output = $obj->pwhois('8.8.8.8');

    # Generate a formatted report.
    print $obj->printReport($output);
  
    # Or manipulate the data yourself.
    for my $req (keys %{$output}) {
        printf ("Request: %s\n", $req);
        for my $key (keys %{$output->{$req}}) {
            print sprintf("%-22s : %s\n", $key, $output->{$req}{$key});
        }
    }

DESCRIPTION

Client library for pWhois service. Includes support for bulk queries.

CONSTRUCTOR

$obj = Net::pWhoIs->new( %options )

Construct a new Net::pWhoIs object and return it. Key/value pair arguments may be provided to set up the initial state. The only require argument is: req.

    pwhoisserver  whois.pwhois.org
    port          43
    req           Required argument, value must be an array reference.

METHODS

The following methods are available:

Net::pWhoIs->pwhois()

Perform queries on passed arrayref. Supports single or bulk query. Returns a hash of hashrefs.

Net::pWhoIs->printReport()

Perform queries on passed arrayref. Supports single or bulk query. Returns a hash of hashrefs.

Client

A full featured client is included: pwhoiscli.pl. Pass it hostnames or IP seperated by space.

OUTPUT HASHREF KEYS

The following is the list hashref keys returned by pwhois.

    as-org-name
    as-path
    cache-date
    city
    country
    country-code
    ip
    latitude
    longitude
    net-name
    org-name
    origin-as
    prefix
    region
    route-originated-date
    route-originated-ts

AUTHOR

Matt Hersant <matt_hersant@yahoo.com>