tailscale/wgengine
Brad Fitzpatrick 3ae701f0eb net/tsaddr, wgengine/netstack: add IPv6 range that forwards to site-relative IPv4
This defines a new magic IPv6 prefix, fd7a:115c:a1e0:b1a::/64, a
subset of our existing /48, where the final 32 bits are an IPv4
address, and the middle 32 bits are a user-chosen "site ID". (which
must currently be 0000:00xx; the top 3 bytes must be zero for now)

e.g., I can say my home LAN's "site ID" is "0000:00bb" and then
advertise its 10.2.0.0/16 IPv4 range via IPv6, like:

    tailscale up --advertise-routes=fd7a:115c:a1e0:b1a::bb:10.2.0.0/112

(112 being /128 minuse the /96 v6 prefix length)

Then people in my tailnet can:

     $ curl '[fd7a:115c:a1e0:b1a::bb:10.2.0.230]'
     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ....

Updates #3616, etc

RELNOTE=initial support for TS IPv6 addresses to route v4 "via" specific nodes

Change-Id: I9b49b6ad10410a24b5866b9fbc69d3cae1f600ef
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2022-04-11 17:26:07 -07:00
..
bench types/netmap: use key.NodePublic instead of tailcfg.NodeKey. 2021-11-01 17:07:40 -07:00
filter all: use strings.Cut even more 2022-03-19 13:02:38 -07:00
magicsock all: use strings.Cut even more 2022-03-19 13:02:38 -07:00
monitor wgengine/monitor: ignore duplicate RTM_NEWADDRs 2022-04-11 14:35:19 -07:00
netstack net/tsaddr, wgengine/netstack: add IPv6 range that forwards to site-relative IPv4 2022-04-11 17:26:07 -07:00
router all: use any instead of interface{} 2022-03-17 11:35:09 -07:00
wgcfg all: use any instead of interface{} 2022-03-17 11:35:09 -07:00
wglog all: use any instead of interface{} 2022-03-17 11:35:09 -07:00
winnet all: gofmt -w -s (simplify) tests 2021-12-15 08:43:41 -08:00
mem_ios.go go.mod: upgrade wireguard-windows, de-fork wireguard-go 2021-05-25 13:18:21 -07:00
pendopen.go envknob: add new package for all the strconv.ParseBool(os.Getenv(..)) 2022-01-24 11:51:23 -08:00
userspace_ext_test.go go.mod: upgrade wireguard-windows, de-fork wireguard-go 2021-05-25 13:18:21 -07:00
userspace_test.go all: gofmt -w -s (simplify) tests 2021-12-15 08:43:41 -08:00
userspace.go net/dns, net/dns/resolver, wgengine: refactor DNS request path (#4364) 2022-04-08 12:17:31 -07:00
watchdog_test.go all: use any instead of interface{} 2022-03-17 11:35:09 -07:00
watchdog.go all: use any instead of interface{} 2022-03-17 11:35:09 -07:00
wgengine.go ipn/ipnlocal: do not process old status messages received out of order 2022-03-26 20:23:50 -07:00