vpnkit

AuthorsAnil Madhavapeddy <anil@recoil.org>, David Scott <dave.scott@docker.com>, David Sheets <dsheets@docker.com>, Gaetan de Villele <gdevillele@gmail.com>, Ian Campbell <ian.campbell@docker.com>, Magnus Skjegstad <magnus@skjegstad.com>, Mindy Preston <mindy.preston@docker.com>, Sebastiaan van Stijn <github@gone.nl>, Thomas Gazagnaire <thomas@gazagnaire.com> and Thomas Leonard <thomas.leonard@docker.com>
Homepagehttps://github.com/docker/vpnkit
Issue Trackerhttps://github.com/docker/vpnkit/issues
MaintainerDavid Scott <dave.scott@docker.com>
Dependencies
&alcotest
asl
astring
charrua-core>= 0.3
cmdliner
datakit-server0.10.0
dns
dns-forward
fd-send-recv
fmt
hashcons1.0.1
hvsock>= 0.8.1&0.13.0
ipaddr
logs
lwt2.7.0
mirage-flow>= 1.1.0
mirage-types-lwt3.0.0
named-pipe>= 0.4.0
oasis
ocamlbuild
ocamlfind
pcap-format>= 0.4.0
result
tar-format
tcpip>= 2.8.0&3.0.0
uwt0.0.3
win-eventlog
PublishedNov 24, 2016
Source [http] https://github.com/djs55/vpnkit/archive/v0.0.0.tar.gz
9bd05f1339ba9d48a119ee394b701c8f
StatisticsInstalled 17 times last month.
Edithttps://github.com/ocaml/opam-repository/tree/master/packages/vpnkit/vpnkit.0.0.0/opam

VPN-friendly networking devices for [HyperKit](https://github.com/docker/hyperkit)

Running a VM usually involves modifying the network configuration on the host, for example by activating Ethernet bridges, new routing table entries, DNS and firewall/NAT configurations. Activating a VPN involves modifying the same routing tables, DNS and firewall/NAT configurations and therefore there can be a clash -- this often results in the network connection to the VM being disconnected.

VPNKit, part of HyperKit attempts to work nicely with VPN software by intercepting the VM traffic at the Ethernet level, parsing and understanding protocols like NTP, DNS, UDP, TCP and doing the "right thing" with respect to the host's VPN configuration.

VPNKit operates by reconstructing Ethernet traffic from the VM and translating it into the relevant socket API calls on OSX or Windows. This allows the host application to generate traffic without requiring low-level Ethernet bridging support.

No package is dependent