Bootstrapping
Bootstrapping is the process by which the RDAP client determines which RDAP server to query for a given domain, IP address, ASN, or entity. By default, the client uses bootstrap files provided by IANA to find the authoritative RDAP server.
Default Behavior
When you query the RDAP client (e.g., rdap example.com), the client:
- Determines the type of query (domain, IP, ASN, entity)
- Looks up the appropriate bootstrap registry from IANA
- Finds the matching server URL for your query target
- Queries that server
Overriding Bootstrapping
There are several ways to override the default bootstrapping behavior:
1. Command Line Options
| Option | Environment Variable | Description |
|---|---|---|
-b |
RDAP_BASE |
Specify an object tag from the IANA object tags registry |
-B |
RDAP_BASE_URL |
Specify an explicit base URL (converted to https:// if only hostname given) |
--tld-lookup |
- | Specify where to send queries for TLDs (defaults to IANA) |
--inr-backup-bootstrap |
- | Backup server for IP/ASN queries when normal bootstrapping fails (defaults to ARIN) |
Examples:
rdap -b arin example.com # Use ARIN's object tag
rdap -B rdap.example.com example.com # Use specific server
rdap --tld-lookup custom.example .com # Use custom TLD server
2. Environment Variables
| Variable | Description |
|---|---|
RDAP_BASE |
Object tag to use for bootstrapping |
RDAP_BASE_URL |
Base URL to use directly |
RDAP_TLD_LOOKUP |
Server for TLD queries |
RDAP_INR_BACKUP_BOOTSTRAP |
Backup server for IP/ASN |
3. Bootstrap Override Files (Configuration)
You can provide your own bootstrap registry files that take precedence over IANA's cached data. Place JSON files in the RDAP configuration directory:
Configuration directory locations:
- Linux: $XDG_CONFIG_HOME/rdap/ or $HOME/.config/rdap/
- macOS: $HOME/Library/Application Support/rdap/
- Windows: {FOLDERID_RoamingAppData}\rdap\config\
Override file names:
| Registry Type | File Name |
|---|---|
| DNS/Domains | dns.json |
| ASN/Autnums | asn.json |
| IPv4 | ipv4.json |
| IPv6 | ipv6.json |
| Object Tags | object-tags.json |
Format:
The override files use the same format as IANA bootstrap registries. Example for DNS:
{
"version": "1.0",
"publication": "2024-01-07T10:11:12Z",
"description": "Custom DNS bootstrap",
"services": [
[
["com", "net"],
[
"https://custom.example.com/rdap/"
]
],
[
["org"],
[
"https://registry.example.org/"
]
]
]
}
Priority: Config override files take precedence over cached IANA bootstrap data. If a query doesn't match anything in the config override, the client falls back to the cached IANA data.
Bootstrap Cache
The client caches bootstrap data retrieved from IANA. The cache location:
- Linux:
$XDG_CACHE_HOME/rdap/or$HOME/.cache/rdap/ - macOS:
$HOME/Library/Caches/rdap/ - Windows:
{FOLDERID_LocalAppData}\rdap\cache\
Use --reset to clear the cache and configuration.