Tailscale IP addresses - unique?

Hello,

A quick question: The documentation states that Tailscale’s 100.x.x.x IP addresses are assigned uniquely.

Are they globally unique or are they unique within each network?

ie would it possible (however unlikely) for there to be an IP address collision between my use and another user?

Thanks,

Steve

They are globally unique.

…for now. We reserve the right to do a bit more magic as the total network size inevitably grows too large to fit in that subnet. This is not too hard since the “sharing points” between networks are well contained.

1 Like

Glad I kept searching before asking about this. Already answered, as usual. Would you be looking at, effectively, NATing across the “sharing points”?

Only asking 'cos this looks like a reply of public IP addresses.

We’ll end up trying a few different things. But my first approximation is that almost all nodes on almost all networks will be used as 100% client mode rather than as servers. If that’s the case, then it’s safer to share those IP addresses and even reassign them occasionally.

For a server, there will be few overlaps with other servers in the first place, and yes, we could consider NATting them at share time (for example if I share 100.100.1.1 with you, it might appear as 100.101.2.3 on your side). That might not be super elegant, but nothing with IPv4 ever is nowadays.

A longer-term option is to use IPv6-over-tailscale. There are so many addresses there that we should never need to do address reallocation. But that requires IPv6 to not be disabled on each node. (It doesn’t require actual IPv6 internet connectivity, mercifully.)