From 6b2937bcd06ee285f12acd334224afe4b5883934 Mon Sep 17 00:00:00 2001 From: Arceliar Date: Thu, 25 Jan 2018 18:58:33 -0600 Subject: [PATCH] update documentation, and a minor change to the signal handler in yggdrasil.go --- README.md | 8 ++++++-- yggdrasil.go | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 257724d..9cc582d 100644 --- a/README.md +++ b/README.md @@ -19,9 +19,13 @@ You're encouraged to play with it, but I strongly advise against using it for an Note that you can cross compile by specifying the `$GOOS` and `$GOARCH` environment variables. The build script sets its own `$GOPATH`, so the build environment is self-contained. -This code should work on Linux and macOS, but see the optional example below for a way to share connectivity with the rest of a network. -It should also work on Windows 7 or later, but you will first need to install the OpenVPN NDIS 6 TAP driver. +This code should work out-of-the-box on most Linux distributions and macOS. +It should also work on recent versions of Windows, but it depends on the OpenVPN NDIS 5 TAP driver (tested with `tap-windows-9.9.2_3`, not that there issues when using NDIS 6 driver as of `tap-windows-9.21.2`). +Be aware that connectivity issues can occur on Windows if multiple IPv6 addresses from the `fd00::/8` prefix are assigned to the TAP interface. +If this happens, then you may need to manually remove the old/unused addresses from the interface (though the code has a workaround in place to do this automatically in some cases). + +You can also advertise a route on your LAN, enabling other devices to access the `fd00::/8` network, as shown in the optional example below. ## Running diff --git a/yggdrasil.go b/yggdrasil.go index fd57990..90ddb90 100644 --- a/yggdrasil.go +++ b/yggdrasil.go @@ -277,7 +277,7 @@ func main() { } // Catch interrupt to exit gracefully c := make(chan os.Signal, 1) - signal.Notify(c, os.Interrupt) + signal.Notify(c, os.Interrupt, os.Kill) <-c logger.Println("Stopping...") }