Josh Bleecher Snyder and Josh Bleecher Snyder
25df067dd0
all: adapt to opaque netaddr types
...
This commit is a mishmash of automated edits using gofmt:
gofmt -r 'netaddr.IPPort{IP: a, Port: b} -> netaddr.IPPortFrom(a, b)' -w .
gofmt -r 'netaddr.IPPrefix{IP: a, Port: b} -> netaddr.IPPrefixFrom(a, b)' -w .
gofmt -r 'a.IP.Is4 -> a.IP().Is4' -w .
gofmt -r 'a.IP.As16 -> a.IP().As16' -w .
gofmt -r 'a.IP.Is6 -> a.IP().Is6' -w .
gofmt -r 'a.IP.As4 -> a.IP().As4' -w .
gofmt -r 'a.IP.String -> a.IP().String' -w .
And regexps:
\w*(.*)\.Port = (.*) -> $1 = $1.WithPort($2)
\w*(.*)\.IP = (.*) -> $1 = $1.WithIP($2)
And lots of manual fixups.
Signed-off-by: Josh Bleecher Snyder <josh@tailscale.com >
2021-05-16 14:52:00 -07:00
Brad Fitzpatrick and Brad Fitzpatrick
5b52b64094
tsnet: add Tailscale-as-a-library package
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2021-05-14 12:46:42 -07:00
Brad Fitzpatrick and David Crawshaw
b8fb8264a5
wgengine/netstack: avoid delivering incoming packets to both netstack + host
...
The earlier eb06ec172f fixed
the flaky SSH issue (tailscale/corp#1725 ) by making sure that packets
addressed to Tailscale IPs in hybrid netstack mode weren't delivered
to netstack, but another issue remained:
All traffic handled by netstack was also potentially being handled by
the host networking stack, as the filter hook returned "Accept", which
made it keep processing. This could lead to various random racey chaos
as a function of OS/firewalls/routes/etc.
Instead, once we inject into netstack, stop our caller's packet
processing.
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2021-05-06 06:43:16 -07:00
Brad Fitzpatrick and Brad Fitzpatrick
eb06ec172f
wgengine/netstack: don't pass non-subnet traffic to netstack in hybrid mode
...
Fixes tailscale/corp#1725
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2021-05-05 13:38:55 -07:00
Josh Bleecher Snyder
eb2a9d4ce3
wgengine/netstack: log error when acceptUDP fails
...
I see a bunch of these in some logs I'm looking at,
separated only by a few seconds.
Log the error so we can tell what's going on here.
Signed-off-by: Josh Bleecher Snyder <josharian@gmail.com >
2021-04-21 12:25:01 -07:00
Naman Sood and GitHub
4a90a91d29
wgengine/netstack: log ForwarderRequest in readable form, only in debug mode ( #1758 )
...
* wgengine/netstack: log ForwarderRequest in readable form, only in debug mode
Fixes #1757
Signed-off-by: Naman Sood <mail@nsood.in >
2021-04-21 14:50:48 -04:00
Brad Fitzpatrick and Brad Fitzpatrick
d488678fdc
cmd/tailscaled, wgengine{,/netstack}: add netstack hybrid mode, add to Windows
...
For #707
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2021-04-06 21:37:28 -07:00
Naman Sood and GitHub
31c7745631
wgengine/netstack: stop re-adding IPs registered by active TCP connections ( #1629 )
...
Signed-off-by: Naman Sood <mail@nsood.in >
2021-03-31 15:32:33 -04:00
Naman Sood and GitHub
662fbd4a09
wgengine/netstack: Allow userspace networking mode to expose subnets ( #1588 )
...
wgengine/netstack: Allow userspace networking mode to expose subnets
Updates #504
Updates #707
Signed-off-by: Naman Sood <mail@nsood.in >
2021-03-29 14:33:05 -04:00
David Anderson
016de16b2e
net/tstun: rename TUN to Wrapper.
...
The tstun packagen contains both constructors for generic tun
Devices, and a wrapper that provides additional functionality.
Signed-off-by: David Anderson <danderson@tailscale.com >
2021-03-26 23:15:22 -07:00
David Anderson and Dave Anderson
588b70f468
net/tstun: merge in wgengine/tstun.
...
Signed-off-by: David Anderson <danderson@tailscale.com >
2021-03-26 22:31:54 -07:00
Brad Fitzpatrick and Brad Fitzpatrick
e2b3d9aa5f
all: s/Magic DNS/MagicDNS/ for consistency
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2021-03-23 14:25:28 -07:00
Brad Fitzpatrick and Brad Fitzpatrick
aa79a57f63
wgengine/netstack: use inet.af/netstack, remove 64-bit only limitation
...
This reverts the revert commit 84aba349d9 .
And changes us to use inet.af/netstack.
Updates #1518
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2021-03-17 22:46:09 -07:00
David Anderson
84aba349d9
Revert "wgengine/netstack: update gvisor to remove 64-bit only limitation"
...
Breaks our corp repo due to gRPC dependency hell.
This reverts commit d42f8b7f9a .
2021-03-16 15:36:06 -07:00
Brad Fitzpatrick and Brad Fitzpatrick
d42f8b7f9a
wgengine/netstack: update gvisor to remove 64-bit only limitation
...
gVisor fixed their google/gvisor#1446 so we can include gVisor mode
on 32-bit machines.
A few minor upstream API changes, as normal.
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2021-03-15 21:02:51 -07:00
Naman Sood
770aa71ffb
client, cmd/hello, ipn, wgengine: fix whois for netstack-forwarded connections
...
Updates #504
Updates #707
Signed-off-by: Naman Sood <mail@nsood.in >
2021-03-15 18:14:09 -04:00
Naman Sood
4c80344e27
wgengine/netstack: stop UDP forwarding when one side dies
...
Updates #504
Updates #707
Signed-off-by: Naman Sood <mail@nsood.in >
2021-03-08 13:59:37 -05:00
Naman Sood
7325b5a7ba
wgengine/netstack: add support for incoming UDP connections
...
Updates #504
Updates #707
Signed-off-by: Naman Sood <mail@nsood.in >
2021-03-08 13:27:27 -05:00
Brad Fitzpatrick
f858b0d25f
wgengine/netstack: remove some v2 logging by default
...
Even with [v2], it still logtails and takes time to format.
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2021-03-03 10:37:06 -08:00
Naman Sood
d01c60dad5
wgengine/netstack: use system dialer to contact servers on localhost
...
Updates #504
Updates #707
Signed-off-by: Naman Sood <mail@nsood.in >
2021-03-03 13:27:50 -05:00
Naman Sood
95c03d1ead
wgengine/netstack: forward incoming connections to localhost
...
Updates #707
Updates #504
Signed-off-by: Naman Sood <mail@nsood.in >
2021-03-02 15:26:40 -05:00
Brad Fitzpatrick
a038e8690c
wgengine/netstack: fix 32-bit build broken from prior commit
...
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2021-03-01 11:19:31 -08:00
Brad Fitzpatrick
38dc6fe758
cmd/tailscaled, wgengine: remove --fake, replace with netstack
...
And add a --socks5-server flag.
And fix a race in SOCKS5 replies where the response header was written
concurrently with the copy from the backend.
Co-authored with Naman Sood.
Updates #707
Updates #504
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2021-03-01 11:09:19 -08:00
Brad Fitzpatrick and Brad Fitzpatrick
d74cddcc56
wgengine/netstack: add Magic DNS + DNS resolution to SOCKS5 dialing
...
Updates #707
Updates #504
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2021-03-01 09:10:05 -08:00
Naman Sood and Brad Fitzpatrick
fec9dcbda1
wgengine/netstack: start SOCKS5 server in netstack mode
...
Updates #707
Updates #504
Signed-off-by: Naman Sood <mail@nsood.in >
2021-02-26 13:44:49 -08:00
Naman Sood and GitHub
517c90d7e5
wgengine, cmd/tailscaled: refactor netstack, forward TCP to hello as demo ( #1301 )
...
Updates #707
Updates #504
Signed-off-by: Naman Sood <mail@nsood.in >
2021-02-25 14:18:16 -05:00
Brad Fitzpatrick and Brad Fitzpatrick
1e7a35b225
types/netmap: split controlclient.NetworkMap off into its own leaf package
...
Updates #1278
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com >
2021-02-05 16:18:52 -08:00
Naman Sood and GitHub
420c7a35e2
wgengine/netstack: use tailscale IPs instead of a hardcoded one ( #1131 )
...
Signed-off-by: Naman Sood <mail@nsood.in >
2021-01-15 09:16:28 -05:00
Naman Sood and GitHub
f69e46175d
wengine/netstack: bump gvisor to latest version
...
* wengine/netstack: bump gvisor to latest version
Signed-off-by: Naman Sood <naman@tailscale.com >
* update dependencies
Signed-off-by: Naman Sood <naman@tailscale.com >
* Don't change hardcoded IP
Signed-off-by: Naman Sood <naman@tailscale.com >
2021-01-11 15:46:48 -05:00
Brad Fitzpatrick
8b0112649a
wgengine/netstack: don't build netstack on 32-bit platforms
...
See google/gvisor#5241
2021-01-11 09:56:05 -08:00
Brad Fitzpatrick
5aa5db89d6
cmd/tailscaled, wgengine/netstack: add start of gvisor userspace netstack work
...
Not usefully functional yet (mostly a proof of concept), but getting
it submitted for some work @namansood is going to do atop this.
Updates #707
Updates #634
Updates #48
Updates #835
2021-01-11 09:31:14 -08:00