Re: Whois using these ARIN services?? (fwd: Consulta tion on the Future of ARIN’s Directory Services)

Sam Thomas via NANOG <[email protected]>
Newsgroups gmane.org.operators.nanog
Message-ID <CAJ_saMGCJ65tv_hWGJAd25wmAnwg46QrwD7PQUzP2VcLuztiwA@mail.gmail.com>
</lurk><grumpy_old_router_hacker>

when I asked the goog^WAI about CLI rdap tools, one suggestion was
"nicinfo," apparently produced by ARIN.

deprecated, and they recommended icann-rdap, which is produced in
rust. It is still compiling on my development system as I write this.

 Compiling icann-rdap-cli v0.0.31 (/home/sthomas/src/icann-rdap/icann-rdap-cli)
    Building [=======================> ] 539/545: rdap-srv-data(bin),
rdap-test(bin), rdap(bin), rdap-srv(bin)

meanwhile, on one of the few cores not getting rusted...

<farfarello:/usr/src/usr.bin/whois% wc -l whois.c
     610 whois.c
<farfarello:/usr/src/usr.bin/whois% make
[Creating objdir /usr/obj/usr/src/amd64.amd64/usr.bin/whois...]
echo whois.full: /usr/lib/libc.a  >> .depend
cc -fpie -DPIC   -O2 -pipe -fno-common   -fPIE
-ffile-prefix-map=/usr/src=/usr/src
-ffile-prefix-map=/usr/obj/usr/src=/usr/obj -g -gz=zlib -MD
-MF.depend.whois.pieo -MTwhois.pieo -std=gnu17 -Wno-format-zero-length
-fstack-protector-strong -Wsystem-headers -Werror -Wall
-Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes
-Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual
-Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align
-Wchar-subscripts -Wnested-externs -Wold-style-definition
-Wno-pointer-sign -Wdate-time -Wmissing-variable-declarations
-Wthread-safety -Wno-empty-body -Wno-string-plus-int
-Wno-unused-const-variable -Wno-error=unused-but-set-parameter
-Wno-error=cast-function-type-mismatch  -Qunused-arguments      -c
/usr/src/usr.bin/whois/whois.c -o whois.pieo
cc -O2 -pipe -fno-common -fPIE -ffile-prefix-map=/usr/src=/usr/src
-ffile-prefix-map=/usr/obj/usr/src=/usr/obj -g -gz=zlib -std=gnu17
-Wno-format-zero-length -fstack-protector-strong -Wsystem-headers
-Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter
-Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type
-Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter
-Wcast-align -Wchar-subscripts -Wnested-externs -Wold-style-definition
-Wno-pointer-sign -Wdate-time -Wmissing-variable-declarations
-Wthread-safety -Wno-empty-body -Wno-string-plus-int
-Wno-unused-const-variable -Wno-error=unused-but-set-parameter
-Wno-error=cast-function-type-mismatch -Qunused-arguments  -Wl,-zrelro
-pie    -o whois.full whois.pieo
objcopy --only-keep-debug whois.full whois.debug
objcopy --strip-debug --add-gnu-debuglink=whois.debug  whois.full whois
gzip -cn /usr/src/usr.bin/whois/whois.1 > whois.1.gz

<farfarello:/usr/obj/usr/src/amd64.amd64/usr.bin/whois% ls -lh whois
-rwxr-xr-x  1 sthomas wheel   17K Aug 15 19:08 whois

the icann-rdap build finally finished:
<farfarello:~/src/icann-rdap/target/release% ls -lh rdap
-rwxr-xr-x  2 sthomas sthomas   18M Aug 15 19:08 rdap

only 1000x the bits to do the same job; progress!. :)

tongue firmly in cheek, as I do love the JSON, but good grief do we
have to make everything this way? it's perfectly ok to have one
standard for machine-to-machine data exchange and a separate standard
for human consumption, especially if we rely on only one canonical
source for the data.

On Fri, Aug 14, 2026 at 12:37 PM Job Snijders via NANOG
<[email protected]> wrote:
>
> On Fri, Aug 14, 2026 at 10:19:23AM -0700, Randy Bush via NANOG wrote:
> > can we assume there will be somewhat finger compatible CLI client tools
> > for most platforms?
>
> I know of two tools, both seem useful:
>
> https://openrdap.org/ (doas pkg_add openrdap)
>
>         $ openrdap 192.0.2.1 | head
>         IP Network:
>           Handle: NET-192-0-2-0-1
>           Start Address: 192.0.2.0
>           End Address: 192.0.2.255
>           IP Version: v4
>           Name: TEST-NET-1
>
> https://metacpan.org/dist/App-rdapper (doas pkg_add rdapper)
>
>         $ rdapper rg.net
>         Object type: Domain Name
>         URL: https://rdap.joker.com/domain/rg.net
>         Name: RG.NET
>         Nameserver: NLNS.GLOBNIX.NET
>         Nameserver: NS1.RG.NET
>           IP Address: 46.224.94.61
>           IP Address: 2a01:4f8:1c1a:5360::1
>         Nameserver: RIP.PSG.COM
>           IP Address: 147.28.0.39
>           IP Address: 2001:418:1::39
>         DS Record: rg.net. 1 IN DS 12391 8 2
>           0fb5f11e4fe4045d519a55915bd71d6dcfb1fa045b01be891640c8ea1c0792c9
>         Registration: 1993-04-28T04:00:00Z
>         Last Changed: 2025-12-23T03:23:28Z
>         Expiration: 2028-04-29T04:00:00Z
>         Last update of RDAP database: 2026-08-14T17:25:00Z
>         ...
>
> > and a staged trasition, to allow for lot of automation that is gonna
> > have to change.
>
> Yes, perhaps so.
>
> However, the usual "RIR IRR source -> NRTM -> IRRd instance -> query utility"
> flow seems out-of-scope for the proposal, right?
>
> > speaking of automation, sure would be nice if the rirs were compatible.
>
> For posterity it might be worth to repeat what exactly the incompatibilities
> are and what ARIN (or other RIRs) can do to improve.
>
> Kind regards,
>
> Job
> _______________________________________________
> NANOG mailing list
> https://lists.nanog.org/archives/list/[email protected]/message/RLT3RT54C5OYAUDW3FQLZ7KXSAHRHERG/
_______________________________________________
NANOG mailing list 
https://lists.nanog.org/archives/list/[email protected]/message/7BVLJBGTSBPNG6GCWQ5O3C3ALY2T33QX/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.