tailscale/derp/derphttp
Brad Fitzpatrick 4732722b87 derp: add frameClosePeer to move around clients within a region
For various reasons (mostly during rollouts or config changes on our
side), nodes may end up connecting to a fallback DERP node in a
region, rather than the primary one we tell them about in the DERP
map.

Connecting to the "wrong" node is fine, but it's in our best interest
for all nodes in a domain to connect to the same node, to reduce
intra-region packet forwarding.

This adds a privileged frame type used by the control system that can
kick off a client connection when they're connected to the wrong node
in a region. Then they hopefully reconnect immediately to the correct
location. (If not, we can leave them alone and stop closing them.)

Updates tailscale/corp#372
2020-06-25 09:33:10 -07:00
..
derphttp_client.go derp: add frameClosePeer to move around clients within a region 2020-06-25 09:33:10 -07:00
derphttp_server.go derp: introduce Conn interface 2020-03-12 14:42:48 -04:00
derphttp_test.go derp: reduce DERP memory use; don't require callers to pass in memory to use 2020-06-15 10:26:50 -07:00
mesh_client.go cmd/derper, derp/derphttp: move bulk of derp mesh code into derphttp 2020-06-15 11:58:10 -07:00