commit c72a6526b64d33b01a0efd3bd7eada25be7eb8fa Author: teor teor2345@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}
tor-commits@lists.torproject.org