SkillAgentSearch skills...

Kronosnet

VPNs on steroids

Install / Use

/learn @kronosnet/Kronosnet
About this skill

Quality Score

0/100

Supported Platforms

Universal

Tags

README

Copyright (C) 2010-2026 Red Hat, Inc. All rights reserved.

Author: Fabio M. Di Nitto fabbione@kronosnet.org

This software licensed under GPL-2.0+

Upstream resources

https://github.com/kronosnet/kronosnet/ https://ci.kronosnet.org/ https://projects.clusterlabs.org/project/board/86/ (TODO list and activities tracking) https://drive.google.com/drive/folders/0B_zxAPgZTkM_TklfYzN6a2FYUFE?resourcekey=0-Cfr5D94rZ8LVbeMPGjxbdg&usp=sharing (google shared drive) https://lists.kronosnet.org/mailman3/postorius/lists/users.lists.kronosnet.org/ https://lists.kronosnet.org/mailman3/postorius/lists/devel.lists.kronosnet.org/ https://lists.kronosnet.org/mailman3/postorius/lists/commits.lists.kronosnet.org/ https://kronosnet.org/ (web 0.1 style) IRC: #kronosnet on Libera.Chat

Architecture

Please refer to the google shared drive Presentations directory for diagrams and fancy schemas

Dependancies

kronosnet has few obligatory dependancies, though it is strongly recommended that you build it with at least one crypto library enabled.

It does, however, require libqb for both the doxygen2man tool (for creating the API man pages) and headers for list manipulation. You can get these from installing libqb from source or libqb-devel package, and your distro might provide doxgen2man as its own package.

Running on FreeBSD

knet requires big socket buffers and you need to set: kern.ipc.maxsockbuf=18388608 in /etc/sysctl.conf or knet will fail to run.

libnozzle requires if_tap.ko loaded in the kernel.

Please avoid using ifconfig_DEFAULT in /etc/rc.conf to use DHCP for all interfaces or the dhclient will interfere with libnozzle interface management, causing errors on some operations such as "ifconfig tap down".

Building on Solaris / Illumos

tested on SunOS openindiana-x86-64 5.11 illumos-5b6ecd7fe9:

pkg install autoconf automake libtool pkg-config \

  gcc-14 gnu-binutils gnu-coreutils gnu-make \
  check system/mozilla-nss doxygen \
  header-tun tun

optional:

pkg install developer/clang-20

GNU tools must be preferred:

export PATH=/usr/gnu/bin:$PATH

mozilla-nss is currently broken in oi-userland and does not ship pkg-config files

./autogen.sh && ./configure --disable-crypto-nss

make all -j && make check

Running on Solaris / Illumos

Tune socket buffers for the protocol you intend to use:

ipadm set-prop -p max_buf=8388608 udp

Rust Bindings

Rust bindings for libknet and libnozzle are part of this source tree, but are included here mainly to keep all of the kronosnet APIs in one place and to ensure that everything is kept up-to-date and properly tested in our CI system.

The correct place to get the Rust crates for libknet and libnozzle is still crates.io as it would be for other crates. These will be updated when we issue a new release of knet.

https://crates.io/crates/knet-bindings https://crates.io/crates/nozzle-bindings

Of course, if you want to try any new features in the APIs that may have not yet been released then you can try these sources, but please keep in touch with us via email or IRC if you do so.

Related Skills

View on GitHub
GitHub Stars68
CategoryDevelopment
Updated1mo ago
Forks34

Languages

C

Security Score

90/100

Audited on Feb 5, 2026

No findings