160 Commits

Author SHA1 Message Date
Datong Sun
e8f2457cb5 chore(fake-tcp) bump to v0.2.0 2021-11-18 20:36:05 -08:00
Datong Sun
583cdbe300 perf(fake-tcp) reduce the number of clone() calls in hot path 2021-11-19 12:35:21 +08:00
Datong Sun
91988520e5 feat(*) add DNS name support for --remote argument in both Client and
Server
2021-11-19 12:30:47 +08:00
Datong Sun
49cc6a6865 chore(phantun) update fake-tcp dependency version to v0.1.3 2021-11-02 18:29:53 +08:00
Datong Sun
7390d4bf27 chore(fake-tcp) release version v0.1.3 2021-11-02 18:29:53 +08:00
dependabot[bot]
95e762f5fd chore(deps): update dndx-fork-tokio-tun requirement from 0.3.16 to 0.4.0
Updates the requirements on [dndx-fork-tokio-tun](https://github.com/yaa110/tokio-tun) to permit the latest version.
- [Release notes](https://github.com/yaa110/tokio-tun/releases)
- [Commits](https://github.com/yaa110/tokio-tun/compare/0.3.16...0.4.0)

---
updated-dependencies:
- dependency-name: dndx-fork-tokio-tun
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-02 18:29:53 +08:00
Datong Sun
c9043015f2 docs(readme) update latest release to v0.2.2 2021-10-30 09:32:14 -07:00
Datong Sun
494abf37c5 docs(readme) add IPv6 support info v0.2.2 2021-10-30 09:21:23 -07:00
Datong Sun
cab87bd75b chore(cargo) bump Phantun to v0.2.2 2021-10-30 09:15:23 -07:00
Datong Sun
042f5af49f feat(phantun) add support for connecting to/from IPv6 based UDP endpoint 2021-10-31 00:09:02 +08:00
Datong Sun
f667f56747 chore(actions) always use the latest stable toolchain 2021-10-21 03:47:57 -07:00
Datong Sun
49665b906f chore(cargo) use Rust edition 2021 2021-10-21 03:41:42 -07:00
Datong Sun
e9cde27923 ci(dependabot) add Dependabot checks 2021-10-20 02:07:05 -07:00
Datong Sun
cf588db042 ci(release) add musl libc targets v0.2.1 2021-10-19 01:13:56 -07:00
Datong Sun
0e27822995 docs(readme) update WireGuard MTU calculation to take into account for
padding truncation
2021-10-16 10:55:01 -07:00
Datong Sun
eeca1d0108 docs(readme) bump latest release version to v0.2.1 2021-10-12 07:26:49 -07:00
Datong Sun
35541df7e2 chore(phantun) bump version to v0.2.1, bump fake-tcp dependency to v0.1.2 2021-10-09 09:33:16 -07:00
Datong Sun
3219cb9f38 chore(fake-tcp) bump version to 0.1.2 2021-10-09 09:31:55 -07:00
Datong Sun
41e86521b7 fix(fake-tcp) more robust checking for receiving end closing, avoids
panicking tasks from causing server to stop completely
2021-10-10 00:29:28 +08:00
Datong Sun
427fb7c19a fix(fake-tcp) use 64 as TTL value, fixes #11 2021-10-09 23:57:47 +08:00
Datong Sun
ef96a5161d chore(phantun) release v0.2.0 v0.2.0 2021-09-28 23:35:37 -07:00
Datong Sun
2b7588adfe docs(phantun) add -h option information 2021-09-28 23:31:07 -07:00
Datong Sun
6285efd0d7 feat(phantun) make Tun interface name and address configurable. Improved
documentations of Clap CLI help

Closes #8
2021-09-29 14:27:00 +08:00
Datong Sun
5a6ebf52ea fix(phantun) better UDP error handling
When UDP send fails, print a proper error message and close the
connection, instead of `panic`ing.
2021-09-28 00:53:52 +08:00
Datong Sun
e3e50f8a9e docs(readme) add more network topology explanation 2021-09-24 08:44:42 -07:00
Datong Sun
e97a2d1cad docs(readme) update latest release version 2021-09-22 22:23:00 -07:00
Datong Sun
4dc9f867ed chore(release) add more cross compilation targets v0.1.1 2021-09-22 22:17:05 -07:00
Datong Sun
a54d1b3759 chore(phantun): update fake-tcp used to 0.1.1 2021-09-22 22:04:15 -07:00
Datong Sun
8371256f0b perf(fake-tcp) use cached tuples per dispatcher task to avoid RwLock
contentions. Use multi queue Tun. Upgraded tokio to 1.12.0.

This makes the entire Phantun forward process completely lock contention free
2021-09-23 12:59:49 +08:00
Datong Sun
04b0e97c1d perf(fake-tcp) faster checksum calculation
Before:
```
test packet::benchmarks::bench_build_tcp_packet_128  ... bench:         207 ns/iter (+/- 25)
test packet::benchmarks::bench_build_tcp_packet_1460 ... bench:         670 ns/iter (+/- 14)
test packet::benchmarks::bench_build_tcp_packet_512  ... bench:         334 ns/iter (+/- 21)
```

After:
```
test packet::benchmarks::bench_build_tcp_packet_128  ... bench:         206 ns/iter (+/- 9)
test packet::benchmarks::bench_build_tcp_packet_1460 ... bench:         259 ns/iter (+/- 16)
test packet::benchmarks::bench_build_tcp_packet_512  ... bench:         212 ns/iter (+/- 11)
```
2021-09-20 23:12:53 +08:00
Datong Sun
212f9b6f9d docs(readme) add iptables config guide 2021-09-20 04:15:55 -07:00
Datong Sun
9b644166a5 docs(readme) fixed typo 2021-09-20 04:09:12 -07:00
Datong Sun
e0eb0f03cd docs(readme) changed section header to be shorter 2021-09-19 03:59:27 -07:00
Datong Sun
9418096fe3 docs(readme) fix styling 2021-09-19 03:58:35 -07:00
Datong Sun
f70c466399 docs(readme) fix WireGuard section header format 2021-09-19 03:53:47 -07:00
Datong Sun
fb66286db3 docs(images) update diagram to include more descriptions 2021-09-19 03:46:19 -07:00
Datong Sun
d4d941971f ci(release) add aarch64 target 2021-09-19 03:32:05 -07:00
Datong Sun
62df34983f docs(readme) add future plans 2021-09-19 03:09:16 -07:00
Datong Sun
d2b8bbeaa8 docs(readme) add better styling for MAX_OF_16 2021-09-19 03:02:37 -07:00
Datong Sun
10468b48ce docs(readme) add WireGuard MTU calculation steps 2021-09-19 02:59:50 -07:00
Datong Sun
3405dd38ed docs(license) add license files to repository root 2021-09-19 02:40:43 -07:00
Datong Sun
716b664970 chore(phantun) use fake-tcp from crates.io v0.1.0 2021-09-19 02:05:08 -07:00
Datong Sun
43996c3b51 ci(release) fix artifact name 2021-09-19 01:54:41 -07:00
Datong Sun
96c967a498 ci(actions) auto release artifacts 2021-09-19 16:46:39 +08:00
Datong Sun
e6bc75951b style(phantun) fixed name and author info 2021-09-19 01:43:59 -07:00
Datong Sun
c023b3079c ci(actions) run test and lint for all branches, not just main 2021-09-19 01:43:54 -07:00
Datong Sun
b846da6294 docs(readme) add naming information 2021-09-19 01:05:08 -07:00
Datong Sun
b639a783df docs(readme) add performance test numbers 2021-09-19 01:02:53 -07:00
Datong Sun
eb0cc2e2e8 docs(readme) add ToC 2021-09-19 00:40:43 -07:00
Datong Sun
4a9e41b0b7 chore(*) refactor Phantun and fake-tcp to their own crates 2021-09-19 00:36:40 -07:00