GNUNET-VPN(1)

🌈 NAME 🌈

gnunet-vpn β€” manually setup a GNUnet VPN tunnel

okay so bestie, this is the manual page for gnunet-vpn, straight out of the General Commands Manual (that's section 1, iykyk), and it's genuinely one of the cutest little tools in the GNUnet fam. Let's get into it πŸ’–


✨ SYNOPSIS ✨

gnunet-vpn [-4 | --ipv4] [-6 | --ipv6] [-c FILENAME | --config=FILENAME]
           [-d TIME | --duration TIME] [-h | --help] [-i IP | --ip IP]
           [-L LOGLEVEL | --loglevel=LOGLEVEL]
           [-p PEERID | --peer=PEERID] [-s NAME | --service=NAME]
           [-t | --tcp] [-u | --udp] [-V | --verbose] [-v | --version]

πŸ¦‹ DESCRIPTION πŸ¦‹

gnunet-vpn lets you manually setup a VPN tunnel through the GNUnet network. And like, there are two main types of tunnels, so pay attention because this is the whole plot:

  • Exit tunnels β€” tunnels to an exit node that routes your traffic out to the global Internet 🌍
  • Service tunnels β€” tunnels to a node that runs a service that only exists inside GNUnet 🧚

Depending on which type you're doing, gnunet-vpn takes different options. The tea:

  • The -i option is required for tunnels to an exit node.
  • The -p and -s options, together with either -u or -t, are required for tunnels to services.

For exit tunnels, both UDP and TCP traffic get redirected. For service tunnels, it's either UDP (-u) or TCP (-t) traffic that gets redirected β€” pick one, bestie πŸ’…

The tool will display the IP address for this end of the tunnel. That address can be shown as soon as it has been allocated, or only after (-a) the tunnel has been created.

not me noticing -a shows up in the description but not in the options list… the lore is real πŸ™ˆ

πŸ’– OPTIONS πŸ’–

  • -4, --ipv4 β€” the desired IP address on this end of the tunnel should be an IPv4 address.
  • -6, --ipv6 β€” the desired IP address on this end of the tunnel should be an IPv6 address.
  • -c FILENAME, --config=FILENAME β€” use the configuration file FILENAME πŸ“„
  • -d TIME, --duration TIME β€” the mapping should be established for TIME. The value you give must be a number followed by a space and a time unit, for example "500 ms". Note that the quotes are required on the shell (the shell will absolutely eat them otherwise, bestie). The default value is 5 minutes ⏰
  • -h, --help β€” print short help on options 🫢
  • -i IP, --ip IP β€” tunnel should be to an exit node and connect to the given IPv4 or IPv6 IP address. Note that you can specify an IPv6 address as the target here, even in combination with "-4" (4to6), and similarly you can specify an IPv4 address in combination with "-6" (6to4). Cute, right? 🌈
  • -L LOGLEVEL, --loglevel=LOGLEVEL β€” use LOGLEVEL for logging. Valid values are DEBUG, INFO, WARNING and ERROR.
  • -p PEERID, --peer=PEERID β€” name of the peer offering the service to connect to. Cannot be used in conjunction with -i, and it requires -s 🚫
  • -s NAME, --service=NAME β€” name of the service running on the target peer. Cannot be used in conjunction with -i, and it requires -p 🚫
  • -t, --tcp β€” service runs TCP. Either -t or -u must be specified when using -s.
  • -u, --udp β€” service runs UDP. Either -t or -u must be specified when using -s.
  • -V, --verbose β€” be verbose πŸ—£οΈ
  • -v, --version β€” print GNUnet version number.

🌸 SEE ALSO 🌸

The full documentation for gnunet is maintained as a Texinfo manual. If the info(1) and gnunet programs are properly installed at your site, the command

info gnunet

should give you access to the complete handbook,

info gnunet-c-tutorial

will give you access to a tutorial for developers.

Depending on your installation, this information is also available in gnunet(7) and gnunet-c-tutorial(7) πŸ“š


πŸ’€ BUGS πŸ’€

Report bugs by using https://bugs.gnunet.org or by sending electronic mail to ⟨gnunet-developers@gnu.org⟩.


and that's the whole page, bestie πŸŽ€ this one came from Debian, dated February 25, 2012, and it's filed as GNUNET-VPN(1). slay, go build a tunnel, you've got this πŸ’…βœ¨πŸ¦‹