tailscale / tailscale/tailscale

When using IP Pool to define CIDR range it will get a hardcoded 100.64/10 route and interfere with existing CGNAT infrastructure.

Open
#12,828 7 comments 8 reactions 0 assignees View on GitHub
bug needs-triage
Dominant language
Go
Stars
36.5k
Forks
3.2k
Avg merge
2d 3h
Merged PRs (30d)
123

Description

### What is the issue?

If a network is already using a 100.64/10 network and implements subnet routers and IP Pool with Tailscale it looks like Tailscale adds a hardcoded route encompassing the whole space, even if a subset of IP's has been defined using the IP Pool feature.

> When tailscale starts, it looks like we add a route with the hardcoded RFC-6598 address space, even if you’ve defined an IP pool for the tailscale nodes: https://github.com/search?q=repo%3Atailscale%2Ftailscale%20100.64.0.0%2F10&type=code -

and more info:

> Tailscale puts in a route for [100.64.0.0/10](http://100.64.0.0/10) whenever connected to the Tailnet. We have devices and services already in that space, and that’s where our main Tailscale subnet routers need to reside (and will have 100.64.x.x addresses on their ethernet interfaces). I’ve already defined an IP Pool to constrain Tailscale clients to [100.65.64.0/22](http://100.65.64.0/22), but it looks like the routes for Tailscale are likely still being set to [100.64.0.0/10](http://100.64.0.0/10).
Is there a way to have Tailscale set a route for the tailnet to equal what is set for the IP Pool? So for me the tailnet would be a route for [100.65.64.0/22](http://100.65.64.0/22)?

### Steps to reproduce

Have an existing 100.64/10 network and implement IP Pools and subnet routers. They will have a hardcoded route for the whole range vs just the IP Pool.

Reported to us by a customer with a CGNAT network.

### Are there any recent changes that introduced the issue?

_No response_

### OS

_No response_

### OS version

_No response_

### Tailscale version

_No response_

### Other software

_No response_

### Bug report

_No response_

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.