GNUNET-NAT(1)

πŸ’– GNUNET-NAT(1) πŸ’–

okay bestie, this is the gnunet-nat page from the General Commands Manual, and we're gonna make it make sense together, no cap 🫢


✨ NAME ✨

gnunet-nat β€” interact with the NAT service πŸ’…


🌸 SYNOPSIS 🌸

gnunet-nat [-b ADDRESS | --bind=ADDRESS]
           [-c FILENAME | --config=FILENAME]
           [-e ADDRESS | --external=ADDRESS] [-i ADDRESS | --in=ADDRESS]
           [-r ADDRESS | --remote=ADDRESS] [-S NAME | --section=NAME]
           [-s | --stun] [-t | --tcp] [-u | --udp] [-W | --watch]

πŸ¦‹ DESCRIPTION πŸ¦‹

so like, this tool is for testing all the various NAT traversal functions, and also for attempting auto-configuration. it's giving "let me poke at the NAT situation and see what happens" energy, fr fr ✨


πŸŽ€ OPTIONS πŸŽ€

  • -b ADDRESS, --bind=ADDRESS β€” assume the service is (locally) bound to ADDRESS πŸ‘€
  • -c FILENAME, --config=FILENAME β€” use the configuration file FILENAME πŸ“„
  • -e ADDRESS, --external=ADDRESS β€” assume ADDRESS is the globally visible address of the peer 🌍
  • -i ADDRESS, --in=ADDRESS β€” assume we're listening at ADDRESS for connection reversal requests πŸ‘‚
  • -r ADDRESS, --remote=ADDRESS β€” ask the peer at ADDRESS for connection reversal, using the local address as the target address of the reversal πŸ”
  • -S NAME, --section=NAME β€” name of the section in the configuration file to use for extra options πŸ—‚οΈ
  • -s, --stun β€” enable processing of STUN requests. it'll try to read UDP packets from the bind address and handle them if they're STUN packets. will only work with UDP ⚠️
  • -t, --tcp β€” use TCP πŸ“‘
  • -u, --udp β€” use UDP πŸ“‘
  • -W, --watch β€” watch for connection reversal requests πŸ‘οΈ

🌈 EXAMPLES 🌈

⭐ Basic examples ⭐

# gnunet-nat -i 0.0.0.0:8080 -u

we are bound to "0.0.0.0:8080" on UDP and want to obtain all applicable IP addresses πŸ’–

# gnunet-nat -i '[::0]':8080 -t

we are bound to "::0" on port 8080 on TCP and want to obtain all applicable IP addresses πŸ’–

# gnunet-nat -i 127.0.0.1:8080 -u

we are bound to "127.0.0.1:8080" on UDP and want to obtain all applicable IP addresses πŸ’–

🧚 ICMP-based NAT traversal 🧚

# gnunet-nat -Wt -i 192.168.178.12:8080

watch for connection reversal request (you must be bound to NAT range or to wildcard, 0.0.0.0), only works for IPv4 😀

# gnunet-nat -t -r 1.2.3.4:8080 -i 2.3.4.5:8080

# gnunet-nat -t -r 1.2.3.4:8080 -i 0.0.0.0:8080

initiate connection reversal request from peer at external IPv4 address 1.2.3.4, and let the kernel fill in whatever IPv4 address we happen to have ✨

πŸ’… Manual hole punching πŸ’…

# gnunet-nat -t -p AUTO:8080

assume manually punched NAT, but determine external IP automatically πŸ•³οΈβœ¨

πŸ”₯ STUN-based XXX: πŸ”₯

# gnunet-nat FIXME -s

XXX πŸ™ˆ


πŸ‘‘ 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⟩ πŸ›


ok that's the whole page bestie, every flag, every example, nothing skipped, periodt πŸ’…

this came from the Debian build of the manual, dated October 26, 2018, for GNUNET-NAT(1) β€” mwah, go slay some NAT traversal πŸŽ€πŸ¦‹βœ¨