Hello, Back a few months ago I said here https://lists.cypherpunks.ru/pipermail/govpn-devel/2016-October/000108.html > I will investigate OSX, Android and Windows support soon. I'm glad to announce that I have a ported GoVPN to all these targets. The pull request is on it's way, but it bring a lot of changes: - Some OS don't allow you to pick the tun/tap interface name you want. In fact, for Android, only a file-descriptor is available, not even the interface name. Various changes had been made to be more flexible about this. - Client behave like server and the tun/tap interface can be set by the "script" executed at startup - The stats can be implemented as an other mechanism, but by default, CLI is still using the same JSON based HTTP interface - There is a "pre-up" executed before "up" step. CLI binaries behave the same as before. - The client state as a Go library had been improved a lot and it assume less about it's own behavior, such as: no need to use os.Signal to stop client loop. Basically, the user side don't change at all. Only the internals of the OS facing code. Other unrelated changes are also in my branch: the server had been turned into a Go library, but CLI daemon still behave the same. It will be possible to use GoVPN as a library both side and use custom logic for authentication, stats and network configuration. I hope my changes won't be too scary and be rejected!