tailscale / tailscale/tailscale

FR: Geocast Tailscale IP addresses based on latency

Open
#5,548 2 comments 2 reactions 0 assignees View on GitHub
fr L3 Some users P2 Aggravating T0 New feature
Dominant language
Go
Stars
36.5k
Forks
3.2k
Avg merge
2d 3h
Merged PRs (30d)
123

Description

### What are you trying to do?

I'd like to have static Tailscale IPs resolving devices based on tags and latency.

My goal is to disseminate corporate DNS servers around the world and be able to have Tailscale select automatically one devices based on latency from the client.

```mermaid
graph LR;
A["client (Japan)"] ------> B["100.100.200.1 (tag:dns)"];
B ======> C["100.64.u.v DNS-01 (Malaysia, tag:dns, latency=45ms)"];
B ------> D["100.64.x.y DNS-02 (Germany, tag:dns, latency=230ms)"];
```
```mermaid
graph LR;
E["client (France)"] ------> B["100.100.200.1 (tag:dns)"];
B ------> C["100.64.u.v DNS-01 (Malaysia tag:dns, latency=180ms)"];
B ======> D["100.64.x.y DNS-02 (Germany tag:dns, latency=15ms)"];
```

In this all devices tagged `dns` would also have the `100.100.200.1` IP on the tailscale interface and traffic towards 100.100.200.1 would be forwarded to the device having the smallest latency with the client.

### How should we solve this?

Code, lots of but not too much.

### What is the impact of not solving this?

I'd be sad :'(

### Anything else?

Tailscale rocks.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.