https://github.com/gadiguibou/rdapcheck
A simple RDAP library and command-line tool to check domain name availability in bulk. https://deno.land/x/rdapcheck
https://github.com/gadiguibou/rdapcheck
deno denoland domain domain-discovery domain-name domain-name-search domain-names domains typescript
Last synced: 6 months ago
JSON representation
A simple RDAP library and command-line tool to check domain name availability in bulk. https://deno.land/x/rdapcheck
- Host: GitHub
- URL: https://github.com/gadiguibou/rdapcheck
- Owner: Gadiguibou
- License: agpl-3.0
- Created: 2021-11-19T23:10:13.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2022-02-24T03:57:29.000Z (over 3 years ago)
- Last Synced: 2025-03-17T21:44:09.324Z (7 months ago)
- Topics: deno, denoland, domain, domain-discovery, domain-name, domain-name-search, domain-names, domains, typescript
- Language: TypeScript
- Homepage:
- Size: 34.2 KB
- Stars: 14
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# rdapcheck
A simple library and command-line tool to check domain name availability in bulk using the [RDAP](https://www.icann.org/rdap) protocol, a simple protocol meant to replace WHOIS.
This module is also available on [deno.land/x](https://deno.land/x/rdapcheck).

## Installation
### Using Deno
Run once using:
```bash
deno run --allow-net https://deno.land/x/rdapcheck/cmd.ts
```Compile the client into a portable executable using:
```bash
deno compile -o rdapcheck --allow-net https://deno.land/x/rdapcheck/cmd.ts
```Install the client using:
```bash
deno install -n rdapcheck --allow-net https://deno.land/x/rdapcheck/cmd.ts
```### Manually
Binary executables are available for the latest [release](https://github.com/Gadiguibou/rdapcheck/releases/latest).
## Usage
```
rdapcheck [OPTIONS] DOMAINS...
```The available options are:
- `-q` or `--quiet`: Only print the names of the domains that are available
- `-p` or `--progress`: Print the number of domains processed so far
- `-c` or `--chunk-size`: The number of domains to process in parallel. Set to 10 by default`DOMAIN` can be a domain name or a pattern with wildcards that `rdapcheck` will fill in with every possible value.
The available wildcards are:
- `*`: Matches any letter, number or hyphen, "-"
- `?`: Matches any letter
- `#`: Matches any number## Examples
### Check the availability of a single domain
```bash
$ rdapcheck johndoe.xyz
johndoe.xyz is not available
```### Check the availability of multiple domains with a single command
```bash
$ rdapcheck aaa.net bbb.org asldkfjal.com johndoe.xyz
aaa.net is not available
bbb.org is not available
asldkfjal.com is available
johndoe.xyz is not available
```### Only print the names of the domains that are available
```bash
$ rdapcheck -q aaa.net bbb.org asldkfjal.com johndoe.xyz
asldkfjal.com
```### Check the availability of all domains that match a list of patterns
```bash
$ rdapcheck -q 'ex?mple.com' 'johndoe#.net'
exbmple.com
excmple.com
exdmple.com
exfmple.com
...
exrmple.com
extmple.com
exumple.com
johndoe0.com
johndoe1.com
...
johndoe5.com
johndoe6.com
johndoe8.com
johndoe9.com
```## Sources
This tool was completed over the course of one afternoon by referring to the following sources:
- [ICANN RDAP overview](https://www.icann.org/rdap)
- [ICANN lookup tool](https://lookup.icann.org/lookup)
- [RFC 7483](https://datatracker.ietf.org/doc/html/rfc7483)
- [ARIN page on Whois and the RDAP protocol](https://www.arin.net/resources/registry/whois/rdap)
- [The IANA RDAP bootstrapping registry](https://data.iana.org/rdap/)
- [RFC 8605](https://www.rfc-editor.org/info/rfc8605)
- [RFC 8977](https://www.rfc-editor.org/info/rfc8977)
- [RFC 9082](https://www.rfc-editor.org/info/rfc9082)
- [RFC 9083](https://www.rfc-editor.org/info/rfc9083)
- [RFC 7484](https://datatracker.ietf.org/doc/html/rfc7484)For more information on the latest standardization efforts on RDAP, see the [RFC Editor's RDAP page](https://www.rfc-editor.org/search/rfc_search_detail.php?title=RDAP&pubstatus%5B%5D=Any&pub_date_type=any).