How do I query the Abuse Contact database?
The Abuse Contact Database is exposed via DNS. This means you can send requests to the Abuse Contact DB the same way you would with a DNSBL or any other DNS-based list. This configuration permits a higher volume of queries than would be possible with an HTTP API.
To obtain the abuse contact for IP 184.108.40.206, you reverse the octets of the IP address and append ".abuse-contacts.abusix.zone."
$ host -t TXT 220.127.116.11.abuse-contacts.abusix.zone. 18.104.22.168.abuse-contacts.abusix.zone descriptive text "firstname.lastname@example.org"
The response contains the abuse contact in the TXT record.
Multiple results are comma-separated in one TXT record. If you do not get any result, the range or IP does not exist, or the responsible network owner doesn't declare an abuse@ role address.
IPv6 queries are also supported but require the lookup to be in "Nibble" format, which is the format used for IPv6 PTR record lookups. You can find a tool to convert an IPv6 address to Nibble format here: http://rdns6.com/nibble
To obtain the abuse contact for the IPv6 address 2a03:b0c0:1:d0::bea:a001:
$ host -t TXT 1.0.0.a.a.e.b.0.0.0.0.0.0.0.0.0.0.d.0.0.1.0.0.0.0.c.0.b.3.0.a.2.abuse-contacts.abusix.zone. 1.0.0.a.a.e.b.0.0.0.0.0.0.0.0.0.0.d.0.0.1.0.0.0.0.c.0.b.3.0.a.2.abuse-contacts.abusix.zone descriptive text "email@example.com"
A python-based command-line tool called "querycontacts" is available.
The tool provides a library for use in your Python programs.
You can install it via:
$ pip install querycontacts
Use the command "querycontacts <ip address>." This will convert an IP address, the subsequent abuse contact lookup, and return of the abuse@ address.
Learn more about the Abuse Contact Database
Still, need help?
No problem; click the chat button in the bottom right-hand corner of the screen and send us your questions. Alternatively, you can email us at firstname.lastname@example.org