App::rdapper - a simple console-based RDAP client.
To install, run:
cpanm --sudo App::rdapper
The git repository contains a
Dockerfile
that can be used to build an image on your local system.
Alternatively, you can pull the image from Docker Hub:
$ docker pull gbxyz/rdapper
$ docker run -it gbxyz/rdapper --help
General form:
rdapper [OPTIONS] OBJECT
Examples:
rdapper example.com
rdapper --tld foo
rdapper 192.168.0.1
rdapper https://rdap.org/domain/example.com
rdapper --search "exampl*.com"
rdapper
is a simple RDAP client. It uses Net::RDAP to retrieve data about
internet resources (domain names, IP addresses, and autonymous systems) and
outputs the information in a human-readable format. If you want to consume this
data in your own program you should use Net::RDAP directly.
You can pass any internet resource as an argument; this may be:
- a "forward" domain name such as
example.com
; - a top-level domain such as
com
; - a IPv4 or IPv6 address or CIDR prefix, such as
192.168.0.1
or2001:DB8::/32
; - an Autonymous System Number such as
AS65536
. - a "reverse" domain name such as
168.192.in-addr.arpa
; - the URL of an RDAP resource such as
https://example.com/rdap/domain/example.com
. - the "tagged" handle of an entity, such as an LIR, registrar, or domain
admin/tech contact. Because these handles are difficult to distinguish from
domain names, you must use the
--type
argument to explicitly tellrdapper
that you want to perform an entity query, .e.grdapper --type=entity ABC123-EXAMPLE
.
rdapper
also implements limited support for in-bailiwick nameservers, but
you must use the --nameserver
argument to disambiguate from domain names.
The RDAP server of the parent domain's registry will be queried.
--registry
- display the registry record only. This was the default behaviour prior to v1.12.--registrar
- follow referral to the registrar's RDAP record (if any) which will be displayed instead of the registry record. If no registrar link can be found, the registry record will be displayed. This option cannot be used with--registry
. As of v1.12, this is the default behaviour.--both
- display both the registry and (if any) registrar RDAP records.--reverse
- if you provide an IP address or CIDR prefix, then this option causesrdapper
to display the record of the correspondingin-addr.arpa
orip6.arpa
domain.--type=TYPE
- explicitly set the object type.rdapper
will guess the type by pattern matching the value ofOBJECT
but you can override this by explicitly setting the--type
argument to one of :ip
,autnum
,domain
,nameserver
,entity
orurl
.- If
--type=url
is used,rdapper
will directly fetch the specified URL and attempt to process it as an RDAP response. If the URL path ends with/help
then the response will be treated as a "help" query response (if you want to see the record for the .help TLD, use--type=tld help
). - If
--type=entity
is used,OBJECT
must be a a string containing a "tagged" handle, such asABC123-EXAMPLE
, as per RFC 8521.
- If
--$TYPE
- alias for--type=$TYPE
. eg--domain
,--autnum
, etc.--search
- perform a search.--help
- display help message.--version
- display package and version.--raw
- print the raw JSON rather than parsing it.--short
- omit remarks, notices, links and redactions.--bypass-cache
- disable local cache of RDAP objects.--auth=USER:PASS
- HTTP Basic Authentication credentials to be used when accessing the specified resource. This option SHOULD NOT be used unless you explicitly specify a URL, otherwise your credentials may be sent to servers you aren't expecting them to.--nocolor
- disable ANSI colors in the formatted output.--debug
-run in debugging mode.
Some RDAP servers support the ability to perform simple substring searches. You
can use the --search
option to enable this functionality.
When the --search
option is used, OBJECT
will be used as a search term.
If it contains no dots (e.g. exampl*
), then rdapper
will send a search
query for exampl*
to all known RDAP servers. If it contains one or more
dots (e.g. exampl*.com
), it will send the search query to the RDAP server
for the specified TLD (if any).
Any errors observed will be printed to STDERR
; any search results will be
printed to STDOUT
.
As of writing, search is only available for domain names.
rdapper
is internationalized. When performing RDAP queries, it will provide
the user's preferred language in the `Accept-Language` header, however very few
RDAP servers currently provide localized responses. Its output will also be
translated (where translations are available).
If you would like rdapper to support your preferred language, please see the advice on contributing translations in App::rdapper:l10n
Copyright (c) 2012-2023 CentralNic Ltd.
Copyright (c) 2023-2025 Gavin Brown.
All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.