Skip to content
DNS Historian takes a hostname, periodically looks up common record types (NS, MX, A, TXT, CNAME, AAAA) and records them as flatfiles in json format.
Python
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
dns_historian
.gitignore
LICENCE
README.md
TODO
requirements.txt

README.md

DNS Historian

DNS Historian takes a hostname, periodically looks up common record types (NS, MX, A, TXT, CNAME, AAAA) and records them as flatfiles in json format.

Add a domain (example.com) using:

curl -X POST -H "Content-Type: application/json" -d '{"hostname":"example.com"}' http://localhost:5000/write.json

Retrieve a domain using:

curl -X POST -H "Content-Type: application/json" -d '{"hostname":"example.com"}' http://localhost:5000/read.json

Setup and run

pip install flask python-dnspython requests
cd dns_historian
python dns-historian.py

Scheduled DNS lookups

Once the hostname is added, it needs to be periodically checked for changes. This is done with updater.py. A quick way to get started is simply install tmux and then:

tmux
python updater.py
You can’t perform that action at this time.