dns2tcpd(1)

πŸ“¦
version 0.5.2 Β· 2 versions
, in debian bookworm, debian trixie, nixos 26.05, nixpkgs unstable, ubuntu jammy, ubuntu noble

πŸ‘‘ dns2tcpd β€” the manual page, but make it a group chat

okay bestie, you're reading the dns2tcpd(1) page from the General Commands Manual (section 1, we love a section 1 moment πŸ’…). buckle up, this one's a tunneling baddie.


✨ NAME ✨

dns2tcpd β€” a tunneling tool that encapsulates TCP traffic over DNS. fr fr that's the whole personality πŸ¦‹


🌸 SYNOPSIS 🌸

dns2tcpd [ -h ] [ -F ] [ -i address ] [ -f config_file ] [ -p pidfile ]
[ -d debug_level ]

that's it. that's the whole summoning ritual πŸ’–


πŸŽ€ DESCRIPTION πŸŽ€

okay so dns2tcp is a network tool that encapsulates TCP communications in DNS. the vibe is: when connections show up on a specific port, all that TCP traffic gets yeeted over to the remote dns2tcpd server and then forwarded to a specific host and port. and bestie, multiple connections are supported β€” it's giving main character energy, not one-connection-wonder energy πŸ”₯

lowkey it was written for demonstration purposes. iconic of it honestly.


πŸ’… OPTIONS πŸ’…

  • -h β€” help menu. your little emergency SOS button 🫢
  • -F β€” run in foreground. no hiding in the background, we're being perceived ✨
  • -i address β€” IP address to bind (default 0.0.0.0). if you don't pick one, it picks everything for you πŸ’€
  • -f config file β€” the configuration file to use. your little instruction manual πŸ“
  • -p pidfile β€” the file where our pid will be written. yes, it's writing about itself, very main character πŸ“
  • -d debug level β€” change the debug level. levels available are 1, 2 or 3. three whole levels, choose your fighter πŸ‘‘

🌈 CONFIGURATION FILES 🌈

by default, ${HOME}/.dns2tcprcd is used if no configuration file is specified. no cap, that's the default bestie.

the resource syntax is:

<resource-name>:<server>:<port>

you can define multiple resources in multilines, but they must be comma separated. don't skip the commas, that's the rules πŸ™ˆ

here is an example (steal it, it's cute):

listen = 127.0.0.1
port = 53
user = nobody
chroot = /tmp
pid_file = /var/run/dns2tcp.pid
domain = dns2tcp.hsc.fr
debug_level = 0
resources = ssh:127.0.0.1:22 , smtp:127.0.0.1:25,
            pop3:10.0.0.1:110
⚠️ note that resources line wraps across two lines in the original and the resources are comma separated β€” keep it exactly like that, bestie, no reformatting πŸ’–

πŸ‘‘ AUTHORS πŸ‘‘

Olivier Dembour <olivier.dembour@hsc.fr> β€” the icon, the legend, the moment. we stan 🌟


πŸ¦‹ SEE ALSO πŸ¦‹

  • ssltunnel β€” go read that one too, it's in the same friend group πŸ’œ

okay that's the whole page, you ate that. this was the dns2tcpd(1) manual page, living in the General Commands Manual section, and that's a wrap β€” periodt πŸ’…βœ¨πŸŽ€

πŸ“¦ where this page comes from