|
|
|
@ -20,6 +20,7 @@ import (
|
|
|
|
|
"github.com/tailscale/wireguard-go/wgcfg"
|
|
|
|
|
"tailscale.com/ipn"
|
|
|
|
|
"tailscale.com/tailcfg"
|
|
|
|
|
"tailscale.com/version"
|
|
|
|
|
"tailscale.com/wgengine/router"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
@ -55,7 +56,7 @@ specify any flags, options are reset to their default.
|
|
|
|
|
upf.StringVar(&upArgs.authKey, "authkey", "", "node authorization key")
|
|
|
|
|
upf.StringVar(&upArgs.hostname, "hostname", "", "hostname to use instead of the one provided by the OS")
|
|
|
|
|
upf.BoolVar(&upArgs.enableDERP, "enable-derp", true, "enable the use of DERP servers")
|
|
|
|
|
if runtime.GOOS == "linux" || isBSD(runtime.GOOS) {
|
|
|
|
|
if runtime.GOOS == "linux" || isBSD(runtime.GOOS) || version.OS() == "macOS" {
|
|
|
|
|
upf.StringVar(&upArgs.advertiseRoutes, "advertise-routes", "", "routes to advertise to other nodes (comma-separated, e.g. 10.0.0.0/8,192.168.0.0/24)")
|
|
|
|
|
}
|
|
|
|
|
if runtime.GOOS == "linux" {
|
|
|
|
@ -113,14 +114,14 @@ func warning(format string, args ...interface{}) {
|
|
|
|
|
fmt.Printf("Warning: "+format+"\n", args...)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// checkIPForwarding prints warnings on linux if IP forwarding is not
|
|
|
|
|
// checkIPForwarding prints warnings if IP forwarding is not
|
|
|
|
|
// enabled, or if we were unable to verify the state of IP forwarding.
|
|
|
|
|
func checkIPForwarding() {
|
|
|
|
|
var key string
|
|
|
|
|
|
|
|
|
|
if runtime.GOOS == "linux" {
|
|
|
|
|
key = "net.ipv4.ip_forward"
|
|
|
|
|
} else if isBSD(runtime.GOOS) {
|
|
|
|
|
} else if isBSD(runtime.GOOS) || version.OS() == "macOS" {
|
|
|
|
|
key = "net.inet.ip.forwarding"
|
|
|
|
|
} else {
|
|
|
|
|
return
|
|
|
|
|