[tor-commits] [chutney/master] Add IPv6 single onion network flavours

teor at torproject.org teor at torproject.org
Wed Sep 14 02:05:09 UTC 2016


commit c72a6526b64d33b01a0efd3bd7eada25be7eb8fa
Author: teor <teor2345 at gmail.com>
Date:   Tue Sep 6 14:16:47 2016 +1000

    Add IPv6 single onion network flavours
    
    The new flavours are:
    * single-onion-client-ipv6: an IPv6 client with a single onion service
    * single-onion-ipv6: IPv6 and IPv4 clients with an IPv6 single onion service
---
 networks/single-onion-client-ipv6         | 24 ++++++++++++++++++++++++
 networks/single-onion-ipv6                | 25 +++++++++++++++++++++++++
 torrc_templates/single-onion-only-v6.tmpl |  3 +++
 torrc_templates/single-onion-use-v6.tmpl  |  3 +++
 4 files changed, 55 insertions(+)

diff --git a/networks/single-onion-client-ipv6 b/networks/single-onion-client-ipv6
new file mode 100644
index 0000000..9f19915
--- /dev/null
+++ b/networks/single-onion-client-ipv6
@@ -0,0 +1,24 @@
+import os
+# By default, Authorities are not configured as exits
+Authority6 = Node(tag="a", authority=1, relay=1,
+                  ipv6_addr=os.environ.get('CHUTNEY_LISTEN_ADDRESS_V6',
+                                           '[::1]'),
+                  torrc="authority-orport-v6.tmpl")
+NonExitRelay6 = Node(tag="r", relay=1,
+                     ipv6_addr=os.environ.get('CHUTNEY_LISTEN_ADDRESS_V6',
+                                              '[::1]'),
+                     torrc="relay-orport-v6-non-exit.tmpl")
+Client6 = Node(tag="c", torrc="client-only-v6.tmpl")
+SingleOnion = Node(tag="h", hs=1, torrc="single-onion.tmpl")
+
+# Since only 25% of relays get the guard flag,
+# TestingDirAuthVoteGuard * may need to be used in small networks
+
+# A hidden service needs 5 authorities/relays to ensure it can build HS
+# connections:
+# a minimum path length of 3, plus the client-nominated rendezvous point,
+# plus a seperate introduction point
+NODES = Authority6.getN(2) + NonExitRelay6.getN(3) + \
+        Client6.getN(1) + SingleOnion.getN(1)
+
+ConfigureNodes(NODES)
diff --git a/networks/single-onion-ipv6 b/networks/single-onion-ipv6
new file mode 100644
index 0000000..392de36
--- /dev/null
+++ b/networks/single-onion-ipv6
@@ -0,0 +1,25 @@
+import os
+# By default, Authorities are not configured as exits
+Authority6 = Node(tag="a", authority=1, relay=1,
+                  ipv6_addr=os.environ.get('CHUTNEY_LISTEN_ADDRESS_V6',
+                                           '[::1]'),
+                  torrc="authority-orport-v6.tmpl")
+NonExitRelay6 = Node(tag="r", relay=1,
+                     ipv6_addr=os.environ.get('CHUTNEY_LISTEN_ADDRESS_V6',
+                                              '[::1]'),
+                     torrc="relay-orport-v6-non-exit.tmpl")
+Client = Node(tag="c", torrc="client.tmpl")
+Client6 = Node(tag="c", torrc="client-only-v6.tmpl")
+SingleOnion6 = Node(tag="h", hs=1, torrc="single-onion-only-v6.tmpl")
+
+# Since only 25% of relays get the guard flag,
+# TestingDirAuthVoteGuard * may need to be used in small networks
+
+# A hidden service needs 5 authorities/relays to ensure it can build HS
+# connections:
+# a minimum path length of 3, plus the client-nominated rendezvous point,
+# plus a seperate introduction point
+NODES = Authority6.getN(2) + NonExitRelay6.getN(3) + \
+        Client.getN(1) + Client6.getN(1) + SingleOnion6.getN(1)
+
+ConfigureNodes(NODES)
diff --git a/torrc_templates/single-onion-only-v6.tmpl b/torrc_templates/single-onion-only-v6.tmpl
new file mode 100644
index 0000000..8c72612
--- /dev/null
+++ b/torrc_templates/single-onion-only-v6.tmpl
@@ -0,0 +1,3 @@
+${include:single-onion.tmpl}
+# Onion services are just another kind of client
+${include:client-only-v6.i}
diff --git a/torrc_templates/single-onion-use-v6.tmpl b/torrc_templates/single-onion-use-v6.tmpl
new file mode 100644
index 0000000..d2db003
--- /dev/null
+++ b/torrc_templates/single-onion-use-v6.tmpl
@@ -0,0 +1,3 @@
+${include:single-onion.tmpl}
+# Onion services are just another kind of client
+${include:client-use-v6.i}



More information about the tor-commits mailing list