April 2nd, 2025

Porting Tailscale to Plan 9

Tailscale has ported its service to the Plan 9 operating system, overcoming challenges like limited Go support and runtime crashes, while implementing userspace networking and Tailscale SSH for secure access.

Read original articleLink Icon
CuriosityExcitementNostalgia
Porting Tailscale to Plan 9

Tailscale has successfully ported its service to the Plan 9 operating system, a project that began as an April Fools' joke but turned into a functional reality. The porting process faced challenges due to the Go programming language's limited support for Plan 9, which had not been actively maintained. Initial attempts resulted in runtime crashes, prompting developers to collaborate and address issues related to the Plan 9 kernel and its handling of floating-point operations. The team implemented a userspace networking mode, allowing Tailscale to operate without direct kernel integration, although this limited its functionality. They also developed a simple TUN-like interface for packet handling, which streamlined the process of routing packets through the Plan 9 network stack. Additionally, Tailscale SSH support was integrated, enabling secure shell access using Tailscale's identity management. The project highlights the adaptability of Tailscale's technology and the collaborative effort required to overcome the unique challenges posed by Plan 9.

- Tailscale has ported its service to the Plan 9 operating system.

- The project began as an April Fools' joke but became a functional service.

- Challenges included limited Go support for Plan 9 and runtime crashes.

- A userspace networking mode was implemented, with plans for kernel integration.

- Tailscale SSH support was added for secure shell access.

AI: What people are saying
The comments reflect a mix of enthusiasm and skepticism regarding Tailscale's porting to Plan 9, along with discussions about the operating system's legacy and potential.
  • Many commenters express excitement about Tailscale's implementation on Plan 9, highlighting its unique features and capabilities.
  • Some users share practical experiences and resources for trying out Tailscale on Plan 9, including links to virtual machine images.
  • There is a humorous undertone, with references to the challenges and complexities involved in the project, as well as jokes about the operating system's quirks.
  • Several comments reflect nostalgia for Plan 9 and its principles, with users reminiscing about their experiences and projects related to the OS.
  • Discussions also touch on the broader implications of Plan 9's adoption and its potential impact on modern computing.
Link Icon 25 comments
By @bradfitz - 1 day
Happy to answer any questions!

A bunch of us are currently in https://meet.google.com/qre-gydb-mkv chatting about this. (Edit: the hour is over; we all left)

The earlier Apr 1st blog post was https://tailscale.com/blog/tailscale-enterprise-plan-9-suppo...

By @mfro - 1 day
Russ Cox is an absolute legend for committing to this joke.
By @packetlost - 1 day
I unironically wish there was an enterprise version of Plan 9. I've been writing most of my scripts in `rc` (something my coworkers put up with because we use nix and I can pull it in automatically with dirnev) and it has been great.
By @raggi - 1 day
In case y'all missed it in the first post, and you just want to try this out, it's working in this v86 image:

https://copy.sh/v86/?profile=custom&m=768&vram=16&hda.url=ht...

You can start tailscaled and tailscale inside the VM. It may take a while to come online sometimes due to limited proxy availability.

Edit: alt gives you the third button. To start a terminal, hold alt and right click, select new, release alt, and right click drag to size the terminal window.

By @adriangrigore - 1 day
Webinar in progress (Google Meet) https://ftp.plan9.ts.net/webinar
By @0xbadcafebee - 1 day
I like the premise of the joke, but then as the explanation ran on... I suddenly became depressed. So much broken stuff, so much complexity.... to, what, make a network tunnel? If all this extra work was the joke, that would be funny.
By @breckinloggins - 1 day
God I love plan9. Making my own os using many of its principles is a retirement project life goal.

EDIt: I reserve the name “chaos10” for this project, since - like SerenityOS - there will be no plan.

By @kanwisher - 1 day
wholly cow was not expecting them to patch the plan9 kernel to make this work
By @renhanxue - 1 day
> In 1999, Intel introduced the Pentium III processor with SSE instructions.

I kinda expected this paragraph to continue with

> This has made a lot of people very angry and been widely regarded as a bad move.

By @fultonb - 1 day
This is so cool to see. Plan9 was a wonderful part of my COVID isolation, and I miss playing with it. This might have inspired me to spin up a 9front VM this weekend.
By @mcdow - 1 day
Rob Pike is in shambles after this devastating betrayal
By @calvinmorrison - 1 day
The 9fans list had this one for April Fools:

Given the huge maintenance cost of immature computer architectures such as mips, 386, arm, arm64 and amd64, we decided to put our focus on the more mature and stable achitectures:

power64 and itanuim.

Therefore, all architectures other than power64 and itanium are thereby frozen, conserved and promoted to end of life.

By @chaz6 - 1 day
Please consider RISC OS next!
By @chrsw - 1 day
My employer-controlled browser won't let me access that URL. At first it was cert errors and now it's just blocked.
By @pjmlp - 1 day
Great, maybe Inferno as follow up?
By @Gualdrapo - 1 day
Yet I still wonder how cool things would be if Plan9 was the most popular and used OS
By @gbraad - 1 day
I do expect tailscale drive shares to use 9P in that case ;-P
By @naikrovek - about 19 hours
rsc, rob pike, and bradfitz are three people I could talk to for hours, completely wasting their time, especially about Plan9.

That OS fascinates me.

I remember early in my career when an expert I worked with could sit with me and patiently show me how to do something and let me ask questions for however long it took me to understand well enough what to do and how to swim if I fell in the deep end of whatever they wanted me to do. It was some of the fastest upskilling that I have ever done in my career, like getting a bachelors degree worth of very specific knowledge in three hours.

I don’t know C and I don’t know enough about Plan 9 to use it productively for anything, but it has some extremely cool and useful features that I want to know more about and learn how to use, even if it is only so that I can lament the non-existence of those features in the big three operating systems today.

If I had the money I would probably pay to get face time with all three of those folks for expanding my Go knowledge and rsc and rob pike for the plan 9 understanding that I have always wanted, but have never been able to give myself.

By @stonogo - 1 day
Seems like the real story here is that the Plan 9 port of Go is not particularly healthy, and that it's easier to modify an OS kernel than it is to fix Go?
By @facile3232 - 1 day
Plan 9 gets tailscale before a browser! Somehow this makes sense