DNS Messenger (dnsmsg)

Send messages easily over DNS, if DNS works, this works.

usage: dnsmsg.py [-h] [-v] [-s] [-r] [-b] [-n] [-q] [-e EXPIRE] [-k KEY] [-c CHANNELS] [-m MESSAGE] [-f FILE]
                 [-d DOMAIN]

dnsmsg - DNS Messenger

positional arguments:
  channel               channel key, can be comma separated list

optional arguments:
  -h, --help            show this help message and exit
  -v, --verbose         verbose DNS lookups and results
  -s, --send            send message / file, to static channel
  -r, --receive         receive continuously, checks new messages hourly
  -b, --binary          binary mode, only one message per output file
  -n, --nostate         do not create state file, use DNS only
  -q, --quiet           no other output than message(s)
  -e EXPIRE, --expire EXPIRE
                        expire (hours), message expiry only
  -t TTL, --ttl TTL     channel TTL / check interval (minutes)
  -k KEY, --key KEY     update key to post messages to dynamic channel
  -c CHANNELS, --channels CHANNELS
                        filename for list of channel keys to use
  -m MESSAGE, --message MESSAGE
                        message to be sent
  -f FILE, --file FILE  message file name path / prefix (for binary files)
  -d DOMAIN, --domain DOMAIN
                        use alternate domain

Current pure Python 3 implementation: dnsmsg.py, dnsresolver library is recommended, but should work without.

Portable Windows 32 bit binary package is available from GitHub: dnsmsg_v0_2_win32.zip

Suggested URI dnsmsg:channel_name

Questions, ideas, feedback, comments, tech talk?
See DNSKV project link below.

Combine this with DNSKV Key Value Storage and use ODoH + DoH DNS resolver chain to provide multi-hop query routing improving anonymity. There's no information where the data is coming and where it's going.

DNSKV project page

Last update: 2022-11-20
kw: anonymous, privacy, DNS based, messaging channels, multi-recipient, covert, alternate, channel, communication, messages, highly obfuscated but not encrypted, transfer, data, Linux, Mac, Apple, Windows, client.