Brad Fitzpatrick 
							
						 
					 
					
						
						
							
						
						ed8587f90d 
					 
					
						
						
							
							wgengine/router: take a link monitor  
						
						 
						
						... 
						
						
						
						Prep for #1591  which will need to make Linux's router react to changes
that the link monitor observes.
The router package already depended on the monitor package
transitively. Now it's explicit.
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com > 
						
						
					 
					
						2021-07-20 13:43:40 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Josh Bleecher Snyder 
							
						 
					 
					
						
						
							
						
						1ece91cede 
					 
					
						
						
							
							go.mod: upgrade wireguard-windows, de-fork wireguard-go  
						
						 
						
						... 
						
						
						
						Pull in the latest version of wireguard-windows.
Switch to upstream wireguard-go.
This requires reverting all of our import paths.
Unfortunately, this has to happen at the same time.
The wireguard-go change is very low risk,
as that commit matches our fork almost exactly.
(The only changes are import paths, CI files, and a go.mod entry.)
So if there are issues as a result of this commit,
the first place to look is wireguard-windows changes.
Signed-off-by: Josh Bleecher Snyder <josh@tailscale.com > 
						
						
					 
					
						2021-05-25 13:18:21 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								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  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Maisem Ali 
							
						 
					 
					
						
						
							
						
						4f3203556d 
					 
					
						
						
							
							wgengine/router: add the Tailscale ULA route on darwin.  
						
						 
						
						... 
						
						
						
						Signed-off-by: Maisem Ali <maisem@tailscale.com > 
						
						
					 
					
						2021-04-15 17:07:50 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								David Anderson 
							
						 
					 
					
						
						
							
						
						19eca34f47 
					 
					
						
						
							
							wgengine/router: fix FreeBSD configuration failure on the v6 /48.  
						
						 
						
						... 
						
						
						
						On FreeBSD, we add the interface IP as a /48 to work around a kernel
bug, so we mustn't then try to add a /48 route to the Tailscale ULA,
since that will fail as a dupe.
Signed-off-by: David Anderson <danderson@tailscale.com > 
						
						
					 
					
						2021-04-10 19:36:26 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								David Anderson 
							
						 
					 
					
						
						
							
						
						4c61ebacf4 
					 
					
						
						
							
							wgengine: move DNS configuration out of wgengine/router.  
						
						 
						
						... 
						
						
						
						Signed-off-by: David Anderson <danderson@tailscale.com > 
						
						
					 
					
						2021-04-05 10:55:35 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								David Anderson 
							
						 
					 
					
						
						
							
						
						fcfc0d3a08 
					 
					
						
						
							
							net/dns: remove ManagerConfig, pass relevant args directly.  
						
						 
						
						... 
						
						
						
						Signed-off-by: David Anderson <danderson@tailscale.com > 
						
						
					 
					
						2021-04-01 23:26:52 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								David Anderson 
							
						 
					 
					
						
						
							
						
						0a84aaca0a 
					 
					
						
						
							
							wgengine/router: remove unused wireguard *Device argument.  
						
						 
						
						... 
						
						
						
						Signed-off-by: David Anderson <danderson@tailscale.com > 
						
						
					 
					
						2021-03-26 19:43:13 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								David Anderson 
							
						 
					 
					
						
						
							
						
						672731ac6f 
					 
					
						
						
							
							many: gofmt.  
						
						 
						
						... 
						
						
						
						Signed-off-by: David Anderson <danderson@tailscale.com > 
						
						
					 
					
						2021-03-25 17:41:51 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								David Anderson 
							
						 
					 
					
						
						
							
						
						9f7f2af008 
					 
					
						
						
							
							wgengine/router/dns: move to net/dns.  
						
						 
						
						... 
						
						
						
						Preparation for merging the APIs and whatnot.
Signed-off-by: David Anderson <danderson@tailscale.com > 
						
						
					 
					
						2021-03-25 16:25:30 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Brad Fitzpatrick 
							
						 
					 
					
						
						
							
						
						d580b3f09e 
					 
					
						
						
							
							wgengine/router: fix go vet failure on BSDs  
						
						 
						
						... 
						
						
						
						Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com > 
						
						
					 
					
						2021-03-15 14:27:39 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denton Gentry 
							
						 
					 
					
						
						
							
						
						bcea88da46 
					 
					
						
						
							
							wgengine: support FreeBSD with IPv6.  
						
						 
						
						... 
						
						
						
						Fixes https://github.com/tailscale/tailscale/issues/1307  for keepsies.
We cannot set the tun interface address as a /128 on FreeBSD,
due to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=218508 
Instead we set the interface address as a /48, which is enabled
by commit 82edf94df7 .
Signed-off-by: Denton Gentry <dgentry@tailscale.com > 
						
						
					 
					
						2021-03-05 19:34:14 -08:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denton Gentry 
							
						 
					 
					
						
						
							
						
						c8af6bc009 
					 
					
						
						
							
							Revert "freebsd: ignore IPv6 for now"  
						
						 
						
						... 
						
						
						
						This reverts commit 061422affc .
We have a way to support IPv6 on FreeBSD now.
Signed-off-by: Denton Gentry <dgentry@tailscale.com > 
						
						
					 
					
						2021-03-05 19:34:14 -08:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denton Gentry 
							
						 
					 
					
						
						
							
						
						061422affc 
					 
					
						
						
							
							freebsd: ignore IPv6 for now  
						
						 
						
						... 
						
						
						
						FreeBSD tun devices don't work with the way we implement IPv6
https://github.com/tailscale/tailscale/issues/1307 
At least for now, remove any IPv6 addresses from the netmap.
Signed-off-by: Denton Gentry <dgentry@tailscale.com > 
						
						
					 
					
						2021-03-03 15:33:13 -08:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Brad Fitzpatrick 
							
						 
					 
					
						
						
							
						
						88ab0173a7 
					 
					
						
						
							
							wgengine/router: fix BSD router to support multiple local addrs, IPv6  
						
						 
						
						... 
						
						
						
						Fixes  #1201  
						
						
					 
					
						2021-02-11 19:13:03 -08:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Josh Bleecher Snyder 
							
						 
					 
					
						
						
							
						
						2fe770ed72 
					 
					
						
						
							
							all: replace wgcfg.IP and wgcfg.CIDR with netaddr types  
						
						 
						
						... 
						
						
						
						Signed-off-by: Josh Bleecher Snyder <josh@tailscale.com > 
						
						
					 
					
						2020-12-28 13:00:42 -08:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Brad Fitzpatrick 
							
						 
					 
					
						
						
							
						
						6d14678009 
					 
					
						
						
							
							wgengine/router: remove unnecessary newlines in log.Printf formats  
						
						 
						
						
						
						
					 
					
						2020-09-01 13:27:42 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Mike Kramlich 
							
						 
					 
					
						
						
							
						
						6fa7a9a055 
					 
					
						
						
							
							wgengine/router/router_userspace_bsd: on Mac the route program syntax expects delete not del -- this had caused router reconfig to fail in some cases.  Fixes   #673  
						
						 
						
						... 
						
						
						
						Signed-off-by: Mike Kramlich <groglogic@gmail.com > 
						
						
					 
					
						2020-08-12 13:22:19 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmytro Shynkevych 
							
						 
					 
					
						
						
							
						
						28e52a0492 
					 
					
						
						
							
							all: dns refactor, add Proxied and PerDomain flags from control ( #615 )  
						
						 
						
						... 
						
						
						
						Signed-off-by: Dmytro Shynkevych <dmytro@tailscale.com > 
						
						
					 
					
						2020-07-31 16:27:09 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmytro Shynkevych 
							
						 
					 
					
						
						
							
						
						8c850947db 
					 
					
						
						
							
							router: split off sandboxed path from router_darwin ( #624 )  
						
						 
						
						... 
						
						
						
						Signed-off-by: Dmytro Shynkevych <dmytro@tailscale.com > 
						
						
					 
					
						2020-07-31 01:10:14 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmytro Shynkevych 
							
						 
					 
					
						
						
							
						
						2ce2b63239 
					 
					
						
						
							
							router: stop iOS subprocess sandbox violations ( #617 )  
						
						 
						
						... 
						
						
						
						Signed-off-by: Dmytro Shynkevych <dmytro@tailscale.com > 
						
						
					 
					
						2020-07-29 21:09:18 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dmytro Shynkevych 
							
						 
					 
					
						
						
							
						
						30bbbe9467 
					 
					
						
						
							
							wgengine/router: dns: unify on *BSD, multimode on Linux, Magic DNS ( #536 )  
						
						 
						
						... 
						
						
						
						Signed-off-by: Dmytro Shynkevych <dmytro@tailscale.com > 
						
						
					 
					
						2020-07-14 09:12:00 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Reinaldo de Souza 
							
						 
					 
					
						
						
							
						
						a8635784bc 
					 
					
						
						
							
							wgengine: add BSD userspace router to darwin  
						
						 
						
						... 
						
						
						
						Darwin and FreeBSD are compatible enough to share the userspace router.
The OSX router delegates to the BSD userspace router unless `SetRoutesFunc` is set.
That preserves the mechanism that allows `ipn-go-bridge` to specify its own routing behavior.
Fixes  #177 
Signed-off-by: Reinaldo de Souza <github@rei.nal.do > 
						
						
					 
					
						2020-06-24 09:42:20 -07:00