From 4c67050673223d4ff714a3bae68e1528fefcc84e Mon Sep 17 00:00:00 2001 From: kaotisk Date: Sun, 24 Sep 2023 00:24:55 +0300 Subject: cjdns network scanner prototype --- bin/ak-cjdns-scanner | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100755 bin/ak-cjdns-scanner diff --git a/bin/ak-cjdns-scanner b/bin/ak-cjdns-scanner new file mode 100755 index 0000000..b7dd53c --- /dev/null +++ b/bin/ak-cjdns-scanner @@ -0,0 +1,22 @@ +#!/bin/bash +# +# Needs CJDNS tools in your PATH +# +# Ref: https://github.com/cjdelisle/cjdns +# +counter=0 +printf '[' > walk.aknet +dumpLinks | cut -d ' ' -f 2,4 | sed 's/ /\n/g' | sort | uniq | while read -r ip || [ -n "$ip" ] +do + akid="`curl --connect-timeout 3 "http://[$(publictoip6 $ip)]:8610/v0/akid" 2>/dev/null`" + if [ "$?" == "0" ] + then + if [ "$counter" -ne "0" ] + then + printf ',' >> walk.aknet + fi + printf '{"cjdnsPublicKey":"%s","cjdnsIp":"%s","akid":%s}' "$ip" "`publictoip6 $ip`" "$akid" >> walk.aknet + counter="`expr $counter + 1`" + fi +done +printf ']' >> walk.aknet -- cgit v1.2.3