aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBryan Newbold <bnewbold@robocracy.org>2017-11-28 23:34:54 -0800
committerBryan Newbold <bnewbold@robocracy.org>2017-11-28 23:34:54 -0800
commit5e844aca2081ef6d2e9615eea24b8a9d56f41c19 (patch)
tree7cbe70b87a05e51f8b6ca1439a7a45f433fc2307
parenta699c92cdceb0382d9bfec37724166145a7eb6df (diff)
downloadgeniza-5e844aca2081ef6d2e9615eea24b8a9d56f41c19.tar.gz
geniza-5e844aca2081ef6d2e9615eea24b8a9d56f41c19.zip
notes on DNS, DHT, etc
-rw-r--r--notes/network.md51
1 files changed, 51 insertions, 0 deletions
diff --git a/notes/network.md b/notes/network.md
new file mode 100644
index 0000000..85b97ee
--- /dev/null
+++ b/notes/network.md
@@ -0,0 +1,51 @@
+
+### dat-specific configuration
+
+Default servers are specified in the `dat-swarm-defaults` module. As of
+November 2017, they are:
+
+ Domain (for mDNS, centralized DNS):
+ dat.local
+
+ DNS Servers (centralized lookup):
+ discovery1.publicbits.org
+ discovery2.publicbits.org
+
+ DHT Bootstrap Servers:
+ bootstrap1.publicbits.org:6881
+ bootstrap2.publicbits.org:6881
+ bootstrap3.publicbits.org:6881
+ bootstrap4.publicbits.org:6881
+
+### mDNS and Centralized DNS Discovery
+
+`dns-discovery` node module.
+
+Refresh period: 1 minute
+
+Take the first 40 hex characters (lowercase; 20 bytes if decoded) of the
+discovery key (a BLAKE2b hash) instead of a SHA1 hash (which is what bittorrent
+uses). Prepend this to the domain (`dat.local` in the case of dat).
+
+There are both SRV and TXT records. SRV is straightforward, a response like:
+
+ 0 0 44113 172.19.0.4.
+
+TXT uses some un-documented token scheme... maybe mostly for mDNS, to update or
+"unannounce" records? Eg:
+
+ "token=kZabfUWLUw5A4E/EXM3+ka7UybMN95QJjqPk1iGmb0M=" "peers=rBMABKxR"
+
+Example lookup:
+
+ dig @discovery1.publicbits.org 905fd1b6504698425e8bec3dbb77d757e281d505.dat.local SRV
+
+Note that you might need to do lookup on *both* servers? Results can be
+different from either individually.
+
+### DHT Discovery
+
+`discovery-channel`
+
+Refresh period: 10 minutes
+