tailscale / tailscale/tailscale
Don't route subnets being advertised
- Dominant language
- Go
- Stars
- 36.5k
- Forks
- 3.2k
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 132
Description
### What is the issue?
With the availability of subnet router high availability, I tried setting up 2 subnet routers today. I found that when not using snat, when the secondary subnet router wants to communicate with the local subnet that it is advertising, it still goes through the other subnet router. I've been frustrated by #6050 in the past but I could understand it. But this is just stupid. If two subnet routers are set to advertise the same route on the same network, they should both communicate with the network directly not depend on each other. One of my biggest frustrations with tailscale has been the performance when using subnet routers. There's just no computer powerful enough to handle thousands of clients on network routing multiple gigabits of bandwidth through WG. I want to be able to add a second subnet router to spread out the load.
### Steps to reproduce
Configure 2 subnet routers on the same local network advertising the same route and accepting routes. Disable snat.
Enable routes in tailscale console.
Use tcpdump on both device's primary interfaces. You'll see that if you ping one or the other, one will respond directly, and the other you'll see the response come from the other.
### Are there any recent changes that introduced the issue?
_No response_
### OS
Linux
### OS version
Ubuntu 22.04.2
### Tailscale version
1.40.1
### Other software
Edgerouter load balancing between the two subnet routers for outbound traffic
### Bug report
BUG-7ad75f5eccda7dbf47821bfcc67d2635b0133a28f2d65acd49e005aecdd1c5c4-20230530045259Z-43891d4913aa0df3
Contributor guide
Assessment
This issue has not been assessed yet.