Go to file
Dennis Schwerdel 12b5b17c3b Pretty error messages instead of panics 2015-11-25 12:29:12 +01:00
deb Debian packages 2015-11-24 10:22:25 +01:00
src Pretty error messages instead of panics 2015-11-25 12:29:12 +01:00
.gitignore Debian packages 2015-11-24 10:22:25 +01:00
.travis.yml Coreralls with crypto feature 2015-11-23 21:53:33 +01:00
Cargo.toml Complete rewrite of crypto part 2015-11-24 23:47:38 +01:00
Measurements_Glab.ods Flexible options 2015-11-20 18:09:51 +01:00
README.md Pretty error messages instead of panics 2015-11-25 12:29:12 +01:00
build.rs TapDev -> TunTapDev 2015-11-21 17:06:57 +01:00
vpncloud.md Complete rewrite of crypto part 2015-11-24 23:47:38 +01:00

README.md

VpnCloud - Peer-to-Peer VPN

Build Status Coverage Status Latest Version

VpnCloud is a simple VPN over UDP. It creates a virtual network interface on the host and forwards all received data via UDP to the destination. It can work on TUN devices (IP based) and TAP devices (Ethernet based). Tunneling traffic between two nodes can be as easy as:

vpncloud -c REMOTE_HOST:PORT --ifup 'ifconfig $IFNAME 10.0.0.1/24 mtu 1400 up'

More details can be found in the manpage.

Current Status

This project is under heavy development and has not reached a stable state yet. This is what currently works:

  • Normal operation using TUN/TAP interfaces and different forwarding modes (Hub, Switch, Router)
  • Encryption using libsodium

However there are some open issues:

  • Encryption has not been thoroughly reviewed, use with care.
  • The protocol can still change.
  • Running on IPv6 is not supported.
  • The software is not very well tested.
  • The closing message is not sent to peers.
  • The coverage score includes all unused methods from libsodium

Please feel free to help and contribute code.

Semantic Versioning

This project uses semantic versioning. Currently that means that everything can change between versions before 1.0 is finally released. This is especially true for the network protocol and even more for the crypto part of it. Expect them to change before 1.0.