Giter VIP home page Giter VIP logo

kytan's Introduction

Build Status codecov

kytan: High Performance Peer-to-Peer VPN

kytan is a high performance peer to peer VPN written in Rust. The goal is to to minimize the hassle of configuration and deployment with a goal of multi-platform support.

Supported Platforms

  • Linux
  • macOS (Client mode only)

Installation

Currently, precompiled kytan binaries are available for Linux and macOS. You can download them from releases.

Alternatively, you can compile it from source if your machine is installed with Rust.

$ git clone https://github.com/changlan/kytan.git
$ cd kytan
$ cargo build --release

Running kytan

For complete information:

$ sudo ./kytan -h

Server Mode

Like any other VPN server, you need to configure iptables as following to make sure IP masquerading (or NAT) is enabled, which should be done only once. In the future, kytan will automate these steps. You may change <INTERFACE> to the interface name on your server (e.g. eth0):

$ sudo iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -o <INTERFACE> -j MASQUERADE

To run kytan in server mode and listen on UDP port 9527 with password hello:

$ sudo ./kytan server -k hello 

If you want open log display (info is log level, you can change it by your idea)

$ sudo RUST_LOG=info ./kytan server -k hello 

Client Mode

To run kytan in client mode and connect to the server <SERVER>:9527 using password hello:

$ sudo ./kytan client -s <SERVER> -p 9527 -k hello

if you want open log display (info is log level, you can change it by your idea)

$ sudo RUST_LOG=info ./kytan client -s <SERVER> -p 9527 -k hello

License

Apache 2.0

kytan's People

Contributors

azuresol avatar oowl avatar changlan avatar windoze avatar jianru-lin avatar ychen96 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.