This is my collection of scripts for cjdns.
Some of them have obvious uses, others don't. Most require ~/.cjdnsadmin
and the cjdns python libraries to be installed. I'll try to give a quick
breakdown:
-
addeth.pyscans for all non-virtual ethernet adapters and adds them to the ETHInterface's config section. Note that at this time having more than one ETHInterface doesn't seem to actually work (only the first one is used). -
addpass.pyis my script to easily add authorized passwords to my nodes. It assumes that thecjdroute.conffile is at/etc/cjdroute.confand is valid JSON, and it assumes there is a.cjdnsadminfile in your home directory. The path to the conf file can be changed on line 88. -
allnodes.pyprints out every unique IP in the routing table, one per line. This is handy for piping to nmap or similar. -
cjdns-getpass.pyis basicallypeerStatsfrom cjdns'scontrib/pythonfolder, but I made it beforepeerStatsexisted. Basically useless now. -
installcjdns.shwas my all-in-one installer script for my own nodes to get cjdns up and running. May or may not actually work, and I think it relies on remote content on my server, so maybe don't use it. -
peercron.pyis/was used by the HIA (Hyperboria Intelligence Agency) to periodically record information about our peers in order to detect changes. -
pingall.shreads a file calledhosts.txtand ssh's into all of the hosts listed in it and pings the IP specified, returning the time it took to ping. I use this to determine the best node to peer someone with. -
resolveips.pyappears to do some kind of rDNS-style resolution from a list of nodes. -
routingtable.pyappears to print out bits or all of the routing table. -
threadedVersionCheck.pyis eventually going to be a threaded version ofpeercron.py
