Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/dgw/sopel-dns

DNS lookup plugin for Sopel IRC bots
https://github.com/dgw/sopel-dns

hacktoberfest irc irc-bot irc-bot-plugin sopel sopel-plugin

Last synced: about 1 month ago
JSON representation

DNS lookup plugin for Sopel IRC bots

Awesome Lists containing this project

README

        

# sopel-dns

A DNS lookup plugin for Sopel IRC bots

## Installing

Releases are hosted on PyPI, so after installing Sopel, all you need is `pip`:

```shell
$ pip install sopel-dns
```

### Requirements

* Python 3.8+
* Sopel 8.0+
* `dnspython` 2.x

## Usage

Basic usage performs an 'A' record lookup:

```
.dns domain.tld
user: 10.10.0.1
```

To look up IPv6 addresses instead, specify the 'AAAA' record type:

```
.dns domain.tld AAAA
user: fd12:3456:789a:1::1
```

Other [supported record types](#supported-dns-record-types) output their
results in a similar fashion. Some types, such as `MX` and `TXT`, split the
output across multiple lines to make it easier to read, at the cost of
possible "spam" if there are many records attached to the queried domain.

### Rate limiting

Normal users are rate-limited to one `.dns` command every 2 minutes, both to
control channel flood and to prevent hammering whatever DNS server Sopel's
host system uses to resolve the submitted queries.

## Supported DNS record types

* `A`
* `AAAA`
* `CNAME`
* `MX`
* `NS`
* `PTR`
* `TXT`

If a record type you want isn't listed here, feel free to request it in an
[issue](https://github.com/dgw/sopel-dns/issues/new). Even better: a pull
request enabling that record type, including a demo of the resulting output.