IODINE-CLIENT-START(8)
π iodine-client-start(8) β the girlies' guide to starting an iodine IPv4-over-DNS tunnel π
okay so bestie, this page lives in the System Administration Utilities section of the manual, and it's literally about getting an iodine IP-over-DNS tunnel up and running. no cap. π¦
β¨ NAME β¨
iodine-client-start β start an iodine IPv4-over-DNS tunnel π
β¨ SYNOPSIS β¨
iodine-client-start [option]
β¨ DESCRIPTION β¨
iodine-client-start starts an iodine IP-over-DNS tunnel. that's the whole vibe, and honestly? iconic. π
-h,--helpβ prints help and dips. π-v,--versionβ prints version info and dips. π
so if you invoke the program with no options at all, it will try to set up and configure an iodine IP-over-DNS tunnel for you, using the config in the file /etc/default/iodine-client, or by just straight up asking you. it tries to figure out the right way to set things up by observing the network, and if all else fails... it guesses. π not me relying on vibes but here we are.
πΈ QUICK CONFIGURATION πΈ
put two lines in the file /etc/default/iodine-client:
subdomain=your.tunnel.sub.domain
passwd=password_for_that_tunnel
or invoke the script with those environment variables set:
env subdomain=xxx passwd=xxx iodine-client-start
if these are not set, the script will query the user for them. so like, it'll just ask you. be ready bestie. π«Ά
π¦ DETAILS π¦
the configuration file is made of lines which are either comments starting with #, or settings of the form VAR="val". valid VARs are, in order, and yes we're listing all of them:
subdomainβ sample value:your.tunnel.sub.domain. there is no default, it must be set. no subdomain, no tunnel, periodt. πpasswdβ sample value:password_for_that_tunnel. also no default, also must be set. πtesthostβ hostname to ping when testing if network is working. default:slashdot.org. πbounce_localnetβ take the local network down and then up again before starting the tunnel. default:false. β¨test_ping_localnetβ test if the local network is working by pinging the gateway. default:true. πtest_ping_tunnelβ test if the iodine tunnel is working after it has been set up, by pinging the host at the other end. default:true. πtest_ping_finalβ test if the tunnel is working after everything is ostensibly set up, by trying to ping an external host. default:true. βdefault_routerβ IP address of the router on the local network. it should be found automatically, but set this if that fails and the program guesses wrong. πinterfaceβ interface to use (e.g.,eth1,eth0, etc) for connection to the DNS server used for the iodine tunnel. again, should be found automatically, set this if that fails and the program guesses wrong. π§mtuβ set if the tunnel MTU needs to be manually changed (lowered). it should not be necessary anymore, since recent versions of iodine negotiate an appropriate MTU during tunnel setup. but if that negotiation does not happen, or if you are using an older version of iodine, the default tunnel MTU is1024, and if the local DNS server restricts to512byte packets you might need to use an MTU of220. π₯skip_raw_udp_modeβ sets the"-r"option in the iodine command line. with this option, iodine does not try to establish a direct UDP socket to the iodine server on port53. default:true. πcontinue_on_errorβ set if the script should continue even if a command fails. use it to test the script when running as non-root. defaults tofalseif running as root,trueotherwise. π
lowkey important reminder: those "should be found automatically" ones? if the guessing goes wrong, that's your moment to step in and set them yourself. main character energy only. π
and that's the whole page bestie, you ate. this was iodine-client-start version 1.0.6, from September 2020, straight out of the System Administration Utilities manual β slay, go start that tunnel. πβ¨π«Ά
π¦ where this page comes from
- ubuntu jammy: iodine 0.7.0-10 Β· MIT
- ubuntu noble: iodine 0.7.0-10 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms