June Tailscale newsletter

Ross Zurowski on
Photo of Ross Zurowski
This is a re-publishing of our monthly newsletter sent to subscribers earlier this month. Sign up to receive future email newsletters.

Another month brings with it another set of Tailscale client updates and features. Here’s what we’ve been working on:

Tailscale v0.99 & Shields Up

About a week ago we released Tailscale v0.99 (full release notes). v0.99 includes more bug fixes and a new feature we’ve been calling “shields up.”

The words “shields up” with colorful semi-circles between the two words.

Tailscale can be used many ways, but it’s commonly used to connect to web servers, Raspberry Pis, build servers, or other headless “utility” devices.

You want to connect to these devices, but just because they’re on your network doesn’t mean you don’t want to let these devices connect to you.

This new feature lets any device put its “shields up” and reject all incoming connections over Tailscale. Outgoing connections will still work fine, so your personal computer can continue to SSH to your servers who don’t have their shields up, but all incoming connections will be blocked.

You can enable this feature from Tailscale’s menu bar icon, or by using --shields-up flag on Linux.

Read more about “shields up” here

(Network admins can enforce network-wide connection restriction, including blocking specific ports or allowing particular user groups with our ACL features)

iOS App Updates

We’ve also released the most important update to our iOS app yet.

For a while now, our iOS app would lose its connection after a few hours. iOS automatically closes background applications using too much memory, and the Tailscale iOS client was going over the limit and being silently closed.

Tailscale team member @bradfitz went on an odyssey to fix this: he built tools to dig into Go binary sizes, modified our fork of the Go compiler to minimize memory, and produced all manner of diagnostic charts, reducing our memory usage significantly. But no luck, the connection loss remained. After more intensive profiling, he located the issue: the problem wasn’t in the majority Go portion of our app, but in our small Swift wrapper layer, which was slowly leaking memory. Several autoreleaseblock calls later, our team felt a wave of relief: the iOS app is now slimmer than ever before, and should stay connected as long as needed.

Screenshots of our new Android client, showing the device list

Android Beta

As promised in our last newsletter, we’ve officially launched our Android beta!

Those with a tolerance for a few bugs are welcome to join our beta on the Play Store. Bug reports are welcome via email or Github.

If you’d prefer to hold out until most of the bugs have been found, you can also pre-register to be notified when the production version is ready.

Welcome to our Interns

At the beginning of May we welcomed our first ever class of interns students to the team. Hailing from Waterloo University, Zijie, Wendi, and Dmytro have been hard at work on several exciting new Tailscale features.

Read more on our blog

Community Contributions

From large companies to individuals, people are continuing to explore how Tailscale can make their networks simpler. This month, we have a few new articles from the community:

Thanks to @masa_iwasaki, @nativeclouddev, and all the Tailscale community members writing and contributing to our mission of fixing networking once and for all.

Subscribe for monthly updates

Product updates, blog posts, company news, and more.

Too much email? RSS Twitter