No description
  • C 99.5%
  • Makefile 0.5%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-08 01:35:24 +08:00
ext feat: add IBS primitives on BLS12-381 via blst 2026-08-08 01:35:24 +08:00
src feat: IBS auth integration 2026-08-08 01:35:24 +08:00
.clang-format feat: initialize project 2026-03-13 17:43:47 +08:00
.gitignore feat: add babel feasibility distance to prevent stale relay routing loops 2026-06-15 22:45:00 +08:00
.gitmodules refactor: replace monocypher with libsodium 2026-03-15 17:34:20 +08:00
LICENSE chore: add GNU General Public License version 2 2026-03-15 16:06:58 +08:00
Makefile feat: add IBS primitives on BLS12-381 via blst 2026-08-08 01:35:24 +08:00
README.md chore 2026-08-08 01:35:24 +08:00

nmesh

A decentralized VPN.

Build

git submodule update --init
make

Configure

Create nmesh.conf:

# Required: overlay IPv6 address (must be in fe80::/96).
address = fe80::1

# Required: pre-shared key (32-byte raw string or 64-hex).
psk = your_psk

# Optional: TAP interface name (default: nmesh).
ifname = nmesh

# Optional: listen port (default: 50000).
port = 50000

# Optional: overlay MTU (default: 1280, range: 128..32743).
mtu = 1280

# Optional: physical MTU upper bound (default: 0, meaning auto-detect).
# When set, caps the path MTU to this value regardless of interface scanning.
default_phys_mtu = 1280

# Optional: P2P behavior (default: enable).
p2p = enable

# Optional: tap data path mode (default: auto).
# auto: single CPU -> inline, otherwise -> pipe
# inline: TAP handled in main event loop thread
# pipe: TAP handled by tap pipeline worker threads
tap_mode = auto

# Optional and repeatable: static bootstrap peers.
peer = 203.0.113.1:50000
# peer = [2001:db8::1]:50000

# Optional and repeatable: bogon filter rules.
# bogon = 10.0.0.0/8
# bogon = fc00::/7

Run

sudo ./build/release/nmesh -c nmesh.conf

Planned Features

  • Data Channel Offload support
  • UDP path forward secrecy via ephemeral ECDH rekey
  • PMTU probing
  • IBS authentication

Acknowledgements