https://github.com/icelain/kytai
kytai: High Performance Peer-to-Peer VPN in Rust
https://github.com/icelain/kytai
Last synced: about 1 year ago
JSON representation
kytai: High Performance Peer-to-Peer VPN in Rust
- Host: GitHub
- URL: https://github.com/icelain/kytai
- Owner: Icelain
- License: apache-2.0
- Created: 2025-05-24T09:22:14.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2025-05-26T11:34:42.000Z (about 1 year ago)
- Last Synced: 2025-05-26T12:43:09.996Z (about 1 year ago)
- Language: Rust
- Homepage:
- Size: 133 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## kytai: High Performance Peer-to-Peer VPN
`kytai` 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 `kytai` binaries are available for Linux and macOS.
You can download them from [releases](https://github.com/changlan/kytai/releases).
Alternatively, you can compile it from source if
your machine is installed with [Rust](https://www.rust-lang.org/en-US/install.html).
```
$ git clone https://github.com/changlan/kytai.git
$ cd kytai
$ cargo build --release
```
### Running `kytai`
For complete information:
```
$ sudo ./kytai -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, `kytai` will automate these steps. You may change `` to the
interface name on your server (e.g. `eth0`):
```
$ sudo iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -o -j MASQUERADE
```
To run `kytai` in server mode and listen on UDP port `9527` with password `hello`:
```
$ sudo ./kytai server -k hello
```
If you want open log display (`info` is log level, you can change it by your idea)
```
$ sudo RUST_LOG=info ./kytai server -k hello
```
#### Client Mode
To run `kytai` in client mode and connect to the server `:9527` using password `hello`:
```
$ sudo ./kytai client -s -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 ./kytai client -s -p 9527 -k hello
```
### License
Apache 2.0