Tailcat – Like netcat, but over Tailscale’s data plane

527 points - yesterday at 5:42 PM

Source

Comments

bradfitz yesterday at 8:18 PM
One fun use case: a coworker just whipped up this Minecraft mod using tailcat as its transport: https://github.com/tailscale/tailcat-for-minecraft

(just a cute demo, not intended for release or ongoing maintenance)

megamorf yesterday at 7:00 PM
So this is somewhat similar to Iroh?

https://github.com/n0-computer/iroh

mikepurvis yesterday at 7:27 PM
I enjoy that they supply a nix install/environment, similar to the main tailscale/tailscale repo. Is nix widespread or the standard dev environment at tailscale, or is it like a 10% option and most people just use Docker or whatever?
pbohun yesterday at 8:09 PM
This is so cool! I mean, we really wouldn't need it if we had 100% ipv6 (no cgnat), but this is the next best thing. I think people underestimate the innovation that could happen if we had trivial p2p.
archietect yesterday at 6:44 PM
It looks like a direct competitor for the recently launched bitbang-cli

https://github.com/richlegrand/bitbang-cli

spockz yesterday at 9:25 PM
How much Tailscale is this still if the transport is based on wireguard, the control plane is something new with the keys based on the wireguard keys? Genuinely confused.
aseipp yesterday at 7:37 PM
Just yesterday I was complaining that I wanted to SSH back to my homenet while at the office, on my office (not home) tailnet. I wrote something based on Iroh to do this, but it's one shot (ie not particularly generalized). Might be able to throw it away or redesign it with some inspiration from this! Thanks.
stillpointlab yesterday at 11:49 PM
I've spent time finally learning what tailscale is and how it works and I'm impressed. It's a rare thing in the technology world but I'm glad I finally took the time.

I literally just figured out how tsnet fits into the picture (an in-process Go based entire network stack that gets the process to act as a node in the tailnet) and so that helps me understand this (everything in tsnet excepting the control plane). It's very impressive that they can do this in a reliable way.

tptacek yesterday at 7:09 PM
This is smart. It's Magic Wormhole but for generalized connectivity, not just file transfer.
1970-01-01 yesterday at 8:01 PM
As 'cattail' is not officially taken, I have to assume they are oblivious to having a little fun.
petcat yesterday at 6:22 PM
I did the homemade version of this for years just with SSH forwarding and nginx reverse proxy
rugma yesterday at 6:57 PM
Wush was already doing something similar (using tailscale under the hood)

https://github.com/coder/wush

cpuguy83 yesterday at 5:55 PM
Interesting. I thought about doing this immediately after reading their old blog[1] post on punching through NAT some time ago.

Just a combo of never getting around to it and friends talking me out of it b/c of existing alternatives such as wormhole[2].

[1] https://tailscale.com/blog/how-nat-traversal-works

[2] https://github.com/magic-wormhole/magic-wormhole

wxw yesterday at 11:59 PM
I just set up Tailscale as I've been hosting more personal apps off a small Hetzner VM and wanted a really simple personal networking solution. Works great, would recommend.
gz5 yesterday at 6:24 PM
i like that it removes tailscale proprietary.

if that is goal then why not go 100% open source to eliminate the ts derp control as well and get full sovereignty?

like netbird, openziti, zerotier, etc.

codruterdei yesterday at 6:39 PM
A bit off topic: it’s just insane how I used to watch this guy’s http2 in Go yt video 10 years ago, and he’s still very relevant to this day! Cheers Brad!
ipdashc yesterday at 8:10 PM
Looks dope, though I'm surprised, is Tailscale fine with their DERP servers being used by non-customers like this? (Yes, it's a Tailscale project, but doesn't require login.) I vaguely assumed there was an auth step before you could use one as a relay. They mention a rate limit, but still
ekarulf yesterday at 10:24 PM
I use mosh over WebSockets to have a long lived connection to my home network.

I bet I could simplify out the WebSocket-to-UDP proxy by leaning into tailcat's dataplane and just speak straight UDP.

humanlity today at 3:00 AM
That's how I dreamed, Thanks tailscale
water-drummer yesterday at 8:25 PM
Woah this is cool!

I've been making a mesh vpn like radmin vpn or hamachi that does not need a central authority server and most importantly, can run on all major OS thanks to wireguard-go.

MrDrMcCoy yesterday at 6:59 PM
Looks like a Wireguard stunnel replacement, which is very useful!
mrsssnake yesterday at 8:13 PM
Tool like this exposes big problem with the current shape of the Internet, I believe.

Everything should be possible with just plain netcat and IP stack. Someone asks about NAT holepunching, encryption, static IDs, permissions, etc., yes this is what Internet lacks and why every P2P app reinvents it over and over again.

zackify today at 12:15 AM
super sick, already setup a derp server.

dns node key for fun on one

and two machines that connect, with systemd to keep tailcat serving ssh running

LoganDark yesterday at 7:21 PM
What's the risk of malware using this for C&C or otherwise? Hackers love communication channels that are difficult to take down individually.
forrestthewoods yesterday at 9:26 PM
I have a really dumb ignorant question.

What is a data plane? What is a control plane? I don’t genuinely understand what these words mean :(

9bot yesterday at 11:33 PM
[dead]
TZubiri yesterday at 6:29 PM
>"like netcat, but over Tailscale's data plane"

Half of the Software offering nowadays seems to be selling vendor lock-in at no added value and then making a profit.

Sure there's always some negligible added value, and then they reinvent a whole stack for their ecosystem. In the case of tailscale the added value seems to be avoiding going into your router and activating port forwarding? It looks like negative added value to me. Someone that tells you "don't do NAT traversal, just open a port" would be highly valuable, but saying no doesn't seem to be trendy, and is certainly not an easy sell.

LarsKrimi yesterday at 10:29 PM
Neat idea in its core but its still tailscale underneath

The only thing that convinces me that tailscale isn't a CIA op is how badly it works for real uses

clavicle1009 yesterday at 9:48 PM
Netbird is the more mature version of this: fully open-source, self-sufficient, works like a charm, supports reverse proxying out-of-the-box, and much more. No reason to ever return to the Tail family.