[tahoe-lafs-trac-stream] [tahoe-lafs] #1010: use only 127.0.0.1 as local address
tahoe-lafs
trac at tahoe-lafs.org
Sun Jul 31 13:00:13 PDT 2011
#1010: use only 127.0.0.1 as local address
-------------------------+-------------------------------------------------
Reporter: duck | Owner: warner
Type: | Status: new
enhancement | Milestone: 1.9.0
Priority: minor | Version: 1.6.1
Component: code- | Keywords: privacy anonymity test docs anti-
network | censorship reviewed
Resolution: |
Launchpad Bug: |
-------------------------+-------------------------------------------------
Comment (by warner):
whoops, I *really* lost track of this one.
DS> I meant, what is lost by only having 127.0.0.1 in the list of
DS> addresses, all the time?
Um, if everyone in the grid only publishes 127.0.0.1, then how will
distant nodes ever connect to each other? Since we don't have UPnP or
NAT traversal, we need everyone (well, N-1) to have+publish a public IP
address.
This patch needs docs: in addition to making sure people can
successfully use this feature, we need to a place to answer the user
confusion that's likely to occur when someone assumes that
"tub.location=" should behave the same way as "#tub.location=". (I'm not
as sure that ["tub.location=" == anonymous] is the best UI for this, at
least not as sure as I was 15 months ago. The whole-config "anonymous"
flag feels like an important addition.)
gdt's observation in comment:18 is a good one. Ideally, pure-clients
should be able to hang out behind NAT and not admit to having a real
address. (I *think* the FURL location-hint format will tolerate this,
but I haven't actually tested it). We've always been on the fence about
whether Tahoe is a client-server system or a P2P system. Having clients
announce their addresses makes it more P2Pish.
I've had topology problems (servers behind NAT) which made me glad that
it's possible for servers to connect to clients too. To actually enable
this, I had to make my "clients" pretend to be servers (but with
storage.readonly=true): otherwise the servers wouldn't hear about the
client and wouldn't try to connect. Nodes only actually publish their
storage FURLs to the Introducer if they're configured as servers (see
{{{init_storage()}}} in client.py). But they'll reveal their FURLs
(along with their IP address) in any reference that passes over the
wire.
So anyways, I'm ok with this patch if it includes a paragraph in
docs/configuration.rst (in the section on tub.location) explaining what
happens when you use "tub.location=" and why you might want to do that.
If we find that it's hard to explain this feature in there, then maybe
it's not a good feature to add.
--
Ticket URL: <http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1010#comment:22>
tahoe-lafs <http://tahoe-lafs.org>
secure decentralized storage
More information about the tahoe-lafs-trac-stream
mailing list