You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
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>
3 years ago
..
bench types/netmap: use key.NodePublic instead of tailcfg.NodeKey. 3 years ago
filter all: use strings.Cut even more 3 years ago
magicsock all: use strings.Cut even more 3 years ago
monitor wgengine/monitor: ignore duplicate RTM_NEWADDRs 3 years ago
netstack net/tsaddr, wgengine/netstack: add IPv6 range that forwards to site-relative IPv4 3 years ago
router all: use any instead of interface{} 3 years ago
wgcfg all: use any instead of interface{} 3 years ago
wglog all: use any instead of interface{} 3 years ago
winnet all: gofmt -w -s (simplify) tests 3 years ago
mem_ios.go go.mod: upgrade wireguard-windows, de-fork wireguard-go 4 years ago
pendopen.go envknob: add new package for all the strconv.ParseBool(os.Getenv(..)) 3 years ago
userspace.go net/dns, net/dns/resolver, wgengine: refactor DNS request path (#4364) 3 years ago
userspace_ext_test.go go.mod: upgrade wireguard-windows, de-fork wireguard-go 4 years ago
userspace_test.go all: gofmt -w -s (simplify) tests 3 years ago
watchdog.go all: use any instead of interface{} 3 years ago
watchdog_test.go all: use any instead of interface{} 3 years ago
wgengine.go ipn/ipnlocal: do not process old status messages received out of order 3 years ago