CINXE.COM
Terminology and concepts · Tailscale Docs
<!DOCTYPE html><html lang="en" class="__className_943d4e"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/d3470cfc68a51edd-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/425118351a398cbb.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/90d8e427ffb6abd2.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-7add37186d0ff440.js"/><script src="/_next/static/chunks/fd9d1056-482290aea9828141.js" async=""></script><script src="/_next/static/chunks/7023-337611230f8b70ed.js" async=""></script><script src="/_next/static/chunks/main-app-490330e0be22d2d6.js" async=""></script><script src="/_next/static/chunks/231-07416b1f957d0db7.js" async=""></script><script src="/_next/static/chunks/app/kb/%5B%5B...params%5D%5D/error-d79b6b3fc14d36f0.js" async=""></script><script src="/_next/static/chunks/app/layout-32e599393abf9240.js" async=""></script><script src="/_next/static/chunks/5828-bdbd767bd529f5f9.js" async=""></script><script src="/_next/static/chunks/6257-e637d432bc778e7a.js" async=""></script><script src="/_next/static/chunks/919-76fb265b32c91554.js" async=""></script><script src="/_next/static/chunks/app/kb/layout-fda2441131486605.js" async=""></script><script src="/_next/static/chunks/1850-dd5ed91b5253b88f.js" async=""></script><script src="/_next/static/chunks/app/kb/%5B%5B...params%5D%5D/page-4eefb0a22d44c126.js" async=""></script><meta name="theme-color" content="#fff"/><title>Terminology and concepts · Tailscale Docs</title><meta name="description" content="Learn Tailscale terminology and concepts."/><link rel="canonical" href="https://tailscale.com/kb/1155/terminology-and-concepts"/><meta property="og:title" content="Terminology and concepts · Tailscale Docs"/><meta property="og:description" content="Learn Tailscale terminology and concepts."/><meta property="og:url" content="https://tailscale.com/kb/1155/terminology-and-concepts"/><meta property="og:site_name" content="Tailscale"/><meta property="og:image" content="https://tailscale.com/files/images/og-image.png"/><meta property="og:type" content="article"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:creator" content="@tailscale"/><meta name="twitter:title" content="Terminology and concepts"/><meta name="twitter:description" content="Learn Tailscale terminology and concepts."/><meta name="twitter:image" content="https://tailscale.com/files/images/og-image.png"/><link rel="icon" href="/favicon.png" type="image/png"/><link rel="icon" href="/favicon.svg" type="image/svg+xml"/><meta name="next-size-adjust"/><script src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js" noModule=""></script></head><body><header class="left-0 right-0 top-0 z-[100] h-[60px] transition-colors duration-300 lg:h-[66px] sticky bg-transparent"><div class="is-wide container flex items-center justify-between py-4 lg:py-3"><div class="flex gap-[35px]"><a class="w-[110px] transition-colors duration-200 text-heading-black" title="Homepage" href="/"><svg class="transition-colors duration-200 " width="100%" height="100%" viewBox="0 0 110 20" fill="none" xmlns="http://www.w3.org/2000/svg"><ellipse cx="2.44719" cy="10.1796" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><ellipse cx="9.79094" cy="10.1796" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><ellipse opacity="0.2" cx="2.44719" cy="17.5077" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><ellipse opacity="0.2" cx="17.1269" cy="17.5077" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><ellipse cx="9.79094" cy="17.5077" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><ellipse cx="17.1269" cy="10.1796" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><ellipse opacity="0.2" cx="2.44719" cy="2.85924" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><ellipse opacity="0.2" cx="9.79094" cy="2.85924" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><ellipse opacity="0.2" cx="17.1269" cy="2.85924" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><path d="M34.3979 18.458C35.0907 18.458 35.6536 18.3933 36.3248 18.2637V15.7584C35.9134 15.9096 35.4588 15.9528 35.0258 15.9528C33.965 15.9528 33.5753 15.4344 33.5753 14.441V9.34402H36.3248V6.83875H33.5753V3.12403H30.5443V6.83875H28.5742V9.34402H30.5443V14.7217C30.5443 17.0974 31.8 18.458 34.3979 18.458Z" fill="#242424"></path><path d="M41.2747 18.458C42.8984 18.458 43.9809 17.9181 44.5222 17.0758C44.5655 17.443 44.6954 17.9397 44.8686 18.2421H47.5964C47.4449 17.7237 47.3366 16.903 47.3366 16.3631V10.4455C47.3366 8.005 45.583 6.62277 42.617 6.62277C40.3654 6.62277 38.6118 7.46507 37.6376 8.69611L39.3696 10.4023C40.149 9.5384 41.1448 9.08486 42.3572 9.08486C43.8294 9.08486 44.4789 9.58159 44.4789 10.3159C44.4789 10.9422 44.0459 11.3742 41.7077 11.3742C39.4562 11.3742 37.183 12.3028 37.183 14.8945C37.183 17.2918 38.9149 18.458 41.2747 18.458ZM41.8809 16.1687C40.7118 16.1687 40.1706 15.672 40.1706 14.7865C40.1706 14.009 40.8201 13.4907 41.9026 13.4907C43.6345 13.4907 44.1108 13.3827 44.4789 13.0155V13.9442C44.4789 15.1753 43.4397 16.1687 41.8809 16.1687Z" fill="#242424"></path><path d="M49.3069 5.39173H52.4677V2.5625H49.3069V5.39173ZM49.3718 18.2421H52.4028V6.83875H49.3718V18.2421Z" fill="#242424"></path><path d="M54.6109 18.2421H57.6418V2.90805H54.6109V18.2421Z" fill="#242424"></path><path d="M63.9416 18.458C67.2757 18.458 68.986 16.7087 68.986 14.8729C68.986 13.2099 68.1417 11.9789 65.3705 11.4821C63.4221 11.1366 62.2097 10.7046 62.2097 10.0351C62.2097 9.45201 62.9025 9.04166 64.0715 9.04166C65.1107 9.04166 65.9767 9.38722 66.6262 10.1431L68.553 8.52333C67.5788 7.31389 65.9767 6.62277 64.0715 6.62277C61.1489 6.62277 59.3303 8.17777 59.3303 10.0783C59.3303 12.1517 61.2354 13.0803 63.2922 13.4475C65.0025 13.7499 65.9551 14.0738 65.9551 14.8081C65.9551 15.4344 65.2839 15.9528 64.0066 15.9528C62.7509 15.9528 61.7767 15.3696 61.322 14.5058L58.7674 15.7152C59.3952 17.2702 61.5385 18.458 63.9416 18.458Z" fill="#242424"></path><path d="M75.7621 18.458C77.9271 18.458 79.4859 17.5942 80.6549 15.6504L78.2302 14.4194C77.7755 15.3265 77.0395 15.9528 75.7621 15.9528C73.8353 15.9528 72.7961 14.3978 72.7961 12.5188C72.7961 10.6399 73.9003 9.12805 75.7621 9.12805C76.9312 9.12805 77.7106 9.75437 78.1652 10.7046L80.6116 9.40882C79.7889 7.61625 78.1652 6.62277 75.7621 6.62277C71.8003 6.62277 69.7652 9.5168 69.7652 12.5188C69.7652 15.78 72.2333 18.458 75.7621 18.458Z" fill="#242424"></path><path d="M85.4829 18.458C87.1067 18.458 88.1891 17.9181 88.7304 17.0758C88.7737 17.443 88.9036 17.9397 89.0768 18.2421H91.8046C91.6531 17.7237 91.5448 16.903 91.5448 16.3631V10.4455C91.5448 8.005 89.7912 6.62277 86.8252 6.62277C84.5737 6.62277 82.8201 7.46507 81.8458 8.69611L83.5778 10.4023C84.3572 9.5384 85.353 9.08486 86.5654 9.08486C88.0376 9.08486 88.6871 9.58159 88.6871 10.3159C88.6871 10.9422 88.2541 11.3742 85.9159 11.3742C83.6644 11.3742 81.3912 12.3028 81.3912 14.8945C81.3912 17.2918 83.1231 18.458 85.4829 18.458ZM86.0891 16.1687C84.9201 16.1687 84.3788 15.672 84.3788 14.7865C84.3788 14.009 85.0283 13.4907 86.1108 13.4907C87.8427 13.4907 88.319 13.3827 88.6871 13.0155V13.9442C88.6871 15.1753 87.6479 16.1687 86.0891 16.1687Z" fill="#242424"></path><path d="M93.3263 18.2421H96.3573V2.90805H93.3263V18.2421Z" fill="#242424"></path><path d="M103.631 18.458C105.861 18.458 107.658 17.5726 108.654 15.996L106.359 14.5274C105.753 15.4776 104.952 15.996 103.631 15.996C102.138 15.996 101.055 15.1753 100.774 13.5771H109.39V12.5188C109.39 9.5168 107.55 6.62277 103.61 6.62277C99.8643 6.62277 97.8293 9.5384 97.8293 12.5404C97.8293 16.8167 101.055 18.458 103.631 18.458ZM100.882 11.2014C101.358 9.75437 102.354 9.08486 103.675 9.08486C105.168 9.08486 106.078 9.97034 106.381 11.2014H100.882Z" fill="#242424"></path></svg></a><nav class="relative hidden lg:flex lg:gap-6"><div class="fixed bottom-0 left-0 right-0 z-[90] h-screen w-full transition duration-200 pointer-events-none opacity-0 top-[120px] bg-transparent"></div><div role="button" aria-haspopup="true" tabindex="0" class="group relative text-[14px] font-medium leading-normal tracking-[-0.28px] transition-colors duration-300 text-heading-black/80 hover:text-heading-black/100" data-track="Link Clicked" data-track-properties="{"label": "Product"}"><span>Product</span><div class="absolute bottom-[-6px] left-[25%] right-0 z-[100] flex h-[3px] w-[50%] items-center justify-center rounded-[5px] opacity-0 group-hover:opacity-100 bg-heading-black/80"></div></div><div role="button" aria-haspopup="true" tabindex="0" class="group relative text-[14px] font-medium leading-normal tracking-[-0.28px] transition-colors duration-300 text-heading-black/80 hover:text-heading-black/100" data-track="Link Clicked" data-track-properties="{"label": "Solutions"}"><span>Solutions</span><div class="absolute bottom-[-6px] left-[25%] right-0 z-[100] flex h-[3px] w-[50%] items-center justify-center rounded-[5px] opacity-0 group-hover:opacity-100 bg-heading-black/80"></div></div><a class="group relative text-[14px] font-medium leading-normal tracking-[-0.28px] transition-colors duration-300 text-heading-black/80 hover:text-heading-black/100" data-track="Link Clicked" data-track-properties="{"label": "Enterprise"}" href="/enterprise"><span>Enterprise</span><div class="absolute bottom-[-6px] left-[25%] right-0 z-[100] flex h-[3px] w-[50%] items-center justify-center rounded-[5px] opacity-0 group-hover:opacity-100 bg-heading-black/80"></div></a><a class="group relative text-[14px] font-medium leading-normal tracking-[-0.28px] transition-colors duration-300 text-heading-black/80 hover:text-heading-black/100" data-track="Link Clicked" data-track-properties="{"label": "Customers"}" href="/customers"><span>Customers</span><div class="absolute bottom-[-6px] left-[25%] right-0 z-[100] flex h-[3px] w-[50%] items-center justify-center rounded-[5px] opacity-0 group-hover:opacity-100 bg-heading-black/80"></div></a><a class="group relative text-[14px] font-medium leading-normal tracking-[-0.28px] transition-colors duration-300 text-heading-black/80 hover:text-heading-black/100" data-track="Link Clicked" data-track-properties="{"label": "Docs"}" href="/kb/1017/install"><span>Docs</span><div class="absolute bottom-[-6px] left-[25%] right-0 z-[100] flex h-[3px] w-[50%] items-center justify-center rounded-[5px] opacity-0 group-hover:opacity-100 bg-heading-black/80"></div></a><a class="group relative text-[14px] font-medium leading-normal tracking-[-0.28px] transition-colors duration-300 text-heading-black/80 hover:text-heading-black/100" data-track="Link Clicked" data-track-properties="{"label": "Blog"}" href="/blog"><span>Blog</span><div class="absolute bottom-[-6px] left-[25%] right-0 z-[100] flex h-[3px] w-[50%] items-center justify-center rounded-[5px] opacity-0 group-hover:opacity-100 bg-heading-black/80"></div></a><a class="group relative text-[14px] font-medium leading-normal tracking-[-0.28px] transition-colors duration-300 text-heading-black/80 hover:text-heading-black/100" data-track="Link Clicked" data-track-properties="{"label": "Pricing"}" href="/pricing"><span>Pricing</span><div class="absolute bottom-[-6px] left-[25%] right-0 z-[100] flex h-[3px] w-[50%] items-center justify-center rounded-[5px] opacity-0 group-hover:opacity-100 bg-heading-black/80"></div></a></nav></div><div class="hidden lg:flex lg:items-center lg:gap-[25px]"><a class="t-14 font-medium opacity-80 transition-colors duration-300 text-heading-black/80 hover:text-black/100" data-track="Link Clicked" data-track-properties="{"label": "Download"}" href="/download">Download</a><a class="t-14 font-medium opacity-80 transition-colors duration-300 text-heading-black/80 hover:text-black/100" data-track="Link Clicked" data-track-properties="{"label": "Log in"}" href="https://login.tailscale.com/welcome">Log in</a><a data-track="Link Clicked" data-track-properties="{"label": Get started - it's free!}" href="https://login.tailscale.com/start"><div class="inline-flex shrink-0 border transition-colors duration-200 w-full xs:w-auto items-center justify-center text-center relative focus:outline-none group transition-all overflow-hidden font-body font-medium rounded-lg group gap-[11px] py-2 px-[17px] leading-[1.46] tracking-[-0.16px] transition-colors duration-300 bg-heading-black border-heading-black text-white hover:bg-black-4 hover:border-black-4 "><div>Get started - it's free!</div></div></a></div><button type="button" aria-label="Open Menu" class="flex lg:hidden"><svg width="55" height="30" viewBox="0 0 55 30" fill="none" xmlns="http://www.w3.org/2000/svg"><rect class="fill-black-4" x="0.5" y="0.5" width="54" height="29" rx="5.5"></rect><line class="origin-center transition duration-300 rotate-0" x1="17" y1="11.5" x2="38" y2="11.5" stroke="white"></line><line class="origin-center transition duration-300 rotate-0" x1="17" y1="17.5" x2="38" y2="17.5" stroke="white"></line><rect x="0.5" y="0.5" width="54" height="29" rx="5.5" stroke="#242424"></rect></svg></button></div></header><div class="fixed inset-0 z-[90] h-full w-full overflow-auto bg-white px-5 pb-20 pt-24 transition-opacity duration-200 will-change-[opacity] lg:hidden pointer-events-none opacity-0"><div class="space-y-[22px]"><div class="relative overflow-hidden border-b border-stroke-grey pb-6 "><div class="t-20 flex w-full items-center justify-between font-medium "><span>Product</span><span class="flex h-[22px] w-[22px] items-center justify-center rounded-full text-black transition-transform duration-300 rotate-90 bg-black-4 text-white"><svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M5.83344 7.82482L8.83656 4.99835L5.83344 2.17188L5.24469 2.72658L7.24156 4.60599H1.16406V5.3907H7.24156L5.24469 7.27011L5.83344 7.82482Z" fill="currentColor"></path></svg></span></div><div class="flex flex-col transition duration-300 will-change-[height] h-0 opacity-0"><div class="left-[-110px] top-[57px] z-[100] flex flex-col justify-between gap-8 rounded-2xl bg-white py-[30px] will-change-transform lg:absolute lg:flex-row lg:gap-[50px] lg:border lg:px-[30px] xl:left-[-40px]" style="opacity:0"><div class="flex-1 lg:min-w-[266px]"><div class="t-14 relative z-[10] mb-2 text-[#706E6D] lg:mb-[15px] lg:ml-3">Meet Tailscale</div><ul><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "How it works"}" href="/blog/how-tailscale-works"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">How it works</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Why Tailscale"}" href="/why-tailscale"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">Why Tailscale</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "WireGuard® for Enterprises"}" href="/wireguard-vpn"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">WireGuard® for Enterprises</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Bring Tailscale to Work"}" href="/bring-tailscale-to-work"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">Bring Tailscale to Work</div></div></a></li></ul></div><div class="flex-1 lg:min-w-[266px]"><div class="t-14 relative z-[10] mb-2 text-[#706E6D] lg:mb-[15px] lg:ml-3">Explore</div><ul><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Integrations"}" href="/integrations"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">Integrations</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Features"}" href="/features"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">Features</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Compare Tailscale"}" href="/compare"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">Compare Tailscale</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Partnerships"}" href="/partnerships"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">Partnerships</div></div></a></li></ul></div></div></div></div><div class="relative overflow-hidden border-b border-stroke-grey pb-6 "><div class="t-20 flex w-full items-center justify-between font-medium "><span>Solutions</span><span class="flex h-[22px] w-[22px] items-center justify-center rounded-full text-black transition-transform duration-300 rotate-90 bg-black-4 text-white"><svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M5.83344 7.82482L8.83656 4.99835L5.83344 2.17188L5.24469 2.72658L7.24156 4.60599H1.16406V5.3907H7.24156L5.24469 7.27011L5.83344 7.82482Z" fill="currentColor"></path></svg></span></div><div class="flex flex-col transition duration-300 will-change-[height] h-0 opacity-0"><div class="left-[-110px] top-[57px] z-[100] flex flex-col justify-between gap-8 rounded-2xl bg-white py-[30px] will-change-transform lg:absolute lg:flex-row lg:gap-[50px] lg:border lg:px-[30px] xl:left-[-40px]" style="opacity:0"><div class="flex-1 lg:min-w-[266px]"><div class="t-14 relative z-[10] mb-2 text-[#706E6D] lg:mb-[15px] lg:ml-3">By use-case</div><ul><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Remote Access"}" href="/use-cases/remote-access"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">Remote Access</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Site-to-site Networking"}" href="/use-cases/site-to-site-networking"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">Site-to-site Networking</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Multi-Cloud Networking"}" href="/use-cases/multi-cloud-networking"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">Multi-Cloud Networking</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Kubernetes Networking"}" href="/use-cases/kubernetes"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">Kubernetes Networking</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Edge & IoT Deployments"}" href="/use-cases/iot"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">Edge & IoT Deployments</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Zero Trust Networking"}" href="/use-cases/zero-trust-networking"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">Zero Trust Networking</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "AI Workloads"}" href="/use-cases/ai"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">AI Workloads</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Secure SaaS"}" href="/use-cases/secure-saas"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">Secure SaaS</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Business VPN"}" href="/use-cases/business-vpn"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">Business VPN</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Homelab"}" href="/use-cases/homelab"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">Homelab</div></div></a></li></ul></div><div class="flex-1 lg:min-w-[266px]"><div class="t-14 relative z-[10] mb-2 text-[#706E6D] lg:mb-[15px] lg:ml-3">By role</div><ul><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "DevOps"}" href="/solutions/devops"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">DevOps</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "IT"}" href="/solutions/it"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">IT</div></div></a></li><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Security"}" href="/solutions/security"><div class="flex items-center gap-2"><div class="t-16 relative z-[10] text-heading-black">Security</div></div></a></li></ul></div></div></div></div><div class="relative overflow-hidden border-b border-stroke-grey pb-6 "><a class="t-20 flex w-full items-center justify-between font-medium " href="/enterprise"><span>Enterprise</span><span class="flex h-[22px] w-[22px] items-center justify-center rounded-full text-black transition-transform duration-300 -rotate-0 bg-grey-2"><svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M5.83344 7.82482L8.83656 4.99835L5.83344 2.17188L5.24469 2.72658L7.24156 4.60599H1.16406V5.3907H7.24156L5.24469 7.27011L5.83344 7.82482Z" fill="currentColor"></path></svg></span></a><div class="flex flex-col transition duration-300 will-change-[height] h-0 opacity-0"><div class="left-[-110px] top-[57px] z-[100] flex flex-col justify-between gap-8 rounded-2xl bg-white py-[30px] will-change-transform lg:absolute lg:flex-row lg:gap-[50px] lg:border lg:px-[30px] xl:left-[-40px]" style="opacity:0"><div class="flex-1 lg:min-w-[266px]"><ul></ul></div></div></div></div><div class="relative overflow-hidden border-b border-stroke-grey pb-6 "><a class="t-20 flex w-full items-center justify-between font-medium " href="/customers"><span>Customers</span><span class="flex h-[22px] w-[22px] items-center justify-center rounded-full text-black transition-transform duration-300 -rotate-0 bg-grey-2"><svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M5.83344 7.82482L8.83656 4.99835L5.83344 2.17188L5.24469 2.72658L7.24156 4.60599H1.16406V5.3907H7.24156L5.24469 7.27011L5.83344 7.82482Z" fill="currentColor"></path></svg></span></a><div class="flex flex-col transition duration-300 will-change-[height] h-0 opacity-0"><div class="left-[-110px] top-[57px] z-[100] flex flex-col justify-between gap-8 rounded-2xl bg-white py-[30px] will-change-transform lg:absolute lg:flex-row lg:gap-[50px] lg:border lg:px-[30px] xl:left-[-40px]" style="opacity:0"><div class="flex-1 lg:min-w-[266px]"><div class="t-14 relative z-[10] mb-2 text-[#706E6D] lg:mb-[15px] lg:ml-3">Nav heading here</div><ul><li class="group relative whitespace-nowrap"><a class="relative z-[10] inline-block w-full rounded-lg px-1 py-2 hover:bg-[#F9F7F6] lg:p-[12px]" data-track="Link Clicked" data-track-properties="{"label": "Title here"}" href="https://tailscale.com/customers"><div class="flex items-center gap-2"><img alt="Alt text " loading="lazy" width="300" height="120" decoding="async" data-nimg="1" class="relative z-[10] brightness-100 saturate-100 transition duration-200 lg:brightness-[1.1] lg:saturate-0 lg:brightness-100 lg:saturate-100" style="color:transparent;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 120'%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='none' style='filter: url(%23b);' href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8/wcAAwAB/ucNC4UAAAAASUVORK5CYII='/%3E%3C/svg%3E")" srcSet="https://cdn.sanity.io/images/w77i7m8x/production/a06dc612b1e3e4f4df53a72030002600639a8738-300x120.png?w=384&q=75&fit=clip&auto=format 1x, https://cdn.sanity.io/images/w77i7m8x/production/a06dc612b1e3e4f4df53a72030002600639a8738-300x120.png?w=640&q=75&fit=clip&auto=format 2x" src="https://cdn.sanity.io/images/w77i7m8x/production/a06dc612b1e3e4f4df53a72030002600639a8738-300x120.png?w=640&q=75&fit=clip&auto=format"/><div class="t-16 relative z-[10] text-heading-black">Title here</div></div><div class="t-14 relative z-[10] mt-1 line-clamp-2 !font-normal !leading-[1.28] text-heading-black/80">How Cribl Enables Secure Work From Anywhere with Tailscale</div></a></li></ul></div></div></div></div><div class="relative overflow-hidden border-b border-stroke-grey pb-6 "><a class="t-20 flex w-full items-center justify-between font-medium " href="/kb/1017/install"><span>Docs</span><span class="flex h-[22px] w-[22px] items-center justify-center rounded-full text-black transition-transform duration-300 -rotate-0 bg-grey-2"><svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M5.83344 7.82482L8.83656 4.99835L5.83344 2.17188L5.24469 2.72658L7.24156 4.60599H1.16406V5.3907H7.24156L5.24469 7.27011L5.83344 7.82482Z" fill="currentColor"></path></svg></span></a><div class="flex flex-col transition duration-300 will-change-[height] h-0 opacity-0"><div class="left-[-110px] top-[57px] z-[100] flex flex-col justify-between gap-8 rounded-2xl bg-white py-[30px] will-change-transform lg:absolute lg:flex-row lg:gap-[50px] lg:border lg:px-[30px] xl:left-[-40px]" style="opacity:0"><div class="flex-1 lg:min-w-[266px]"><ul></ul></div></div></div></div><div class="relative overflow-hidden border-b border-stroke-grey pb-6 "><a class="t-20 flex w-full items-center justify-between font-medium " href="/blog"><span>Blog</span><span class="flex h-[22px] w-[22px] items-center justify-center rounded-full text-black transition-transform duration-300 -rotate-0 bg-grey-2"><svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M5.83344 7.82482L8.83656 4.99835L5.83344 2.17188L5.24469 2.72658L7.24156 4.60599H1.16406V5.3907H7.24156L5.24469 7.27011L5.83344 7.82482Z" fill="currentColor"></path></svg></span></a><div class="flex flex-col transition duration-300 will-change-[height] h-0 opacity-0"><div class="left-[-110px] top-[57px] z-[100] flex flex-col justify-between gap-8 rounded-2xl bg-white py-[30px] will-change-transform lg:absolute lg:flex-row lg:gap-[50px] lg:border lg:px-[30px] xl:left-[-40px]" style="opacity:0"><div class="flex-1 lg:min-w-[266px]"><ul></ul></div></div></div></div><div class="relative overflow-hidden border-b border-stroke-grey pb-6 "><a class="t-20 flex w-full items-center justify-between font-medium " href="/pricing"><span>Pricing</span><span class="flex h-[22px] w-[22px] items-center justify-center rounded-full text-black transition-transform duration-300 -rotate-0 bg-grey-2"><svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M5.83344 7.82482L8.83656 4.99835L5.83344 2.17188L5.24469 2.72658L7.24156 4.60599H1.16406V5.3907H7.24156L5.24469 7.27011L5.83344 7.82482Z" fill="currentColor"></path></svg></span></a><div class="flex flex-col transition duration-300 will-change-[height] h-0 opacity-0"><div class="left-[-110px] top-[57px] z-[100] flex flex-col justify-between gap-8 rounded-2xl bg-white py-[30px] will-change-transform lg:absolute lg:flex-row lg:gap-[50px] lg:border lg:px-[30px] xl:left-[-40px]" style="opacity:0"><div class="flex-1 lg:min-w-[266px]"><ul></ul></div></div></div></div><div class="relative overflow-hidden border-b border-stroke-grey pb-6 "><a class="t-20 flex w-full items-center justify-between font-medium " href="/download"><span>Download</span><span class="flex h-[22px] w-[22px] items-center justify-center rounded-full text-black transition-transform duration-300 -rotate-0 bg-grey-2"><svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M5.83344 7.82482L8.83656 4.99835L5.83344 2.17188L5.24469 2.72658L7.24156 4.60599H1.16406V5.3907H7.24156L5.24469 7.27011L5.83344 7.82482Z" fill="currentColor"></path></svg></span></a><div class="flex flex-col transition duration-300 will-change-[height] h-0 opacity-0"></div></div></div><a class="mt-[42px] block" data-track="Link Clicked" data-track-properties="{"label": "Get started - it's free!"}" href="https://login.tailscale.com/start"><div class="inline-flex shrink-0 border transition-colors duration-200 w-full xs:w-auto items-center justify-center text-center relative focus:outline-none group transition-all overflow-hidden font-body font-medium rounded-lg group gap-[11px] py-2 px-[17px] leading-[1.46] tracking-[-0.16px] !w-full py-3 bg-heading-black border-heading-black text-white hover:bg-black-4 hover:border-black-4 "><div>Get started - it's free!</div></div></a><a class="mt-[15px] block" data-track="Link Clicked" data-track-properties="{"label": "Login"}" href="https://login.tailscale.com/welcome"><div class="inline-flex shrink-0 border transition-colors duration-200 w-full xs:w-auto items-center justify-center text-center relative focus:outline-none group transition-all overflow-hidden font-body font-medium rounded-lg group gap-[11px] py-2 px-[17px] leading-[1.46] tracking-[-0.16px] !w-full py-3 bg-grey-3 border-grey-3 text-heading-black"><div>Login</div></div></a><div class="t-14 mx-auto mt-[55px] max-w-[264px] text-center text-black-4/60"></div><div class="mt-[35px] flex flex-wrap justify-center gap-[14px]"></div><div class="mt-[60px] flex items-center justify-center gap-[8px]"><span class="scale-[1.1] text-heading-black transition-colors duration-300 hover:text-red-1"><svg width="28" height="29" viewBox="0 0 28 29" fill="none" xmlns="http://www.w3.org/2000/svg"><rect y="0.988281" width="28" height="28" rx="14" fill="currentColor"></rect><path class=" transition-colors duration-300 group-hover:fill-heading-black" d="M8.03169 9L13.0509 15.0672L8 20H9.13675L13.5587 15.6812L17.1317 20H21L15.6985 13.5916L20.3997 9H19.263L15.1906 12.9775L11.9001 9H8.03169ZM9.70337 9.75698H11.4805L19.3281 19.2429H17.551L9.70337 9.75698Z" fill="white"></path></svg></span><span class="scale-[1.1] text-heading-black transition-colors duration-300 hover:text-red-1"><svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.21875" width="27.2195" height="27.2195" rx="13.6098" fill="currentColor"></rect><path class=" transition-colors duration-300 group-hover:fill-heading-black" d="M12.434 19.6598L12.4179 14.8081H10.3008V12.7289H12.4179V11.3427C12.4179 9.47188 13.5974 8.57031 15.2966 8.57031C16.1106 8.57031 16.8101 8.62983 17.014 8.65643V10.6115L15.8355 10.612C14.9114 10.612 14.7324 11.0433 14.7324 11.6762V12.7289H17.3577L16.652 14.8081H14.7324V19.6598H12.434Z" fill="#fff"></path></svg></span><span class="scale-[1.1] text-heading-black transition-colors duration-300 hover:text-red-1"><svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.439453" width="27.2195" height="27.2195" rx="13.6098" fill="currentColor"></rect><path class=" transition-colors duration-300 group-hover:fill-heading-black" d="M8.68685 18.6518H10.8825V11.5871H8.68685V18.6518Z" fill="white"></path><path class=" transition-colors duration-300 group-hover:fill-heading-black" d="M8.50195 9.34036C8.50195 10.0352 9.07976 10.6143 9.77312 10.6143C10.4896 10.6143 11.0443 10.0584 11.0443 9.34036C11.0443 8.64547 10.4665 8.06641 9.77312 8.06641C9.07976 8.06641 8.50195 8.64547 8.50195 9.34036Z" fill="white"></path><path class=" transition-colors duration-300 group-hover:fill-heading-black" d="M16.8917 18.6518H19.0873V14.7836C19.0873 12.8843 18.6713 11.425 16.4525 11.425C15.3894 11.425 14.6729 12.0041 14.3724 12.56H14.3493V11.5871H12.2461V18.6518H14.4418V15.1542C14.4418 14.2509 14.6267 13.3475 15.7592 13.3475C16.8686 13.3475 16.8917 14.413 16.8917 15.2237V18.6518Z" fill="white"></path></svg></span><span class="scale-[1.1] text-heading-black transition-colors duration-300 hover:text-red-1"><svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.658203" width="27.2195" height="27.2195" rx="13.6098" fill="currentColor"></rect><path class=" transition-colors duration-300 group-hover:fill-heading-black" d="M19.6754 11.46C19.5368 10.5863 19.121 9.98138 18.1506 9.84696C16.6258 9.57813 14.2693 9.57812 14.2693 9.57812C14.2693 9.57812 11.9128 9.57813 10.388 9.84696C9.4177 9.98138 8.93254 10.5863 8.86323 11.46C8.72461 12.3337 8.72461 13.6106 8.72461 13.6106C8.72461 13.6106 8.72461 14.8876 8.86323 15.7613C9.00185 16.635 9.4177 17.2399 10.388 17.3743C11.9128 17.6432 14.2693 17.6432 14.2693 17.6432C14.2693 17.6432 16.6258 17.6432 18.1506 17.3743C19.121 17.1727 19.5368 16.635 19.6754 15.7613C19.814 14.8876 19.814 13.6106 19.814 13.6106C19.814 13.6106 19.814 12.3337 19.6754 11.46ZM12.8831 15.6269V11.5944L16.3486 13.6106L12.8831 15.6269Z" fill="white"></path></svg></span></div><div class="t-14 mx-auto mt-10 max-w-[264px] text-center text-black-4/60"> <!-- -->© <!-- -->2025<!-- --> </div></div><main class="scope-kb is-wide container"><div class="grid grid-cols-10 gap-x-8 pt-4 md:pt-8"><aside class="js-docHighlight col-span-10 md:col-span-3 md:row-span-2 xl:col-span-2"><div class="relative hidden h-full md:block"><div class="sticky top-[68px] -mt-2 px-1"><div class="absolute inset-x-0 h-4 w-full from-white top-0 bg-gradient-to-b"></div><ul class="flex max-h-[90vh] flex-col gap-1 overflow-y-auto pb-4 pt-2 text-sm"><li data-slug="start"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1346/start">Start</a><ul class="flex flex-col gap-0.5"><li data-slug="install" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1017/install"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Quickstart</span></a></li><li data-slug="installation" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1347/installation"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Install Tailscale</span></a></li><li data-slug="quick-guides" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1415/quick-guides"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Quick guides</span></a></li><li data-slug="sso-providers" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1013/sso-providers"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Set up an identity provider</span></a></li><li data-slug="what-is-tailscale" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1151/what-is-tailscale"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>What is Tailscale?</span></a></li></ul></li><li data-slug="guides"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1348/guides">How-to Guides</a><ul class="flex flex-col gap-0.5"><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 block pl-4 font-semibold hover:bg-stone-100" href="/kb/1350/manage">Manage Access</a><ul class="flex flex-col gap-0.5"><li data-slug="access-control" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1393/access-control"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Manage access control</span></a></li><li data-slug="just-in-time-access" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1443/just-in-time-access"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Manage Just-in-time access</span></a></li><li data-slug="manage-devices" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1372/manage-devices"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Manage devices</span></a></li><li data-slug="manage-users" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1373/manage-users"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Manage users</span></a></li><li data-slug="tailnet-lock" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1226/tailnet-lock"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Tailnet lock</span></a></li></ul></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 block pl-4 font-semibold hover:bg-stone-100" href="/kb/1351/route">Route Traffic</a><ul class="flex flex-col gap-0.5"><li data-slug="subnets" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1019/subnets"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Set up a subnet router</span></a></li><li data-slug="exit-nodes" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1103/exit-nodes"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Set up an exit node</span></a></li><li data-slug="app-connectors" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1281/app-connectors"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Set up an app connector</span></a></li><li data-slug="dns" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1054/dns"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Use DNS</span></a></li><li data-slug="magicdns" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1081/magicdns"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Set up MagicDNS</span></a></li><li data-slug="high-availability" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1115/high-availability"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Set up high availability</span></a></li></ul></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 block pl-4 font-semibold hover:bg-stone-100" href="/kb/1352/servers">Set Up Servers</a><ul class="flex flex-col gap-0.5"><li data-slug="set-up-servers" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1245/set-up-servers"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Set up a server</span></a></li><li data-slug="tags" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1068/tags"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Use tags</span></a></li><li data-slug="cloud-init" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1293/cloud-init"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Install Tailscale with cloud-init</span></a></li><li data-slug="auth-keys" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1085/auth-keys"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Use auth keys</span></a></li><li data-slug="tailscale-ssh" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1193/tailscale-ssh"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Use Tailscale SSH</span></a></li><li data-slug="enabling-https" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1153/enabling-https"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Set up HTTPS certificates</span></a></li><li data-slug="ephemeral-nodes" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1111/ephemeral-nodes"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Run an ephemeral node</span></a></li><li data-slug="run-unattended" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1088/run-unattended"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Run unattended</span></a></li></ul></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 block pl-4 font-semibold hover:bg-stone-100" href="/kb/1354/share">Access & Share Services</a><ul class="flex flex-col gap-0.5"><li data-slug="services" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1100/services"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>View services</span></a></li><li data-slug="sharing" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1084/sharing"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Share nodes</span></a></li><li data-slug="taildrop" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1106/taildrop"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Use Taildrop</span></a></li></ul></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 block pl-4 font-semibold hover:bg-stone-100" href="/kb/1353/share-web-server">Share a web server</a><ul class="flex flex-col gap-0.5"><li data-slug="funnel" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1223/funnel"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Tailscale Funnel</span></a></li><li data-slug="serve" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1312/serve"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Tailscale Serve</span></a></li></ul></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 block pl-4 font-semibold hover:bg-stone-100" href="/kb/1355/solutions">Solutions</a><ul class="flex flex-col gap-0.5"><li data-slug="vscode-ipad" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1166/vscode-ipad"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Code from your iPad</span></a></li><li data-slug="secure-server-ubuntu" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1077/secure-server-ubuntu"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Lock down a server</span></a></li><li data-slug="pikvm" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1292/pikvm"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Access a PiKVM</span></a></li><li data-slug="pi-hole" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1114/pi-hole"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Run a Pi-hole</span></a></li><li data-slug="ip-blocklist-relays" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1059/ip-blocklist-relays"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Secure external services</span></a></li><li data-slug="just-in-time-access" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1443/just-in-time-access"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Just-in-time access</span></a></li><li data-slug="automations" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1430/automations"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Automation</span></a></li></ul></li></ul></li><li data-slug="integrations"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1356/integrations">Integrations</a><ul class="flex flex-col gap-0.5"><li data-slug="cloud-server" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/integrations/cloud-server"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Cloud servers</span></a></li><li data-slug="containers-and-virtualization" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1358/containers-and-virtualization"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Containers and virtualization</span></a></li><li data-slug="serverless" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1364/serverless"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Serverless apps</span></a></li><li data-slug="database" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1359/database"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Databases</span></a></li><li data-slug="remote-code" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1363/remote-code"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Remote environments</span></a></li><li data-slug="developer-tools" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1360/developer-tools"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Developer tools</span></a></li><li data-slug="firewall" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1361/firewall"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Firewalls</span></a></li><li data-slug="webserver" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1365/webserver"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Web servers</span></a></li><li data-slug="nas" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1307/nas"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>NAS</span></a></li></ul></li><li data-slug="faq"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1366/faq">FAQ</a></li><li data-slug="log-events"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1349/log-events">Logging, Streaming, and Events</a><ul class="flex flex-col gap-0.5"><li data-slug="log-mesh-traffic" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1011/log-mesh-traffic"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Logging overview</span></a></li><li data-slug="audit-logging" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1203/audit-logging"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Configuration audit logging</span></a></li><li data-slug="network-flow-logs" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1219/network-flow-logs"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Network flow logs</span></a></li><li data-slug="log-streaming" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1255/log-streaming"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Log streaming</span></a></li><li data-slug="tailscale-ssh-session-recording" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1246/tailscale-ssh-session-recording"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>SSH session recording</span></a></li><li data-slug="client-metrics" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1482/client-metrics"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Client metrics</span></a></li><li data-slug="webhooks" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1213/webhooks"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Webhooks</span></a></li></ul></li><li data-slug="manage-account"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1431/manage-account">Manage Your Organization</a><ul class="flex flex-col gap-0.5"><li data-slug="contract-preferences" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1224/contract-preferences"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Contact preferences</span></a></li><li data-slug="pb-lp" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1375/pb-lp"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Pricing and billing</span></a></li><li data-slug="tailnet-name" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1217/tailnet-name"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Tailnet name</span></a></li><li data-slug="domain-ownership" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1259/domain-ownership"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Domain ownership</span></a></li></ul></li><li data-slug="reference"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1367/reference">Reference</a><ul class="flex flex-col gap-0.5"><li data-slug="acl-syntax" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1337/acl-syntax"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>ACL syntax</span></a></li><li data-slug="acl-samples" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1192/acl-samples"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>ACL samples</span></a></li><li data-slug="cli" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1080/cli"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>CLI</span></a></li><li data-slug="api" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1101/api"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>API</span></a></li><li data-slug="key-prefixes" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1277/key-prefixes"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Key prefixes</span></a></li><li data-slug="production-best-practices" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1300/production-best-practices"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Production best practices</span></a></li><li data-slug="shared-responsibility" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1212/shared-responsibility"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Shared responsibility</span></a></li><li data-slug="tech-overviews" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1376/tech-overviews"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Technical overviews</span></a></li><li data-slug="terminology-and-concepts" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 bg-stone-100 hover:bg-stone-200" href="/kb/1155/terminology-and-concepts"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="6 9 12 15 18 9"></polyline></svg> <span>Terminology and concepts</span></a></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="https://github.com/tailscale/tailscale"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>GitHub ↗</span></a></li></ul></li><li data-slug="get-support"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1432/get-support">Get Support</a><ul class="flex flex-col gap-0.5"><li data-slug="troubleshooting" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1023/troubleshooting"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Troubleshooting</span></a></li><li data-slug="support-options" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1250/support-options"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Support options</span></a></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/contact/support"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Contact support ↗</span></a></li><li data-slug="bug-report" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1227/bug-report"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Generate a bug report</span></a></li></ul></li><li data-slug="resources"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1368/resources">Resources</a><ul class="flex flex-col gap-0.5"><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/changelog"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Changelog ↗</span></a></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/compare"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Comparisons ↗</span></a></li><li data-slug="release-stages" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1167/release-stages"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Release stages</span></a></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/security"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Security ↗</span></a></li><li data-slug="versions" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1168/versions"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Versions</span></a></li><li data-slug="use-cases" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1377/use-cases"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Use cases</span></a></li><li data-slug="invite-only-feature" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1222/invite-only-feature"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Invite only features</span></a></li></ul></li></ul><div class="absolute inset-x-0 h-4 w-full from-white bottom-0 bg-gradient-to-t"></div></div></div><div class="relative pb-6 md:hidden"><div class="flex items-center gap-4"><button type="button" class="text-gray-600 hover:text-gray-800" aria-label="Open docs navigation" aria-expanded="false" aria-controls="drawer"><svg class="icon block stroke-gray-800 stroke-2"><use href="/files/images/marketing/icons.svg#list"></use></svg></button><script type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Docs","item":"/kb"},{"@type":"ListItem","position":2,"name":"Reference","item":"/kb/1367/reference"},{"@type":"ListItem","position":3,"name":"Terminology and concepts","item":"/kb/1155/terminology-and-concepts"}]}</script><nav class="flex min-w-0 items-center gap-2 whitespace-nowrap text-sm font-medium"><a class="transition-color text-gray-600 hover:text-gray-800" href="/kb">Docs</a><span class="select-none text-gray-500">›</span><a class="transition-color text-gray-600 hover:text-gray-800" href="/kb/1367/reference">Reference</a><span class="select-none text-gray-500">›</span><span class="text-gray-800">Terminology and concepts</span></nav></div><div id="drawer" role="dialog" aria-labelledby="dialog-label" class="left-0 top-0 z-[101] flex h-screen flex-col gap-8 bg-white p-4 shadow-md hidden"><div class="flex items-center justify-between"><h3 id="dialog-label" class="p-2 text-xl font-semibold">Documentation</h3><button type="button" class="text-gray-600 hover:text-gray-800" data-docs-menu="toggle" aria-expanded="false" aria-controls="drawer" aria-label="Close docs navigation"><svg class="icon block h-11 w-11 p-2"><use href="/files/images/marketing/icons.svg#x"></use></svg></button></div><div class="sticky top-[68px] -mt-2 px-1"><div class="absolute inset-x-0 h-4 w-full from-white top-0 bg-gradient-to-b"></div><ul class="flex max-h-[90vh] flex-col gap-1 overflow-y-auto pb-4 pt-2 text-sm"><li data-slug="start"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1346/start">Start</a><ul class="flex flex-col gap-0.5"><li data-slug="install" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1017/install"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Quickstart</span></a></li><li data-slug="installation" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1347/installation"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Install Tailscale</span></a></li><li data-slug="quick-guides" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1415/quick-guides"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Quick guides</span></a></li><li data-slug="sso-providers" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1013/sso-providers"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Set up an identity provider</span></a></li><li data-slug="what-is-tailscale" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1151/what-is-tailscale"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>What is Tailscale?</span></a></li></ul></li><li data-slug="guides"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1348/guides">How-to Guides</a><ul class="flex flex-col gap-0.5"><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 block pl-4 font-semibold hover:bg-stone-100" href="/kb/1350/manage">Manage Access</a><ul class="flex flex-col gap-0.5"><li data-slug="access-control" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1393/access-control"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Manage access control</span></a></li><li data-slug="just-in-time-access" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1443/just-in-time-access"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Manage Just-in-time access</span></a></li><li data-slug="manage-devices" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1372/manage-devices"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Manage devices</span></a></li><li data-slug="manage-users" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1373/manage-users"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Manage users</span></a></li><li data-slug="tailnet-lock" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1226/tailnet-lock"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Tailnet lock</span></a></li></ul></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 block pl-4 font-semibold hover:bg-stone-100" href="/kb/1351/route">Route Traffic</a><ul class="flex flex-col gap-0.5"><li data-slug="subnets" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1019/subnets"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Set up a subnet router</span></a></li><li data-slug="exit-nodes" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1103/exit-nodes"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Set up an exit node</span></a></li><li data-slug="app-connectors" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1281/app-connectors"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Set up an app connector</span></a></li><li data-slug="dns" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1054/dns"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Use DNS</span></a></li><li data-slug="magicdns" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1081/magicdns"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Set up MagicDNS</span></a></li><li data-slug="high-availability" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1115/high-availability"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Set up high availability</span></a></li></ul></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 block pl-4 font-semibold hover:bg-stone-100" href="/kb/1352/servers">Set Up Servers</a><ul class="flex flex-col gap-0.5"><li data-slug="set-up-servers" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1245/set-up-servers"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Set up a server</span></a></li><li data-slug="tags" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1068/tags"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Use tags</span></a></li><li data-slug="cloud-init" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1293/cloud-init"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Install Tailscale with cloud-init</span></a></li><li data-slug="auth-keys" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1085/auth-keys"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Use auth keys</span></a></li><li data-slug="tailscale-ssh" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1193/tailscale-ssh"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Use Tailscale SSH</span></a></li><li data-slug="enabling-https" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1153/enabling-https"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Set up HTTPS certificates</span></a></li><li data-slug="ephemeral-nodes" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1111/ephemeral-nodes"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Run an ephemeral node</span></a></li><li data-slug="run-unattended" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1088/run-unattended"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Run unattended</span></a></li></ul></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 block pl-4 font-semibold hover:bg-stone-100" href="/kb/1354/share">Access & Share Services</a><ul class="flex flex-col gap-0.5"><li data-slug="services" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1100/services"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>View services</span></a></li><li data-slug="sharing" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1084/sharing"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Share nodes</span></a></li><li data-slug="taildrop" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1106/taildrop"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Use Taildrop</span></a></li></ul></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 block pl-4 font-semibold hover:bg-stone-100" href="/kb/1353/share-web-server">Share a web server</a><ul class="flex flex-col gap-0.5"><li data-slug="funnel" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1223/funnel"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Tailscale Funnel</span></a></li><li data-slug="serve" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1312/serve"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Tailscale Serve</span></a></li></ul></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 block pl-4 font-semibold hover:bg-stone-100" href="/kb/1355/solutions">Solutions</a><ul class="flex flex-col gap-0.5"><li data-slug="vscode-ipad" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1166/vscode-ipad"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Code from your iPad</span></a></li><li data-slug="secure-server-ubuntu" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1077/secure-server-ubuntu"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Lock down a server</span></a></li><li data-slug="pikvm" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1292/pikvm"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Access a PiKVM</span></a></li><li data-slug="pi-hole" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1114/pi-hole"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Run a Pi-hole</span></a></li><li data-slug="ip-blocklist-relays" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1059/ip-blocklist-relays"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Secure external services</span></a></li><li data-slug="just-in-time-access" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1443/just-in-time-access"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Just-in-time access</span></a></li><li data-slug="automations" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1430/automations"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Automation</span></a></li></ul></li></ul></li><li data-slug="integrations"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1356/integrations">Integrations</a><ul class="flex flex-col gap-0.5"><li data-slug="cloud-server" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/integrations/cloud-server"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Cloud servers</span></a></li><li data-slug="containers-and-virtualization" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1358/containers-and-virtualization"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Containers and virtualization</span></a></li><li data-slug="serverless" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1364/serverless"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Serverless apps</span></a></li><li data-slug="database" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1359/database"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Databases</span></a></li><li data-slug="remote-code" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1363/remote-code"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Remote environments</span></a></li><li data-slug="developer-tools" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1360/developer-tools"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Developer tools</span></a></li><li data-slug="firewall" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1361/firewall"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Firewalls</span></a></li><li data-slug="webserver" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1365/webserver"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Web servers</span></a></li><li data-slug="nas" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1307/nas"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>NAS</span></a></li></ul></li><li data-slug="faq"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1366/faq">FAQ</a></li><li data-slug="log-events"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1349/log-events">Logging, Streaming, and Events</a><ul class="flex flex-col gap-0.5"><li data-slug="log-mesh-traffic" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1011/log-mesh-traffic"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Logging overview</span></a></li><li data-slug="audit-logging" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1203/audit-logging"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Configuration audit logging</span></a></li><li data-slug="network-flow-logs" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1219/network-flow-logs"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Network flow logs</span></a></li><li data-slug="log-streaming" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1255/log-streaming"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Log streaming</span></a></li><li data-slug="tailscale-ssh-session-recording" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1246/tailscale-ssh-session-recording"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>SSH session recording</span></a></li><li data-slug="client-metrics" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1482/client-metrics"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Client metrics</span></a></li><li data-slug="webhooks" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1213/webhooks"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Webhooks</span></a></li></ul></li><li data-slug="manage-account"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1431/manage-account">Manage Your Organization</a><ul class="flex flex-col gap-0.5"><li data-slug="contract-preferences" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1224/contract-preferences"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Contact preferences</span></a></li><li data-slug="pb-lp" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1375/pb-lp"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Pricing and billing</span></a></li><li data-slug="tailnet-name" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1217/tailnet-name"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Tailnet name</span></a></li><li data-slug="domain-ownership" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1259/domain-ownership"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Domain ownership</span></a></li></ul></li><li data-slug="reference"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1367/reference">Reference</a><ul class="flex flex-col gap-0.5"><li data-slug="acl-syntax" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1337/acl-syntax"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>ACL syntax</span></a></li><li data-slug="acl-samples" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1192/acl-samples"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>ACL samples</span></a></li><li data-slug="cli" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1080/cli"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>CLI</span></a></li><li data-slug="api" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1101/api"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>API</span></a></li><li data-slug="key-prefixes" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1277/key-prefixes"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Key prefixes</span></a></li><li data-slug="production-best-practices" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1300/production-best-practices"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Production best practices</span></a></li><li data-slug="shared-responsibility" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1212/shared-responsibility"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Shared responsibility</span></a></li><li data-slug="tech-overviews" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1376/tech-overviews"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Technical overviews</span></a></li><li data-slug="terminology-and-concepts" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 bg-stone-100 hover:bg-stone-200" href="/kb/1155/terminology-and-concepts"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="6 9 12 15 18 9"></polyline></svg> <span>Terminology and concepts</span></a></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="https://github.com/tailscale/tailscale"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>GitHub ↗</span></a></li></ul></li><li data-slug="get-support"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1432/get-support">Get Support</a><ul class="flex flex-col gap-0.5"><li data-slug="troubleshooting" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1023/troubleshooting"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Troubleshooting</span></a></li><li data-slug="support-options" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1250/support-options"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Support options</span></a></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/contact/support"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Contact support ↗</span></a></li><li data-slug="bug-report" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1227/bug-report"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Generate a bug report</span></a></li></ul></li><li data-slug="resources"><a class="rounded py-1 text-stone-800 hover:text-stone-900 mb-0.5 mt-2 block pl-2 font-semibold hover:bg-stone-100" href="/kb/1368/resources">Resources</a><ul class="flex flex-col gap-0.5"><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/changelog"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Changelog ↗</span></a></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/compare"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Comparisons ↗</span></a></li><li data-slug="release-stages" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1167/release-stages"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Release stages</span></a></li><li class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/security"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Security ↗</span></a></li><li data-slug="versions" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1168/versions"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Versions</span></a></li><li data-slug="use-cases" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1377/use-cases"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Use cases</span></a></li><li data-slug="invite-only-feature" class="flex flex-col gap-0.5"><a class="rounded py-1 text-stone-800 hover:text-stone-900 flex w-full items-start gap-1 pr-2 pl-4 hover:bg-stone-100" href="/kb/1222/invite-only-feature"><svg class="icon inline-block !h-[0.9em] !w-[0.9em] stroke-gray-500 invisible relative top-1" viewBox="0 0 24 24"><polyline points="9 18 15 12 9 6"></polyline></svg> <span>Invite only features</span></a></li></ul></li></ul><div class="absolute inset-x-0 h-4 w-full from-white bottom-0 bg-gradient-to-t"></div></div></div></div></aside><div class="col-span-10 mb-8 md:col-span-7 xl:col-span-6"><div class="max-w-3xl xl:mx-auto"><div class="pb-8"><!--$--><div class="relative md:max-w-lg"><form class="relative flex" autoComplete="off" autoCapitalize="off" autoCorrect="off" action="/kb"><input class="input hide-search-ui flex-shrink-0 flex-grow" type="search" placeholder="Search..." aria-label="Search" name="q" value=""/></form></div><!--/$--></div><article id="main-content" class="prism markdown-content js-docHighlight"><header class="mb-2 hidden md:flex"><script type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Docs","item":"/kb"},{"@type":"ListItem","position":2,"name":"Reference","item":"/kb/1367/reference"},{"@type":"ListItem","position":3,"name":"Terminology and concepts","item":"/kb/1155/terminology-and-concepts"}]}</script><nav class="flex min-w-0 items-center gap-2 whitespace-nowrap text-sm font-medium"><a class="transition-color text-gray-600 hover:text-gray-800" href="/kb">Docs</a><span class="select-none text-gray-500">›</span><a class="transition-color text-gray-600 hover:text-gray-800" href="/kb/1367/reference">Reference</a><span class="select-none text-gray-500">›</span><span class="text-gray-800">Terminology and concepts</span></nav></header><h1 class="mb-4 text-4xl font-medium tracking-tight">Terminology and concepts</h1><div class="ts-prose"><!--$--><h2 id="access-control-lists"><a class="group flex items-center gap-2" href="#access-control-lists"><span id="inner-text">Access control lists</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>An <a href="/kb/1018/acls">access control list</a> (ACL) manages system access using rules in the <a href="#tailnet-policy-file">tailnet policy file</a>. You can use ACLs to filter traffic and enhance security by managing who and what can use which resources.</p> <h2 id="tags"><a class="group flex items-center gap-2" href="#tags"><span id="inner-text">tags</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>A <a href="/kb/1068/tags">tag</a> lets you assign an <a href="#identity-provider">identity</a> (that's separate from human users) to <a href="#device">devices</a>. You can use tags in your <a href="/kb/1018/acls">access rules</a> to restrict access.</p> <h2 id="admin-console"><a class="group flex items-center gap-2" href="#admin-console"><span id="inner-text">Admin console</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>The admin console is the central location to view and manage your <a href="#tailnet">Tailscale network</a>. You can manage devices on your network, users and their permissions, and settings such as key expiry. The admin console also informs you if an update to the Tailscale client is available for your device. When you make changes from the admin console, the <a href="/kb/1508/control-data-planes#coordination-server">coordination server</a> updates the changes to your tailnet immediately.</p> <p>You can access your admin console at <a href="https://login.tailscale.com/admin/">https://login.tailscale.com/admin/</a>.</p> <h2 id="api"><a class="group flex items-center gap-2" href="#api"><span id="inner-text">API</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>API is an acronym for application programming interface. APIs define a set of rules to interact with an application or service programmatically. The <a href="/api">Tailscale API</a> lets you manage your Tailscale account and tailnet.</p> <h2 id="cli"><a class="group flex items-center gap-2" href="#cli"><span id="inner-text">CLI</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>CLI is an acronym for command line interface. The Tailscale <a href="/kb/1080/cli">CLI</a> includes a robust set of commands with functionality that GUI applications might not have. The Tailscale CLI is installed automatically when you install Tailscale on Linux, macOS, or Windows.</p> <h2 id="coordination-server"><a class="group flex items-center gap-2" href="#coordination-server"><span id="inner-text">Coordination server</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>A <a href="/kb/1508/control-data-planes#coordination-server">coordination server</a> is a central server that maintains a connection to all devices in your <a href="#tailnet">Tailscale network</a>. It manages <a href="/kb/1504/encryption">encryption</a> keys, network changes, access policy changes, and maintains a connection to all devices in your Tailscale network. The coordination server is part of the <a href="/kb/1508/control-data-planes#control-plane">control plane</a>, not the <a href="/kb/1508/control-data-planes#data-plane">data plane</a>. It avoids being a performance bottleneck by not relaying traffic between devices.</p> <h2 id="device"><a class="group flex items-center gap-2" href="#device"><span id="inner-text">Device</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>A device is anything other than a user. It can be physical or virtual and sends, receives, or processes data on your Tailscale network.</p> <h2 id="device-key"><a class="group flex items-center gap-2" href="#device-key"><span id="inner-text">Device key</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>A device key is a unique public and private key pair for a specific <a href="#device">device</a>. More than one user can use a device key, but each device can only have one device key. The combination of a specific user with a device key represents a unique device.</p> <h2 id="firewall"><a class="group flex items-center gap-2" href="#firewall"><span id="inner-text">Firewall</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>A firewall limits what network traffic can pass between two points. Firewalls can be hardware-based or software-based. Tailscale includes a built-in firewall, defined by the domain's <a href="/kb/1018/acls">access rules</a>.</p> <h2 id="identity-provider"><a class="group flex items-center gap-2" href="#identity-provider"><span id="inner-text">Identity Provider</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>An identity provider is a method for users to authenticate to a <a href="/kb/1136/tailnet">tailnet</a>. Examples of <a href="/kb/1013/sso-providers">identity providers</a> include Google, Okta, and Microsoft. Tailscale is not an identity provider but relies other identity providers for authentication.</p> <h2 id="key-expiry"><a class="group flex items-center gap-2" href="#key-expiry"><span id="inner-text">Key expiry</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>Key expiry is the end of the validity period for a cryptographic key. An expired key can no longer encrypt or decrypt data, nor authenticate a device to a Tailscale network.</p> <p>Using Tailscale means you never have to manage <a href="/kb/1504/encryption">encryption</a> keys directly. Tailscale automatically expires keys and requires them to be regenerated at regular intervals. You can disable key expiry for long-lived devices from the admin console.</p> <h2 id="magicdns"><a class="group flex items-center gap-2" href="#magicdns"><span id="inner-text">MagicDNS</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p><a href="/kb/1081/magicdns">MagicDNS</a> automatically registers memorable hostnames for devices in your Tailscale network. It also extends and improves DNS functionality.</p> <h2 id="nat-traversal"><a class="group flex items-center gap-2" href="#nat-traversal"><span id="inner-text">NAT traversal</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>NAT is an acronym for <a href="https://en.wikipedia.org/wiki/Network_address_translation">network address translation</a>. <a href="/blog/how-nat-traversal-works">NAT traversal</a> is a way to connect devices across the internet through barriers such as firewalls. Most internet devices can't talk to each other because of firewalls and devices that do network address translation. <a href="/blog/how-tailscale-works#the-control-plane-key-exchange-and-coordination">NAT traversal works</a> around these barriers, allowing <a href="#nat-traversal">data to traverse the network</a>.</p> <h2 id="network-topology"><a class="group flex items-center gap-2" href="#network-topology"><span id="inner-text">Network topology</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>A network topology is an arrangement of devices in a network. It shows the connections between them. Examples of network topologies include star, bus, hub-and-spoke, mesh, and hybrid.</p> <p>Traditional virtual private networks (VPNs) use a <a href="/blog/how-tailscale-works#hub-and-spoke-networks">hub-and-spoke topology</a>. Each device communicates with another in this setup by sending all traffic through a central gateway device. Tailscale operates as a <a href="/blog/how-tailscale-works#mesh-networks">mesh topology</a> where each device can talk directly to others using <a href="#nat-traversal">NAT traversal</a>.</p> <h2 id="node"><a class="group flex items-center gap-2" href="#node"><span id="inner-text">Node</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>A node is a combination of a user and a <a href="#device">device</a>.</p> <h2 id="peer"><a class="group flex items-center gap-2" href="#peer"><span id="inner-text">Peer</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>A peer is another <a href="#node">node</a> that your device is trying to talk to. A peer might or might not be in the same domain.</p> <h2 id="relay"><a class="group flex items-center gap-2" href="#relay"><span id="inner-text">Relay</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>A relay is an intermediary server that passes data between two or more devices in a network. Tailscale uses a special type of globally distributed relay server called <a href="/kb/1232/derp-servers">Designated Encrypted Relay for Packets (DERP)</a>. DERP relay servers function as a fallback to connect devices when NAT traversal fails.</p> <h2 id="sso"><a class="group flex items-center gap-2" href="#sso"><span id="inner-text">SSO</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>SSO is an acronym for <a href="/kb/1013/sso-providers">single sign-on</a>. Single sign-on lets users log in to one site using the identity of another.</p> <!-- --> <h2 id="tailnet"><a class="group flex items-center gap-2" href="#tailnet"><span id="inner-text">Tailnet</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <!-- --> <p>A <a href="/kb/1136/tailnet">tailnet</a> is another term for a Tailscale network, which is an interconnected collection of users, devices, and resources. The network has a <a href="/kb/1508/control-data-planes#control-plane">control plane</a> and a <a href="/kb/1508/control-data-planes#data-plane">data plane</a> that work in unison to manage access and send data between devices.</p> <span id="tailnet-type"></span> <p>There are personal and organization tailnets. A personal tailnet is a shared domain single-user tailnet (like <code>gmail.com</code>). An organization tailnet is a custom domain tailnet (like <code>example.com</code>),</p> <!-- --> <h2 id="tailnet-policy-file"><a class="group flex items-center gap-2" href="#tailnet-policy-file"><span id="inner-text">Tailnet policy file</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <!-- --> <p>The tailnet policy file stores your Tailscale network's access rules, along with other tailnet configuration items. It uses <a href="https://github.com/tailscale/hujson">human JSON (HuJSON)</a> and conforms to the <a href="/kb/1337/acl-syntax">Tailscale policy syntax</a>.</p> <h2 id="tailscalar"><a class="group flex items-center gap-2" href="#tailscalar"><span id="inner-text">Tailscalar</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>A Tailscalar is a Tailscale employee.</p> <h2 id="tailscale-ip-address"><a class="group flex items-center gap-2" href="#tailscale-ip-address"><span id="inner-text">Tailscale IP address</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>A <a href="#tailscale-ip-address">Tailscale IP address</a> is a <a href="/kb/1033/ip-and-dns-addresses">unique IP address</a> assigned to each device in your Tailscale network. It's always in the form <code>100.x.y.z</code> (for example, <code>100.101.102.103</code>). It stays the same even when switching between your home internet connection, cellular networks, or coffee shop Wi-Fi networks.</p> <h2 id="tunnel"><a class="group flex items-center gap-2" href="#tunnel"><span id="inner-text">Tunnel</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p>In networking, a tunnel is an encapsulated connection between one or more points in a network. It lets users, devices, or resources communicate securely over a public data network.</p> <h2 id="wireguard"><a class="group flex items-center gap-2" href="#wireguard"><span id="inner-text">WireGuard</span><span aria-hidden="true" class="inline-block opacity-0 transition-opacity duration-150 group-hover:opacity-100"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link-2"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg></span></a></h2> <p><a href="https://www.wireguard.com">WireGuard</a> is the underlying cryptographic protocol that Tailscale uses.</p><!--/$--></div></article><p class="mt-6 text-sm leading-snug text-gray-600">Last updated <!-- -->Dec 10, 2024</p></div></div><aside class="js-docHighlight col-span-10 h-full pb-8 md:col-span-8 md:col-start-4 xl:col-span-2 xl:col-start-auto"><div class="sticky top-16 flex flex-col gap-8"><div class="flex flex-col gap-2"><div class="tracking-wider text-xs font-semibold uppercase">On this page</div><ul class="flex flex-col gap-1 pt-1 leading-tight"><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#access-control-lists">Access control lists</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#tags">tags</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#admin-console">Admin console</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#api">API</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#cli">CLI</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#coordination-server">Coordination server</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#device">Device</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#device-key">Device key</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#firewall">Firewall</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#identity-provider">Identity Provider</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#key-expiry">Key expiry</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#magicdns">MagicDNS</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#nat-traversal">NAT traversal</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#network-topology">Network topology</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#node">Node</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#peer">Peer</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#relay">Relay</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#sso">SSO</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#tailnet">Tailnet</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#tailnet-policy-file">Tailnet policy file</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#tailscalar">Tailscalar</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#tailscale-ip-address">Tailscale IP address</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#tunnel">Tunnel</a></li><li><a class="text-sm !text-gray-500 transition-colors hover:!text-gray-900" href="#wireguard">WireGuard</a></li></ul></div></div></aside></div></main><footer class=" pb-16 md:pb-28 md:pt-20 "><div class="container grid gap-x-4 gap-y-8 pb-8 xxs:grid-cols-2 sm:grid-cols-3 sm:gap-5 md:pb-[110px] lg:grid-cols-6"><div><p class="t-16 !leading-[1.05] text-heading-black">Product</p><div class="mt-4 flex flex-col gap-3 lg:mt-8 lg:gap-4"><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/blog/how-tailscale-works">How it works</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/pricing">Pricing</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/integrations">Integrations</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/features">Features</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/compare">Compare Tailscale</a></div></div><div><p class="t-16 !leading-[1.05] text-heading-black">Use Cases</p><div class="mt-4 flex flex-col gap-3 lg:mt-8 lg:gap-4"><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/use-cases/business-vpn">Business VPN</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/use-cases/remote-access">Remote Access</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/use-cases/site-to-site-networking">Site-to-Site Networking</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/use-cases/homelab">Homelab</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/enterprise">Enterprise</a></div></div><div><p class="t-16 !leading-[1.05] text-heading-black">Resources</p><div class="mt-4 flex flex-col gap-3 lg:mt-8 lg:gap-4"><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/blog">Blog</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/events-webinars">Events & Webinars</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/partnerships">Partnerships</a></div></div><div><p class="t-16 !leading-[1.05] text-heading-black">Company</p><div class="mt-4 flex flex-col gap-3 lg:mt-8 lg:gap-4"><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/company">Company</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/careers">Careers</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/press">Press</a></div></div><div><p class="t-16 !leading-[1.05] text-heading-black">Help & Support</p><div class="mt-4 flex flex-col gap-3 lg:mt-8 lg:gap-4"><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/contact/support">Support</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/contact/sales">Sales</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/security">Security</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/legal">Legal</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/opensource">Open Source</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/changelog">Changelog</a></div></div><div><p class="t-16 !leading-[1.05] text-heading-black">Learn</p><div class="mt-4 flex flex-col gap-3 lg:mt-8 lg:gap-4"><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/learn/generate-ssh-keys">SSH keys</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/learn/ssh-into-docker-container">Docker SSH</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/learn/devsecops">DevSecOps</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/learn/multicloud">Multicloud</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/blog/how-nat-traversal-works">NAT Traversal</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/blog/2021-09-private-dns-with-magicdns">MagicDNS</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/learn/privileged-access-management">PAM</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/learn/principle-of-least-privilege">PoLP</a><a class="text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100" href="/learn">All articles</a></div></div></div><div class="container"><div class="grid grid-cols-1 gap-x-5 gap-y-8 border-t border-stroke-grey pt-8 xxs:grid-cols-2 md:grid-cols-12 md:pt-[70px] lg:gap-y-[60px]"><div class="xxs:col-span-2 md:col-span-4"><a class="block w-[160px]" title="Homepage" data-track="Link Clicked" data-track-properties="{"label": "Footer logo"}" href="/"><svg class="transition-colors duration-200 " width="100%" height="100%" viewBox="0 0 110 20" fill="none" xmlns="http://www.w3.org/2000/svg"><ellipse cx="2.44719" cy="10.1796" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><ellipse cx="9.79094" cy="10.1796" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><ellipse opacity="0.2" cx="2.44719" cy="17.5077" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><ellipse opacity="0.2" cx="17.1269" cy="17.5077" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><ellipse cx="9.79094" cy="17.5077" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><ellipse cx="17.1269" cy="10.1796" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><ellipse opacity="0.2" cx="2.44719" cy="2.85924" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><ellipse opacity="0.2" cx="9.79094" cy="2.85924" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><ellipse opacity="0.2" cx="17.1269" cy="2.85924" rx="2.44719" ry="2.44128" fill="#242424"></ellipse><path d="M34.3979 18.458C35.0907 18.458 35.6536 18.3933 36.3248 18.2637V15.7584C35.9134 15.9096 35.4588 15.9528 35.0258 15.9528C33.965 15.9528 33.5753 15.4344 33.5753 14.441V9.34402H36.3248V6.83875H33.5753V3.12403H30.5443V6.83875H28.5742V9.34402H30.5443V14.7217C30.5443 17.0974 31.8 18.458 34.3979 18.458Z" fill="#242424"></path><path d="M41.2747 18.458C42.8984 18.458 43.9809 17.9181 44.5222 17.0758C44.5655 17.443 44.6954 17.9397 44.8686 18.2421H47.5964C47.4449 17.7237 47.3366 16.903 47.3366 16.3631V10.4455C47.3366 8.005 45.583 6.62277 42.617 6.62277C40.3654 6.62277 38.6118 7.46507 37.6376 8.69611L39.3696 10.4023C40.149 9.5384 41.1448 9.08486 42.3572 9.08486C43.8294 9.08486 44.4789 9.58159 44.4789 10.3159C44.4789 10.9422 44.0459 11.3742 41.7077 11.3742C39.4562 11.3742 37.183 12.3028 37.183 14.8945C37.183 17.2918 38.9149 18.458 41.2747 18.458ZM41.8809 16.1687C40.7118 16.1687 40.1706 15.672 40.1706 14.7865C40.1706 14.009 40.8201 13.4907 41.9026 13.4907C43.6345 13.4907 44.1108 13.3827 44.4789 13.0155V13.9442C44.4789 15.1753 43.4397 16.1687 41.8809 16.1687Z" fill="#242424"></path><path d="M49.3069 5.39173H52.4677V2.5625H49.3069V5.39173ZM49.3718 18.2421H52.4028V6.83875H49.3718V18.2421Z" fill="#242424"></path><path d="M54.6109 18.2421H57.6418V2.90805H54.6109V18.2421Z" fill="#242424"></path><path d="M63.9416 18.458C67.2757 18.458 68.986 16.7087 68.986 14.8729C68.986 13.2099 68.1417 11.9789 65.3705 11.4821C63.4221 11.1366 62.2097 10.7046 62.2097 10.0351C62.2097 9.45201 62.9025 9.04166 64.0715 9.04166C65.1107 9.04166 65.9767 9.38722 66.6262 10.1431L68.553 8.52333C67.5788 7.31389 65.9767 6.62277 64.0715 6.62277C61.1489 6.62277 59.3303 8.17777 59.3303 10.0783C59.3303 12.1517 61.2354 13.0803 63.2922 13.4475C65.0025 13.7499 65.9551 14.0738 65.9551 14.8081C65.9551 15.4344 65.2839 15.9528 64.0066 15.9528C62.7509 15.9528 61.7767 15.3696 61.322 14.5058L58.7674 15.7152C59.3952 17.2702 61.5385 18.458 63.9416 18.458Z" fill="#242424"></path><path d="M75.7621 18.458C77.9271 18.458 79.4859 17.5942 80.6549 15.6504L78.2302 14.4194C77.7755 15.3265 77.0395 15.9528 75.7621 15.9528C73.8353 15.9528 72.7961 14.3978 72.7961 12.5188C72.7961 10.6399 73.9003 9.12805 75.7621 9.12805C76.9312 9.12805 77.7106 9.75437 78.1652 10.7046L80.6116 9.40882C79.7889 7.61625 78.1652 6.62277 75.7621 6.62277C71.8003 6.62277 69.7652 9.5168 69.7652 12.5188C69.7652 15.78 72.2333 18.458 75.7621 18.458Z" fill="#242424"></path><path d="M85.4829 18.458C87.1067 18.458 88.1891 17.9181 88.7304 17.0758C88.7737 17.443 88.9036 17.9397 89.0768 18.2421H91.8046C91.6531 17.7237 91.5448 16.903 91.5448 16.3631V10.4455C91.5448 8.005 89.7912 6.62277 86.8252 6.62277C84.5737 6.62277 82.8201 7.46507 81.8458 8.69611L83.5778 10.4023C84.3572 9.5384 85.353 9.08486 86.5654 9.08486C88.0376 9.08486 88.6871 9.58159 88.6871 10.3159C88.6871 10.9422 88.2541 11.3742 85.9159 11.3742C83.6644 11.3742 81.3912 12.3028 81.3912 14.8945C81.3912 17.2918 83.1231 18.458 85.4829 18.458ZM86.0891 16.1687C84.9201 16.1687 84.3788 15.672 84.3788 14.7865C84.3788 14.009 85.0283 13.4907 86.1108 13.4907C87.8427 13.4907 88.319 13.3827 88.6871 13.0155V13.9442C88.6871 15.1753 87.6479 16.1687 86.0891 16.1687Z" fill="#242424"></path><path d="M93.3263 18.2421H96.3573V2.90805H93.3263V18.2421Z" fill="#242424"></path><path d="M103.631 18.458C105.861 18.458 107.658 17.5726 108.654 15.996L106.359 14.5274C105.753 15.4776 104.952 15.996 103.631 15.996C102.138 15.996 101.055 15.1753 100.774 13.5771H109.39V12.5188C109.39 9.5168 107.55 6.62277 103.61 6.62277C99.8643 6.62277 97.8293 9.5384 97.8293 12.5404C97.8293 16.8167 101.055 18.458 103.631 18.458ZM100.882 11.2014C101.358 9.75437 102.354 9.08486 103.675 9.08486C105.168 9.08486 106.078 9.97034 106.381 11.2014H100.882Z" fill="#242424"></path></svg></a></div><div class="flex flex-col gap-[14px] md:col-span-2"><a class="t-14 !leading-[1.05] underline transition-colors duration-300 text-heading-black/60 hover:text-black/100" href="/terms">Terms of Service</a><a class="t-14 !leading-[1.05] underline transition-colors duration-300 text-heading-black/60 hover:text-black/100" href="/privacy-policy">Privacy Policy</a></div><div class="md:col-span-3"><div class="t-14 max-w-[250px] !leading-[1.35] text-heading-black/60 ">WireGuard is a registered trademark of Jason A. Donenfeld.</div></div><div class="flex gap-[6px] xxs:col-span-2 md:col-span-3 md:flex md:justify-end"><a target="_blank" class="group transition-colors duration-300 text-heading-black hover:text-grey-3" data-track="Link Clicked" data-track-properties="{"label": "Footer Twitter logo"}" href="https://twitter.com/tailscale"><svg width="28" height="29" viewBox="0 0 28 29" fill="none" xmlns="http://www.w3.org/2000/svg"><rect y="0.988281" width="28" height="28" rx="14" fill="currentColor"></rect><path class=" transition-colors duration-300 group-hover:fill-heading-black" d="M8.03169 9L13.0509 15.0672L8 20H9.13675L13.5587 15.6812L17.1317 20H21L15.6985 13.5916L20.3997 9H19.263L15.1906 12.9775L11.9001 9H8.03169ZM9.70337 9.75698H11.4805L19.3281 19.2429H17.551L9.70337 9.75698Z" fill="white"></path></svg></a><a target="_blank" class="group transition-colors duration-300 text-heading-black hover:text-grey-3" data-track="Link Clicked" data-track-properties="{"label": "Footer Facebook logo"}" href="https://www.facebook.com/tailscale/"><svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.21875" width="27.2195" height="27.2195" rx="13.6098" fill="currentColor"></rect><path class=" transition-colors duration-300 group-hover:fill-heading-black" d="M12.434 19.6598L12.4179 14.8081H10.3008V12.7289H12.4179V11.3427C12.4179 9.47188 13.5974 8.57031 15.2966 8.57031C16.1106 8.57031 16.8101 8.62983 17.014 8.65643V10.6115L15.8355 10.612C14.9114 10.612 14.7324 11.0433 14.7324 11.6762V12.7289H17.3577L16.652 14.8081H14.7324V19.6598H12.434Z" fill="#fff"></path></svg></a><a target="_blank" class="group transition-colors duration-300 text-heading-black hover:text-grey-3" data-track="Link Clicked" data-track-properties="{"label": "Footer LinkedIn logo"}" href="https://www.linkedin.com/company/tailscale"><svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.439453" width="27.2195" height="27.2195" rx="13.6098" fill="currentColor"></rect><path class=" transition-colors duration-300 group-hover:fill-heading-black" d="M8.68685 18.6518H10.8825V11.5871H8.68685V18.6518Z" fill="white"></path><path class=" transition-colors duration-300 group-hover:fill-heading-black" d="M8.50195 9.34036C8.50195 10.0352 9.07976 10.6143 9.77312 10.6143C10.4896 10.6143 11.0443 10.0584 11.0443 9.34036C11.0443 8.64547 10.4665 8.06641 9.77312 8.06641C9.07976 8.06641 8.50195 8.64547 8.50195 9.34036Z" fill="white"></path><path class=" transition-colors duration-300 group-hover:fill-heading-black" d="M16.8917 18.6518H19.0873V14.7836C19.0873 12.8843 18.6713 11.425 16.4525 11.425C15.3894 11.425 14.6729 12.0041 14.3724 12.56H14.3493V11.5871H12.2461V18.6518H14.4418V15.1542C14.4418 14.2509 14.6267 13.3475 15.7592 13.3475C16.8686 13.3475 16.8917 14.413 16.8917 15.2237V18.6518Z" fill="white"></path></svg></a><a target="_blank" rel="me" class="group transition-colors duration-300 text-heading-black hover:text-grey-3" data-track="Link Clicked" data-track-properties="{"label": "Footer Mastodon logo"}" href="https://hachyderm.io/@tailscale"><svg width="28" height="29" viewBox="0 0 28 29" fill="none" xmlns="http://www.w3.org/2000/svg"><rect y="0.988281" width="28" height="28" rx="14" fill="currentColor"></rect><path class="transition-colors duration-300 group-hover:fill-heading-black" fill="white" d="M19.9516 10.8781C19.7667 9.48128 18.5693 8.38051 17.1498 8.16721C16.9104 8.13117 16.003 8 13.9011 8H13.8854C11.7829 8 11.3319 8.13117 11.0924 8.16721C9.71243 8.3746 8.45223 9.3637 8.14648 10.777C7.99942 11.4731 7.98373 12.2447 8.01105 12.9526C8.04999 13.9677 8.05755 14.981 8.14823 15.992C8.21091 16.6635 8.32027 17.3297 8.47548 17.9855C8.76612 19.1968 9.94262 20.2048 11.0953 20.616C12.3294 21.0449 13.6566 21.1161 14.9282 20.8216C15.0681 20.7886 15.2065 20.7502 15.3432 20.7064C15.6519 20.6066 16.014 20.4949 16.2803 20.2987C16.2839 20.296 16.2869 20.2924 16.289 20.2883C16.2911 20.2842 16.2923 20.2797 16.2925 20.2751V19.2955C16.2924 19.2911 16.2914 19.2869 16.2895 19.283C16.2876 19.2791 16.2849 19.2758 16.2815 19.2731C16.2782 19.2704 16.2743 19.2686 16.2702 19.2676C16.266 19.2667 16.2617 19.2667 16.2576 19.2677C15.4429 19.4655 14.608 19.5647 13.7703 19.5631C12.3288 19.5631 11.941 18.8677 11.83 18.5782C11.7408 18.3279 11.6841 18.0669 11.6614 17.8018C11.6612 17.7973 11.662 17.7929 11.6638 17.7888C11.6656 17.7847 11.6683 17.7811 11.6717 17.7783C11.6751 17.7755 11.6791 17.7735 11.6834 17.7726C11.6876 17.7716 11.6921 17.7717 11.6963 17.7728C12.4975 17.9693 13.3188 18.0685 14.1429 18.0682C14.3411 18.0682 14.5387 18.0682 14.737 18.0629C15.5659 18.0393 16.4395 17.9962 17.255 17.8343C17.2754 17.8301 17.2957 17.8266 17.3132 17.8213C18.5995 17.5701 19.8237 16.7819 19.9481 14.786C19.9527 14.7074 19.9644 13.963 19.9644 13.8814C19.965 13.6043 20.0521 11.9156 19.9516 10.8781ZM17.9718 15.8584H16.6191V12.4905C16.6191 11.7815 16.3285 11.4199 15.7373 11.4199C15.0875 11.4199 14.762 11.8477 14.762 12.6926V14.5361H13.4175V12.6926C13.4175 11.8477 13.0914 11.4199 12.4415 11.4199C11.8538 11.4199 11.5603 11.7815 11.5597 12.4905V15.8584H10.2083V12.3883C10.2083 11.6793 10.3863 11.116 10.7425 10.6985C11.1098 10.2819 11.5917 10.068 12.1898 10.068C12.8821 10.068 13.4053 10.3386 13.754 10.8793L14.0906 11.4536L14.4277 10.8793C14.7765 10.3386 15.2996 10.068 15.9908 10.068C16.5883 10.068 17.0702 10.2819 17.4387 10.6985C17.7949 11.1156 17.9729 11.6789 17.9729 12.3883L17.9718 15.8584Z"></path></svg></a><a target="_blank" class="group transition-colors duration-300 text-heading-black hover:text-grey-3" data-track="Link Clicked" data-track-properties="{"label": "Footer Youtube logo"}" href="https://www.youtube.com/@Tailscale"><svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.658203" width="27.2195" height="27.2195" rx="13.6098" fill="currentColor"></rect><path class=" transition-colors duration-300 group-hover:fill-heading-black" d="M19.6754 11.46C19.5368 10.5863 19.121 9.98138 18.1506 9.84696C16.6258 9.57813 14.2693 9.57812 14.2693 9.57812C14.2693 9.57812 11.9128 9.57813 10.388 9.84696C9.4177 9.98138 8.93254 10.5863 8.86323 11.46C8.72461 12.3337 8.72461 13.6106 8.72461 13.6106C8.72461 13.6106 8.72461 14.8876 8.86323 15.7613C9.00185 16.635 9.4177 17.2399 10.388 17.3743C11.9128 17.6432 14.2693 17.6432 14.2693 17.6432C14.2693 17.6432 16.6258 17.6432 18.1506 17.3743C19.121 17.1727 19.5368 16.635 19.6754 15.7613C19.814 14.8876 19.814 13.6106 19.814 13.6106C19.814 13.6106 19.814 12.3337 19.6754 11.46ZM12.8831 15.6269V11.5944L16.3486 13.6106L12.8831 15.6269Z" fill="white"></path></svg></a></div><div class="t-14 flex flex-wrap tracking-[0.07px] xxs:col-span-2 md:col-span-12 text-heading-black/60 ">© <!-- -->2025<!-- --> <!-- -->Tailscale Inc. All rights reserved. Tailscale is a registered trademark of Tailscale Inc.</div></div></div></footer><!--$--><!--/$--><script src="/_next/static/chunks/webpack-7add37186d0ff440.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0]);self.__next_f.push([2,null])</script><script>self.__next_f.push([1,"1:HL[\"/_next/static/media/503dd21c3e9aa947-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n2:HL[\"/_next/static/media/59aafc96071162d7-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n3:HL[\"/_next/static/media/6190d09d67eb8e2d-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n4:HL[\"/_next/static/media/6267f766bc823bf8-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n5:HL[\"/_next/static/media/ce17880c21b59d21-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n6:HL[\"/_next/static/media/d3470cfc68a51edd-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n7:HL[\"/_next/static/css/425118351a398cbb.css\",\"style\"]\n8:HL[\"/_next/static/css/90d8e427ffb6abd2.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"9:I[95751,[],\"\"]\nc:I[39275,[],\"\"]\ne:I[89611,[\"231\",\"static/chunks/231-07416b1f957d0db7.js\",\"9286\",\"static/chunks/app/kb/%5B%5B...params%5D%5D/error-d79b6b3fc14d36f0.js\"],\"default\"]\nf:I[61343,[],\"\"]\n12:I[60165,[\"3185\",\"static/chunks/app/layout-32e599393abf9240.js\"],\"default\"]\n14:I[76130,[],\"\"]\nd:[\"params\",\"1155/terminology-and-concepts\",\"oc\"]\n15:[]\n"])</script><script>self.__next_f.push([1,"0:[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/425118351a398cbb.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/90d8e427ffb6abd2.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}]],[\"$\",\"$L9\",null,{\"buildId\":\"1lqTpUpp4ZU3uxrLrtdhl\",\"assetPrefix\":\"\",\"initialCanonicalUrl\":\"/kb/1155/terminology-and-concepts\",\"initialTree\":[\"\",{\"children\":[\"kb\",{\"children\":[[\"params\",\"1155/terminology-and-concepts\",\"oc\"],{\"children\":[\"__PAGE__\",{}]}]}]},\"$undefined\",\"$undefined\",true],\"initialSeedData\":[\"\",{\"children\":[\"kb\",{\"children\":[[\"params\",\"1155/terminology-and-concepts\",\"oc\"],{\"children\":[\"__PAGE__\",{},[[\"$La\",\"$Lb\"],null],null]},[\"$\",\"$Lc\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"kb\",\"children\",\"$d\",\"children\"],\"error\":\"$e\",\"errorStyles\":[],\"errorScripts\":[],\"template\":[\"$\",\"$Lf\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$L10\",\"notFoundStyles\":[],\"styles\":null}],null]},[\"$L11\",null],null]},[[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"__className_943d4e\",\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"$L12\",null,{\"children\":[\"$\",\"$Lc\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$Lf\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":[],\"styles\":null}]}]}]}],null],null],\"couldBeIntercepted\":false,\"initialHead\":[false,\"$L13\"],\"globalErrorComponent\":\"$14\",\"missingSlots\":\"$W15\"}]]\n"])</script><script>self.__next_f.push([1,"16:I[231,[\"231\",\"static/chunks/231-07416b1f957d0db7.js\",\"5828\",\"static/chunks/5828-bdbd767bd529f5f9.js\",\"6257\",\"static/chunks/6257-e637d432bc778e7a.js\",\"919\",\"static/chunks/919-76fb265b32c91554.js\",\"7004\",\"static/chunks/app/kb/layout-fda2441131486605.js\"],\"\"]\n10:[\"$\",\"div\",null,{\"className\":\"mx-auto max-w-lg py-14 md:py-16\",\"children\":[[\"$\",\"h1\",null,{\"className\":\"text-2xl font-medium md:text-4xl\",\"children\":\"Page not found\"}],[\"$\",\"h2\",null,{\"className\":\"mt-4 text-lg font-medium md:text-xl\",\"children\":\"Sorry, but the page you were looking for could not be found.\"}],[\"$\",\"p\",null,{\"className\":\"prose mt-4\",\"children\":[\"You can\",\" \",[\"$\",\"$L16\",null,{\"className\":\"link\",\"href\":\"/kb\",\"children\":\"return to our docs homepage\"}],\",\",\" \",[\"$\",\"$L16\",null,{\"className\":\"link\",\"href\":\"/\",\"children\":\"site homepage\"}],\", or\",\" \",[\"$\",\"$L16\",null,{\"className\":\"link\",\"href\":\"mailto:info@tailscale.com\",\"children\":\"get in touch\"}],\" \",\"if you can’t find what you’re looking for.\"]}]]}]\n"])</script><script>self.__next_f.push([1,"13:[[\"$\",\"meta\",\"0\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"1\",{\"name\":\"theme-color\",\"content\":\"#fff\"}],[\"$\",\"meta\",\"2\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"3\",{\"children\":\"Terminology and concepts · Tailscale Docs\"}],[\"$\",\"meta\",\"4\",{\"name\":\"description\",\"content\":\"Learn Tailscale terminology and concepts.\"}],[\"$\",\"link\",\"5\",{\"rel\":\"canonical\",\"href\":\"https://tailscale.com/kb/1155/terminology-and-concepts\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:title\",\"content\":\"Terminology and concepts · Tailscale Docs\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:description\",\"content\":\"Learn Tailscale terminology and concepts.\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:url\",\"content\":\"https://tailscale.com/kb/1155/terminology-and-concepts\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:site_name\",\"content\":\"Tailscale\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:image\",\"content\":\"https://tailscale.com/files/images/og-image.png\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:type\",\"content\":\"article\"}],[\"$\",\"meta\",\"12\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:creator\",\"content\":\"@tailscale\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:title\",\"content\":\"Terminology and concepts\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:description\",\"content\":\"Learn Tailscale terminology and concepts.\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:image\",\"content\":\"https://tailscale.com/files/images/og-image.png\"}],[\"$\",\"link\",\"17\",{\"rel\":\"icon\",\"href\":\"/favicon.png\",\"type\":\"image/png\"}],[\"$\",\"link\",\"18\",{\"rel\":\"icon\",\"href\":\"/favicon.svg\",\"type\":\"image/svg+xml\"}],[\"$\",\"meta\",\"19\",{\"name\":\"next-size-adjust\"}]]\na:null\n"])</script><script>self.__next_f.push([1,"17:I[32443,[\"231\",\"static/chunks/231-07416b1f957d0db7.js\",\"5828\",\"static/chunks/5828-bdbd767bd529f5f9.js\",\"6257\",\"static/chunks/6257-e637d432bc778e7a.js\",\"919\",\"static/chunks/919-76fb265b32c91554.js\",\"7004\",\"static/chunks/app/kb/layout-fda2441131486605.js\"],\"CurrentUserProvider\"]\n18:I[1843,[\"231\",\"static/chunks/231-07416b1f957d0db7.js\",\"5828\",\"static/chunks/5828-bdbd767bd529f5f9.js\",\"6257\",\"static/chunks/6257-e637d432bc778e7a.js\",\"919\",\"static/chunks/919-76fb265b32c91554.js\",\"7004\",\"static/chunks/app/kb/layout-fda2441131486605.js\"],\"default\"]\n19:T820,"])</script><script>self.__next_f.push([1,"M19.9516 10.8781C19.7667 9.48128 18.5693 8.38051 17.1498 8.16721C16.9104 8.13117 16.003 8 13.9011 8H13.8854C11.7829 8 11.3319 8.13117 11.0924 8.16721C9.71243 8.3746 8.45223 9.3637 8.14648 10.777C7.99942 11.4731 7.98373 12.2447 8.01105 12.9526C8.04999 13.9677 8.05755 14.981 8.14823 15.992C8.21091 16.6635 8.32027 17.3297 8.47548 17.9855C8.76612 19.1968 9.94262 20.2048 11.0953 20.616C12.3294 21.0449 13.6566 21.1161 14.9282 20.8216C15.0681 20.7886 15.2065 20.7502 15.3432 20.7064C15.6519 20.6066 16.014 20.4949 16.2803 20.2987C16.2839 20.296 16.2869 20.2924 16.289 20.2883C16.2911 20.2842 16.2923 20.2797 16.2925 20.2751V19.2955C16.2924 19.2911 16.2914 19.2869 16.2895 19.283C16.2876 19.2791 16.2849 19.2758 16.2815 19.2731C16.2782 19.2704 16.2743 19.2686 16.2702 19.2676C16.266 19.2667 16.2617 19.2667 16.2576 19.2677C15.4429 19.4655 14.608 19.5647 13.7703 19.5631C12.3288 19.5631 11.941 18.8677 11.83 18.5782C11.7408 18.3279 11.6841 18.0669 11.6614 17.8018C11.6612 17.7973 11.662 17.7929 11.6638 17.7888C11.6656 17.7847 11.6683 17.7811 11.6717 17.7783C11.6751 17.7755 11.6791 17.7735 11.6834 17.7726C11.6876 17.7716 11.6921 17.7717 11.6963 17.7728C12.4975 17.9693 13.3188 18.0685 14.1429 18.0682C14.3411 18.0682 14.5387 18.0682 14.737 18.0629C15.5659 18.0393 16.4395 17.9962 17.255 17.8343C17.2754 17.8301 17.2957 17.8266 17.3132 17.8213C18.5995 17.5701 19.8237 16.7819 19.9481 14.786C19.9527 14.7074 19.9644 13.963 19.9644 13.8814C19.965 13.6043 20.0521 11.9156 19.9516 10.8781ZM17.9718 15.8584H16.6191V12.4905C16.6191 11.7815 16.3285 11.4199 15.7373 11.4199C15.0875 11.4199 14.762 11.8477 14.762 12.6926V14.5361H13.4175V12.6926C13.4175 11.8477 13.0914 11.4199 12.4415 11.4199C11.8538 11.4199 11.5603 11.7815 11.5597 12.4905V15.8584H10.2083V12.3883C10.2083 11.6793 10.3863 11.116 10.7425 10.6985C11.1098 10.2819 11.5917 10.068 12.1898 10.068C12.8821 10.068 13.4053 10.3386 13.754 10.8793L14.0906 11.4536L14.4277 10.8793C14.7765 10.3386 15.2996 10.068 15.9908 10.068C16.5883 10.068 17.0702 10.2819 17.4387 10.6985C17.7949 11.1156 17.9729 11.6789 17.9729 12.3883L17.9718 15.8584Z"])</script><script>self.__next_f.push([1,"11:[[\"$\",\"$L17\",null,{\"children\":[\"$\",\"$L18\",null,{\"menu\":[{\"submenu\":{\"product\":{\"rightCol\":{\"nav\":{\"links\":[{\"link\":\"/integrations\",\"_key\":\"c653da519dfb\",\"title\":\"Integrations\"},{\"link\":\"/features\",\"_key\":\"a878da5fa54c\",\"title\":\"Features\"},{\"link\":\"/compare\",\"_key\":\"adda698ed879\",\"title\":\"Compare Tailscale\"},{\"link\":\"/partnerships\",\"_key\":\"b57369965809\",\"title\":\"Partnerships\"}],\"heading\":\"Explore\"}},\"leftCol\":{\"topNav\":{\"heading\":\"Meet Tailscale\",\"links\":[{\"icon\":{\"_type\":\"sanityImage\",\"alt\":\"icon\"},\"link\":\"/blog/how-tailscale-works/\",\"_key\":\"5495d201056a\",\"title\":\"How it works\"},{\"icon\":{\"_type\":\"sanityImage\",\"alt\":\"icon\"},\"link\":\"/why-tailscale\",\"_key\":\"dc9cde7ff83cb94cfc98ff29bdcd0997\",\"title\":\"Why Tailscale\"},{\"icon\":{\"_type\":\"sanityImage\",\"alt\":\"WireGuard®\"},\"link\":\"/wireguard-vpn\",\"_key\":\"5d88e3ffcc6b\",\"title\":\"WireGuard® for Enterprises\"},{\"title\":\"Bring Tailscale to Work\",\"icon\":{\"_type\":\"sanityImage\",\"alt\":\"Bring Tailscale to Work\"},\"link\":\"/bring-tailscale-to-work\",\"_key\":\"435de37ddd5f\"}]}}},\"submenuType\":\"product\"},\"hasSubmenu\":true,\"_key\":\"95381f81d527\",\"title\":\"Product\"},{\"submenu\":{\"product\":{\"rightCol\":{\"nav\":{\"heading\":\"By role\",\"links\":[{\"link\":\"/solutions/devops\",\"_key\":\"502a00f49baf\",\"title\":\"DevOps\"},{\"link\":\"/solutions/it\",\"_key\":\"0fe4c0d6fa83\",\"title\":\"IT\"},{\"link\":\"/solutions/security\",\"_key\":\"026f30b876a7\",\"title\":\"Security\"}]}},\"leftCol\":{\"topNav\":{\"heading\":\"By use-case\",\"links\":[{\"link\":\"/use-cases/remote-access\",\"_key\":\"193eaaa0cef8\",\"title\":\"Remote Access\"},{\"title\":\"Site-to-site Networking\",\"link\":\"/use-cases/site-to-site-networking\",\"_key\":\"05cadfcf3e65b04708a9d88060f68f9e\"},{\"link\":\"/use-cases/multi-cloud-networking\",\"_key\":\"fbd28dffeac0\",\"title\":\"Multi-Cloud Networking\"},{\"link\":\"/use-cases/kubernetes\",\"_key\":\"da202f1d966a\",\"title\":\"Kubernetes Networking\"},{\"title\":\"Edge \u0026 IoT Deployments\",\"link\":\"/use-cases/iot\",\"_key\":\"8c78e633c6b1\"},{\"title\":\"Zero Trust Networking\",\"link\":\"/use-cases/zero-trust-networking\",\"_key\":\"6a363d694952\"},{\"link\":\"/use-cases/ai\",\"_key\":\"9c49b97d6b06\",\"title\":\"AI Workloads\"},{\"_key\":\"2602b548bd52\",\"title\":\"Secure SaaS\",\"link\":\"/use-cases/secure-saas\"},{\"title\":\"Business VPN\",\"link\":\"/use-cases/business-vpn\",\"_key\":\"6fc65e9fe1c6\"},{\"link\":\"/use-cases/homelab\",\"_key\":\"d99d14013ab3\",\"title\":\"Homelab\"}]}}},\"submenuType\":\"product\"},\"hasSubmenu\":true,\"_key\":\"a7062f1924df\",\"title\":\"Solutions\"},{\"_key\":\"fd055b16290df04c6012d0d33c2fad13\",\"title\":\"Enterprise\",\"submenu\":{\"submenuType\":\"product\"},\"link\":\"/enterprise\",\"hasSubmenu\":false},{\"submenu\":{\"product\":{\"leftCol\":{\"topNav\":{\"heading\":\"Nav heading here\",\"links\":[{\"title\":\"Title here\",\"icon\":{\"alt\":\"Alt text \",\"asset\":{\"_ref\":\"image-a06dc612b1e3e4f4df53a72030002600639a8738-300x120-png\",\"_type\":\"reference\"},\"_type\":\"sanityImage\"},\"link\":\"https://tailscale.com/customers\",\"description\":\"How Cribl Enables Secure Work From Anywhere with Tailscale\",\"_key\":\"2d22491d8262\"}]}}},\"resources\":{\"topNav\":[{\"heading\":\"Cribl\",\"description\":\"How Cribl Enables Secure Work From Anywhere with Tailscale\",\"_key\":\"61d0f0cb130e\"},{\"heading\":\"Cribl\",\"description\":\"How Cribl Enables Secure Work From Anywhere with Tailscale\",\"_key\":\"712684d509a6a6ea07ab9401bdb23f8f\"},{\"heading\":\"Cribl\",\"description\":\"How Cribl Enables Secure Work From Anywhere with Tailscale\",\"_key\":\"ceac3f234a3a6923a671af91772b7e8b\"}]},\"submenuType\":\"product\"},\"link\":\"/customers\",\"hasSubmenu\":false,\"_key\":\"b595975539c7407a7ed4510edd549223\",\"title\":\"Customers\"},{\"hasSubmenu\":false,\"_key\":\"f06fabeb084c\",\"title\":\"Docs\",\"submenu\":{\"submenuType\":\"product\"},\"link\":\"/kb/1017/install/\"},{\"title\":\"Blog\",\"submenu\":{\"submenuType\":\"product\"},\"link\":\"/blog\",\"hasSubmenu\":false,\"_key\":\"f2537b6fa068\"},{\"link\":\"/pricing\",\"hasSubmenu\":false,\"_key\":\"e1b7b44dc091\",\"title\":\"Pricing\",\"submenu\":{\"submenuType\":\"product\"}}],\"footerData\":\"$undefined\",\"headerStyle\":\"dark\",\"button\":{\"buttonOptions\":{\"color\":\"black\"},\"_type\":\"button\",\"link\":{\"title\":\"Get started - it's free!\",\"url\":\"https://login.tailscale.com/start\"}}}]}],[\"$\",\"main\",null,{\"className\":\"scope-kb is-wide container\",\"children\":[\"$\",\"$Lc\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"kb\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$Lf\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\",\"styles\":null}]}],[\"$\",\"footer\",null,{\"className\":\" pb-16 md:pb-28 md:pt-20 \",\"children\":[[\"$\",\"div\",null,{\"className\":\"container grid gap-x-4 gap-y-8 pb-8 xxs:grid-cols-2 sm:grid-cols-3 sm:gap-5 md:pb-[110px] lg:grid-cols-6\",\"children\":[[\"$\",\"div\",null,{\"children\":[[\"$\",\"p\",null,{\"className\":\"t-16 !leading-[1.05] text-heading-black\",\"children\":\"Product\"}],[\"$\",\"div\",null,{\"className\":\"mt-4 flex flex-col gap-3 lg:mt-8 lg:gap-4\",\"children\":[[\"$\",\"$L16\",\"Product/blog/how-tailscale-works/\",{\"href\":\"/blog/how-tailscale-works/\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"How it works\"}}],[\"$\",\"$L16\",\"Product/pricing\",{\"href\":\"/pricing\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Pricing\"}}],[\"$\",\"$L16\",\"Product/integrations\",{\"href\":\"/integrations\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Integrations\"}}],[\"$\",\"$L16\",\"Product/features\",{\"href\":\"/features\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Features\"}}],[\"$\",\"$L16\",\"Product/compare\",{\"href\":\"/compare\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Compare Tailscale\"}}]]}]]}],[\"$\",\"div\",null,{\"children\":[[\"$\",\"p\",null,{\"className\":\"t-16 !leading-[1.05] text-heading-black\",\"children\":\"Use Cases\"}],[\"$\",\"div\",null,{\"className\":\"mt-4 flex flex-col gap-3 lg:mt-8 lg:gap-4\",\"children\":[[\"$\",\"$L16\",\"Use Cases/use-cases/business-vpn\",{\"href\":\"/use-cases/business-vpn\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Business VPN\"}}],[\"$\",\"$L16\",\"Use Cases/use-cases/remote-access\",{\"href\":\"/use-cases/remote-access\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Remote Access\"}}],[\"$\",\"$L16\",\"Use Cases/use-cases/site-to-site-networking\",{\"href\":\"/use-cases/site-to-site-networking\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Site-to-Site Networking\"}}],[\"$\",\"$L16\",\"Use Cases/use-cases/homelab\",{\"href\":\"/use-cases/homelab\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Homelab\"}}],[\"$\",\"$L16\",\"Use Cases/enterprise\",{\"href\":\"/enterprise\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Enterprise\"}}]]}]]}],[\"$\",\"div\",null,{\"children\":[[\"$\",\"p\",null,{\"className\":\"t-16 !leading-[1.05] text-heading-black\",\"children\":\"Resources\"}],[\"$\",\"div\",null,{\"className\":\"mt-4 flex flex-col gap-3 lg:mt-8 lg:gap-4\",\"children\":[[\"$\",\"$L16\",\"Resources/blog\",{\"href\":\"/blog\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Blog\"}}],[\"$\",\"$L16\",\"Resources/events-webinars\",{\"href\":\"/events-webinars\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Events \u0026 Webinars\"}}],[\"$\",\"$L16\",\"Resources/partnerships\",{\"href\":\"/partnerships\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Partnerships\"}}]]}]]}],[\"$\",\"div\",null,{\"children\":[[\"$\",\"p\",null,{\"className\":\"t-16 !leading-[1.05] text-heading-black\",\"children\":\"Company\"}],[\"$\",\"div\",null,{\"className\":\"mt-4 flex flex-col gap-3 lg:mt-8 lg:gap-4\",\"children\":[[\"$\",\"$L16\",\"Company/company\",{\"href\":\"/company\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Company\"}}],[\"$\",\"$L16\",\"Company/careers\",{\"href\":\"/careers\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Careers\"}}],[\"$\",\"$L16\",\"Company/press\",{\"href\":\"/press\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Press\"}}]]}]]}],[\"$\",\"div\",null,{\"children\":[[\"$\",\"p\",null,{\"className\":\"t-16 !leading-[1.05] text-heading-black\",\"children\":\"Help \u0026 Support\"}],[\"$\",\"div\",null,{\"className\":\"mt-4 flex flex-col gap-3 lg:mt-8 lg:gap-4\",\"children\":[[\"$\",\"$L16\",\"Help \u0026 Support/contact/support\",{\"href\":\"/contact/support\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Support\"}}],[\"$\",\"$L16\",\"Help \u0026 Support/contact/sales\",{\"href\":\"/contact/sales\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Sales\"}}],[\"$\",\"$L16\",\"Help \u0026 Support/security\",{\"href\":\"/security\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Security\"}}],[\"$\",\"$L16\",\"Help \u0026 Support/legal\",{\"href\":\"/legal\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Legal\"}}],[\"$\",\"$L16\",\"Help \u0026 Support/opensource\",{\"href\":\"/opensource\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Open Source\"}}],[\"$\",\"$L16\",\"Help \u0026 Support/changelog\",{\"href\":\"/changelog\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Changelog\"}}]]}]]}],[\"$\",\"div\",null,{\"children\":[[\"$\",\"p\",null,{\"className\":\"t-16 !leading-[1.05] text-heading-black\",\"children\":\"Learn\"}],[\"$\",\"div\",null,{\"className\":\"mt-4 flex flex-col gap-3 lg:mt-8 lg:gap-4\",\"children\":[[\"$\",\"$L16\",\"Learn/learn/generate-ssh-keys/\",{\"href\":\"/learn/generate-ssh-keys/\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"SSH keys\"}}],[\"$\",\"$L16\",\"Learn/learn/ssh-into-docker-container/\",{\"href\":\"/learn/ssh-into-docker-container/\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Docker SSH\"}}],[\"$\",\"$L16\",\"Learn/learn/devsecops/\",{\"href\":\"/learn/devsecops/\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"DevSecOps\"}}],[\"$\",\"$L16\",\"Learn/learn/multicloud/\",{\"href\":\"/learn/multicloud/\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Multicloud\"}}],[\"$\",\"$L16\",\"Learn/blog/how-nat-traversal-works/\",{\"href\":\"/blog/how-nat-traversal-works/\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"NAT Traversal\"}}],[\"$\",\"$L16\",\"Learn/blog/2021-09-private-dns-with-magicdns/\",{\"href\":\"/blog/2021-09-private-dns-with-magicdns/\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"MagicDNS\"}}],[\"$\",\"$L16\",\"Learn/learn/privileged-access-management/\",{\"href\":\"/learn/privileged-access-management/\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"PAM\"}}],[\"$\",\"$L16\",\"Learn/learn/principle-of-least-privilege/\",{\"href\":\"/learn/principle-of-least-privilege/\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"PoLP\"}}],[\"$\",\"$L16\",\"Learn/learn\",{\"href\":\"/learn\",\"className\":\"text-[14px] !leading-[1.05] !tracking-[0.08px] transition-colors duration-300 md:text-[16px] text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"All articles\"}}]]}]]}]]}],[\"$\",\"div\",null,{\"className\":\"container\",\"children\":[\"$\",\"div\",null,{\"className\":\"grid grid-cols-1 gap-x-5 gap-y-8 border-t border-stroke-grey pt-8 xxs:grid-cols-2 md:grid-cols-12 md:pt-[70px] lg:gap-y-[60px]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"xxs:col-span-2 md:col-span-4\",\"children\":[\"$\",\"$L16\",null,{\"href\":\"/\",\"className\":\"block w-[160px]\",\"title\":\"Homepage\",\"data-track\":\"Link Clicked\",\"data-track-properties\":\"{\\\"label\\\": \\\"Footer logo\\\"}\",\"children\":[\"$\",\"svg\",null,{\"className\":\"transition-colors duration-200 \",\"width\":\"100%\",\"height\":\"100%\",\"viewBox\":\"0 0 110 20\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"children\":[[\"$\",\"ellipse\",null,{\"cx\":\"2.44719\",\"cy\":\"10.1796\",\"rx\":\"2.44719\",\"ry\":\"2.44128\",\"fill\":\"#242424\"}],[\"$\",\"ellipse\",null,{\"cx\":\"9.79094\",\"cy\":\"10.1796\",\"rx\":\"2.44719\",\"ry\":\"2.44128\",\"fill\":\"#242424\"}],[\"$\",\"ellipse\",null,{\"opacity\":\"0.2\",\"cx\":\"2.44719\",\"cy\":\"17.5077\",\"rx\":\"2.44719\",\"ry\":\"2.44128\",\"fill\":\"#242424\"}],[\"$\",\"ellipse\",null,{\"opacity\":\"0.2\",\"cx\":\"17.1269\",\"cy\":\"17.5077\",\"rx\":\"2.44719\",\"ry\":\"2.44128\",\"fill\":\"#242424\"}],[\"$\",\"ellipse\",null,{\"cx\":\"9.79094\",\"cy\":\"17.5077\",\"rx\":\"2.44719\",\"ry\":\"2.44128\",\"fill\":\"#242424\"}],[\"$\",\"ellipse\",null,{\"cx\":\"17.1269\",\"cy\":\"10.1796\",\"rx\":\"2.44719\",\"ry\":\"2.44128\",\"fill\":\"#242424\"}],[\"$\",\"ellipse\",null,{\"opacity\":\"0.2\",\"cx\":\"2.44719\",\"cy\":\"2.85924\",\"rx\":\"2.44719\",\"ry\":\"2.44128\",\"fill\":\"#242424\"}],[\"$\",\"ellipse\",null,{\"opacity\":\"0.2\",\"cx\":\"9.79094\",\"cy\":\"2.85924\",\"rx\":\"2.44719\",\"ry\":\"2.44128\",\"fill\":\"#242424\"}],[\"$\",\"ellipse\",null,{\"opacity\":\"0.2\",\"cx\":\"17.1269\",\"cy\":\"2.85924\",\"rx\":\"2.44719\",\"ry\":\"2.44128\",\"fill\":\"#242424\"}],[\"$\",\"path\",null,{\"d\":\"M34.3979 18.458C35.0907 18.458 35.6536 18.3933 36.3248 18.2637V15.7584C35.9134 15.9096 35.4588 15.9528 35.0258 15.9528C33.965 15.9528 33.5753 15.4344 33.5753 14.441V9.34402H36.3248V6.83875H33.5753V3.12403H30.5443V6.83875H28.5742V9.34402H30.5443V14.7217C30.5443 17.0974 31.8 18.458 34.3979 18.458Z\",\"fill\":\"#242424\"}],[\"$\",\"path\",null,{\"d\":\"M41.2747 18.458C42.8984 18.458 43.9809 17.9181 44.5222 17.0758C44.5655 17.443 44.6954 17.9397 44.8686 18.2421H47.5964C47.4449 17.7237 47.3366 16.903 47.3366 16.3631V10.4455C47.3366 8.005 45.583 6.62277 42.617 6.62277C40.3654 6.62277 38.6118 7.46507 37.6376 8.69611L39.3696 10.4023C40.149 9.5384 41.1448 9.08486 42.3572 9.08486C43.8294 9.08486 44.4789 9.58159 44.4789 10.3159C44.4789 10.9422 44.0459 11.3742 41.7077 11.3742C39.4562 11.3742 37.183 12.3028 37.183 14.8945C37.183 17.2918 38.9149 18.458 41.2747 18.458ZM41.8809 16.1687C40.7118 16.1687 40.1706 15.672 40.1706 14.7865C40.1706 14.009 40.8201 13.4907 41.9026 13.4907C43.6345 13.4907 44.1108 13.3827 44.4789 13.0155V13.9442C44.4789 15.1753 43.4397 16.1687 41.8809 16.1687Z\",\"fill\":\"#242424\"}],[\"$\",\"path\",null,{\"d\":\"M49.3069 5.39173H52.4677V2.5625H49.3069V5.39173ZM49.3718 18.2421H52.4028V6.83875H49.3718V18.2421Z\",\"fill\":\"#242424\"}],[\"$\",\"path\",null,{\"d\":\"M54.6109 18.2421H57.6418V2.90805H54.6109V18.2421Z\",\"fill\":\"#242424\"}],[\"$\",\"path\",null,{\"d\":\"M63.9416 18.458C67.2757 18.458 68.986 16.7087 68.986 14.8729C68.986 13.2099 68.1417 11.9789 65.3705 11.4821C63.4221 11.1366 62.2097 10.7046 62.2097 10.0351C62.2097 9.45201 62.9025 9.04166 64.0715 9.04166C65.1107 9.04166 65.9767 9.38722 66.6262 10.1431L68.553 8.52333C67.5788 7.31389 65.9767 6.62277 64.0715 6.62277C61.1489 6.62277 59.3303 8.17777 59.3303 10.0783C59.3303 12.1517 61.2354 13.0803 63.2922 13.4475C65.0025 13.7499 65.9551 14.0738 65.9551 14.8081C65.9551 15.4344 65.2839 15.9528 64.0066 15.9528C62.7509 15.9528 61.7767 15.3696 61.322 14.5058L58.7674 15.7152C59.3952 17.2702 61.5385 18.458 63.9416 18.458Z\",\"fill\":\"#242424\"}],[\"$\",\"path\",null,{\"d\":\"M75.7621 18.458C77.9271 18.458 79.4859 17.5942 80.6549 15.6504L78.2302 14.4194C77.7755 15.3265 77.0395 15.9528 75.7621 15.9528C73.8353 15.9528 72.7961 14.3978 72.7961 12.5188C72.7961 10.6399 73.9003 9.12805 75.7621 9.12805C76.9312 9.12805 77.7106 9.75437 78.1652 10.7046L80.6116 9.40882C79.7889 7.61625 78.1652 6.62277 75.7621 6.62277C71.8003 6.62277 69.7652 9.5168 69.7652 12.5188C69.7652 15.78 72.2333 18.458 75.7621 18.458Z\",\"fill\":\"#242424\"}],[\"$\",\"path\",null,{\"d\":\"M85.4829 18.458C87.1067 18.458 88.1891 17.9181 88.7304 17.0758C88.7737 17.443 88.9036 17.9397 89.0768 18.2421H91.8046C91.6531 17.7237 91.5448 16.903 91.5448 16.3631V10.4455C91.5448 8.005 89.7912 6.62277 86.8252 6.62277C84.5737 6.62277 82.8201 7.46507 81.8458 8.69611L83.5778 10.4023C84.3572 9.5384 85.353 9.08486 86.5654 9.08486C88.0376 9.08486 88.6871 9.58159 88.6871 10.3159C88.6871 10.9422 88.2541 11.3742 85.9159 11.3742C83.6644 11.3742 81.3912 12.3028 81.3912 14.8945C81.3912 17.2918 83.1231 18.458 85.4829 18.458ZM86.0891 16.1687C84.9201 16.1687 84.3788 15.672 84.3788 14.7865C84.3788 14.009 85.0283 13.4907 86.1108 13.4907C87.8427 13.4907 88.319 13.3827 88.6871 13.0155V13.9442C88.6871 15.1753 87.6479 16.1687 86.0891 16.1687Z\",\"fill\":\"#242424\"}],[\"$\",\"path\",null,{\"d\":\"M93.3263 18.2421H96.3573V2.90805H93.3263V18.2421Z\",\"fill\":\"#242424\"}],[\"$\",\"path\",null,{\"d\":\"M103.631 18.458C105.861 18.458 107.658 17.5726 108.654 15.996L106.359 14.5274C105.753 15.4776 104.952 15.996 103.631 15.996C102.138 15.996 101.055 15.1753 100.774 13.5771H109.39V12.5188C109.39 9.5168 107.55 6.62277 103.61 6.62277C99.8643 6.62277 97.8293 9.5384 97.8293 12.5404C97.8293 16.8167 101.055 18.458 103.631 18.458ZM100.882 11.2014C101.358 9.75437 102.354 9.08486 103.675 9.08486C105.168 9.08486 106.078 9.97034 106.381 11.2014H100.882Z\",\"fill\":\"#242424\"}]]}]}]}],[\"$\",\"div\",null,{\"className\":\"flex flex-col gap-[14px] md:col-span-2\",\"children\":[[\"$\",\"$L16\",\"/terms\",{\"href\":\"/terms\",\"className\":\"t-14 !leading-[1.05] underline transition-colors duration-300 text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Terms of Service\"}}],[\"$\",\"$L16\",\"/privacy-policy\",{\"href\":\"/privacy-policy\",\"className\":\"t-14 !leading-[1.05] underline transition-colors duration-300 text-heading-black/60 hover:text-black/100\",\"dangerouslySetInnerHTML\":{\"__html\":\"Privacy Policy\"}}]]}],[\"$\",\"div\",null,{\"className\":\"md:col-span-3\",\"children\":[\"$\",\"div\",null,{\"className\":\"t-14 max-w-[250px] !leading-[1.35] text-heading-black/60 \",\"dangerouslySetInnerHTML\":{\"__html\":\"WireGuard is a registered trademark of Jason A. Donenfeld.\"}}]}],[\"$\",\"div\",null,{\"className\":\"flex gap-[6px] xxs:col-span-2 md:col-span-3 md:flex md:justify-end\",\"children\":[[\"$\",\"$L16\",null,{\"target\":\"_blank\",\"href\":\"https://twitter.com/tailscale\",\"className\":\"group transition-colors duration-300 text-heading-black hover:text-grey-3\",\"data-track\":\"Link Clicked\",\"data-track-properties\":\"{\\\"label\\\": \\\"Footer Twitter logo\\\"}\",\"children\":[\"$\",\"svg\",null,{\"width\":\"28\",\"height\":\"29\",\"viewBox\":\"0 0 28 29\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"children\":[[\"$\",\"rect\",null,{\"y\":\"0.988281\",\"width\":\"28\",\"height\":\"28\",\"rx\":\"14\",\"fill\":\"currentColor\"}],[\"$\",\"path\",null,{\"className\":\" transition-colors duration-300 group-hover:fill-heading-black\",\"d\":\"M8.03169 9L13.0509 15.0672L8 20H9.13675L13.5587 15.6812L17.1317 20H21L15.6985 13.5916L20.3997 9H19.263L15.1906 12.9775L11.9001 9H8.03169ZM9.70337 9.75698H11.4805L19.3281 19.2429H17.551L9.70337 9.75698Z\",\"fill\":\"white\"}]]}]}],[\"$\",\"$L16\",null,{\"target\":\"_blank\",\"href\":\"https://www.facebook.com/tailscale/\",\"className\":\"group transition-colors duration-300 text-heading-black hover:text-grey-3\",\"data-track\":\"Link Clicked\",\"data-track-properties\":\"{\\\"label\\\": \\\"Footer Facebook logo\\\"}\",\"children\":[\"$\",\"svg\",null,{\"width\":\"28\",\"height\":\"28\",\"viewBox\":\"0 0 28 28\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"children\":[[\"$\",\"rect\",null,{\"x\":\"0.21875\",\"width\":\"27.2195\",\"height\":\"27.2195\",\"rx\":\"13.6098\",\"fill\":\"currentColor\"}],[\"$\",\"path\",null,{\"className\":\" transition-colors duration-300 group-hover:fill-heading-black\",\"d\":\"M12.434 19.6598L12.4179 14.8081H10.3008V12.7289H12.4179V11.3427C12.4179 9.47188 13.5974 8.57031 15.2966 8.57031C16.1106 8.57031 16.8101 8.62983 17.014 8.65643V10.6115L15.8355 10.612C14.9114 10.612 14.7324 11.0433 14.7324 11.6762V12.7289H17.3577L16.652 14.8081H14.7324V19.6598H12.434Z\",\"fill\":\"#fff\"}]]}]}],[\"$\",\"$L16\",null,{\"target\":\"_blank\",\"href\":\"https://www.linkedin.com/company/tailscale\",\"className\":\"group transition-colors duration-300 text-heading-black hover:text-grey-3\",\"data-track\":\"Link Clicked\",\"data-track-properties\":\"{\\\"label\\\": \\\"Footer LinkedIn logo\\\"}\",\"children\":[\"$\",\"svg\",null,{\"width\":\"28\",\"height\":\"28\",\"viewBox\":\"0 0 28 28\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"children\":[[\"$\",\"rect\",null,{\"x\":\"0.439453\",\"width\":\"27.2195\",\"height\":\"27.2195\",\"rx\":\"13.6098\",\"fill\":\"currentColor\"}],[\"$\",\"path\",null,{\"className\":\" transition-colors duration-300 group-hover:fill-heading-black\",\"d\":\"M8.68685 18.6518H10.8825V11.5871H8.68685V18.6518Z\",\"fill\":\"white\"}],[\"$\",\"path\",null,{\"className\":\" transition-colors duration-300 group-hover:fill-heading-black\",\"d\":\"M8.50195 9.34036C8.50195 10.0352 9.07976 10.6143 9.77312 10.6143C10.4896 10.6143 11.0443 10.0584 11.0443 9.34036C11.0443 8.64547 10.4665 8.06641 9.77312 8.06641C9.07976 8.06641 8.50195 8.64547 8.50195 9.34036Z\",\"fill\":\"white\"}],[\"$\",\"path\",null,{\"className\":\" transition-colors duration-300 group-hover:fill-heading-black\",\"d\":\"M16.8917 18.6518H19.0873V14.7836C19.0873 12.8843 18.6713 11.425 16.4525 11.425C15.3894 11.425 14.6729 12.0041 14.3724 12.56H14.3493V11.5871H12.2461V18.6518H14.4418V15.1542C14.4418 14.2509 14.6267 13.3475 15.7592 13.3475C16.8686 13.3475 16.8917 14.413 16.8917 15.2237V18.6518Z\",\"fill\":\"white\"}]]}]}],[\"$\",\"$L16\",null,{\"target\":\"_blank\",\"href\":\"https://hachyderm.io/@tailscale\",\"rel\":\"me\",\"className\":\"group transition-colors duration-300 text-heading-black hover:text-grey-3\",\"data-track\":\"Link Clicked\",\"data-track-properties\":\"{\\\"label\\\": \\\"Footer Mastodon logo\\\"}\",\"children\":[\"$\",\"svg\",null,{\"width\":\"28\",\"height\":\"29\",\"viewBox\":\"0 0 28 29\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"children\":[[\"$\",\"rect\",null,{\"y\":\"0.988281\",\"width\":\"28\",\"height\":\"28\",\"rx\":\"14\",\"fill\":\"currentColor\"}],[\"$\",\"path\",null,{\"className\":\"transition-colors duration-300 group-hover:fill-heading-black\",\"fill\":\"white\",\"d\":\"$19\"}]]}]}],[\"$\",\"$L16\",null,{\"target\":\"_blank\",\"href\":\"https://www.youtube.com/@Tailscale\",\"className\":\"group transition-colors duration-300 text-heading-black hover:text-grey-3\",\"data-track\":\"Link Clicked\",\"data-track-properties\":\"{\\\"label\\\": \\\"Footer Youtube logo\\\"}\",\"children\":[\"$\",\"svg\",null,{\"width\":\"28\",\"height\":\"28\",\"viewBox\":\"0 0 28 28\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"children\":[[\"$\",\"rect\",null,{\"x\":\"0.658203\",\"width\":\"27.2195\",\"height\":\"27.2195\",\"rx\":\"13.6098\",\"fill\":\"currentColor\"}],[\"$\",\"path\",null,{\"className\":\" transition-colors duration-300 group-hover:fill-heading-black\",\"d\":\"M19.6754 11.46C19.5368 10.5863 19.121 9.98138 18.1506 9.84696C16.6258 9.57813 14.2693 9.57812 14.2693 9.57812C14.2693 9.57812 11.9128 9.57813 10.388 9.84696C9.4177 9.98138 8.93254 10.5863 8.86323 11.46C8.72461 12.3337 8.72461 13.6106 8.72461 13.6106C8.72461 13.6106 8.72461 14.8876 8.86323 15.7613C9.00185 16.635 9.4177 17.2399 10.388 17.3743C11.9128 17.6432 14.2693 17.6432 14.2693 17.6432C14.2693 17.6432 16.6258 17.6432 18.1506 17.3743C19.121 17.1727 19.5368 16.635 19.6754 15.7613C19.814 14.8876 19.814 13.6106 19.814 13.6106C19.814 13.6106 19.814 12.3337 19.6754 11.46ZM12.8831 15.6269V11.5944L16.3486 13.6106L12.8831 15.6269Z\",\"fill\":\"white\"}]]}]}]]}],[\"$\",\"div\",null,{\"className\":\"t-14 flex flex-wrap tracking-[0.07px] xxs:col-span-2 md:col-span-12 text-heading-black/60 \",\"children\":[\"© \",2025,\" \",\"Tailscale Inc. All rights reserved. Tailscale is a registered trademark of Tailscale Inc.\"]}]]}]}]]}]]\n"])</script><script>self.__next_f.push([1,"1a:I[15583,[\"231\",\"static/chunks/231-07416b1f957d0db7.js\",\"5828\",\"static/chunks/5828-bdbd767bd529f5f9.js\",\"1850\",\"static/chunks/1850-dd5ed91b5253b88f.js\",\"7163\",\"static/chunks/app/kb/%5B%5B...params%5D%5D/page-4eefb0a22d44c126.js\"],\"Menu\"]\n13d:I[42937,[\"231\",\"static/chunks/231-07416b1f957d0db7.js\",\"5828\",\"static/chunks/5828-bdbd767bd529f5f9.js\",\"1850\",\"static/chunks/1850-dd5ed91b5253b88f.js\",\"7163\",\"static/chunks/app/kb/%5B%5B...params%5D%5D/page-4eefb0a22d44c126.js\"],\"Drawer\"]\n2e3:\"$Sreact.suspense\"\n2e4:I[2800,[\"231\",\"static/chunks/231-07416b1f957d0db7.js\",\"5828\",\"static/chunks/5828-bdbd767bd529f5f9.js\",\"1850\",\"static/chunks/1850-dd5ed91b5253b88f.js\",\"7163\",\"static/chunks/app/kb/%5B%5B...params%5D%5D/page-4eefb0a22d44c126.js\"],\"Search\"]\n2e5:\"$Sreact.fragment\"\n2e6:I[49336,[\"231\",\"static/chunks/231-07416b1f957d0db7.js\",\"5828\",\"static/chunks/5828-bdbd767bd529f5f9.js\",\"1850\",\"static/chunks/1850-dd5ed91b5253b88f.js\",\"7163\",\"static/chunks/app/kb/%5B%5B...params%5D%5D/page-4eefb0a22d44c126.js\"],\"default\"]\n2e7:I[74812,[\"231\",\"static/chunks/231-07416b1f957d0db7.js\",\"5828\",\"static/chunks/5828-bdbd767bd529f5f9.js\",\"1850\",\"static/chunks/1850-dd5ed91b5253b88f.js\",\"7163\",\"static/chunks/app/kb/%5B%5B...params%5D%5D/page-4eefb0a22d44c126.js\"],\"HeaderLink\"]\n2e8:I[72841,[\"231\",\"static/chunks/231-07416b1f957d0db7.js\",\"5828\",\"static/chunks/5828-bdbd767bd529f5f9.js\",\"1850\",\"static/chunks/1850-dd5ed91b5253b88f.js\",\"7163\",\"static/chunks/app/kb/%5B%5B...params%5D%5D/page-4eefb0a22d44c126.js\"],\"OnThisPage\"]\n1c:{\"label\":\"Download ↗\",\"href\":\"/downloads\"}\n1d:{\"label\":\"Update Tailscale\",\"numericId\":1067,\"slug\":\"update\"}\n1e:{\"label\":\"Uninstall Tailscale\",\"numericId\":1069,\"slug\":\"uninstall\"}\n23:{\"label\":\"Deploy on Android\",\"numericId\":1384,\"slug\":\"android-mdm\"}\n24:{\"label\":\"Deploy on iOS/tvOS\",\"numericId\":1380,\"slug\":\"ios-mdm\"}\n25:{\"label\":\"Deploy on macOS\",\"numericId\":1286,\"slug\":\"macos-mdm\"}\n26:{\"label\":\"Deploy on Windows\",\"numericId\":1318,\"slug\":\"windows-mdm\"}\n22:[\"$23\",\"$24\",\"$25\",\"$26\"]\n21:{\"label\":\"Customize Tailscale using system pol"])</script><script>self.__next_f.push([1,"icies\",\"numericId\":1315,\"slug\":\"mdm-keys\",\"items\":\"$22\"}\n29:{\"label\":\"Google Workspace\",\"numericId\":1386,\"slug\":\"mdm-google-workspace\"}\n2a:{\"label\":\"Jamf\",\"numericId\":1328,\"slug\":\"mdm-jamf\"}\n2b:{\"label\":\"JumpCloud\",\"numericId\":1485,\"slug\":\"mdm-jumpcloud\"}\n2c:{\"label\":\"Kandji\",\"numericId\":1329,\"slug\":\"mdm-kandji\"}\n2d:{\"label\":\"Microsoft Intune\",\"numericId\":1327,\"slug\":\"mdm-microsoft-intune\"}\n2e:{\"label\":\"SimpleMDM\",\"numericId\":1330,\"slug\":\"mdm-simplemdm\"}\n2f:{\"label\":\"TinyMDM\",\"numericId\":1385,\"slug\":\"mdm-tinymdm\"}\n28:[\"$29\",\"$2a\",\"$2b\",\"$2c\",\"$2d\",\"$2e\",\"$2f\"]\n27:{\"label\":\"MDM integration partners\",\"numericId\":1448,\"slug\":\"mdm-integration-partners\",\"items\":\"$28\"}\n20:[\"$21\",\"$27\"]\n1f:{\"label\":\"Deploy with MDM\",\"numericId\":1362,\"slug\":\"mdm\",\"items\":\"$20\"}\n1b:[\"$1c\",\"$1d\",\"$1e\",\"$1f\"]\n31:{\"label\":\"Use exit nodes\",\"numericId\":1408,\"slug\":\"quick-guide-exit-node\"}\n32:{\"label\":\"Configure a subnet router\",\"numericId\":1406,\"slug\":\"quick-guide-subnets\"}\n33:{\"label\":\"Host a website\",\"numericId\":1310,\"slug\":\"quick-guide-host-websites\"}\n34:{\"label\":\"Install on AWS\",\"numericId\":1449,\"slug\":\"quick-guide-aws\"}\n35:{\"label\":\"SSH into a Linux virtual machine\",\"numericId\":1308,\"slug\":\"quick-guide-ssh-linux-vm\"}\n36:{\"label\":\"Access a virtual private cloud (VPC)\",\"numericId\":1309,\"slug\":\"quick-guide-access-vpc\"}\n37:{\"label\":\"Add a Docker container\",\"numericId\":1453,\"slug\":\"quick-guide-docker\"}\n30:[\"$31\",\"$32\",\"$33\",\"$34\",\"$35\",\"$36\",\"$37\"]\n39:{\"label\":\"Google\",\"numericId\":1199,\"slug\":\"sso-google\"}\n3a:{\"label\":\"Microsoft Entra ID\",\"numericId\":1285,\"slug\":\"sso-microsoft\"}\n3b:{\"label\":\"Okta\",\"numericId\":1066,\"slug\":\"sso-okta\"}\n3c:{\"label\":\"GitHub\",\"numericId\":1284,\"slug\":\"sso-github\"}\n3d:{\"label\":\"Apple\",\"numericId\":1283,\"slug\":\"sso-apple\"}\n3e:{\"label\":\"OneLogin\",\"numericId\":1070,\"slug\":\"sso-onelogin\"}\n41:{\"label\":\"Google Workspace\",\"numericId\":1317,\"slug\":\"sso-google-sync\"}\n42:{\"label\":\"Microsoft Entra ID\",\"numericId\":1249,\"slug\":\"sso-entra-id-scim\"}\n43:{\"label\":\"Okta\",\"numericId\":1180,\"slug\":\"sso-okta-scim\"}\n40:[\"$41\",\"$42\",\"$43\"]\n3f:{"])</script><script>self.__next_f.push([1,"\"label\":\"User \u0026 group provisioning\",\"numericId\":1290,\"slug\":\"user-group-provisioning\",\"items\":\"$40\"}\n44:{\"label\":\"Custom OIDC providers\",\"numericId\":1240,\"slug\":\"sso-custom-oidc\"}\n45:{\"label\":\"Enable 2FA and MFA\",\"numericId\":1075,\"slug\":\"multifactor-auth\"}\n38:[\"$39\",\"$3a\",\"$3b\",\"$3c\",\"$3d\",\"$3e\",\"$3f\",\"$44\",\"$45\"]\n4b:{\"label\":\"ACL syntax\",\"numericId\":1337,\"slug\":\"acl-syntax\"}\n4a:[\"$4b\"]\n49:{\"label\":\"Manage ACLs\",\"numericId\":1018,\"slug\":\"acls\",\"items\":\"$4a\"}\n4c:{\"label\":\"Manage grants\",\"numericId\":1324,\"slug\":\"acl-grants\"}\n4d:{\"label\":\"Edit the tailnet policy file\",\"numericId\":1338,\"slug\":\"acl-edit\"}\n50:{\"label\":\"Manage ACLs with Bitbucket\",\"numericId\":1302,\"slug\":\"gitops-acls-bitbucket\"}\n51:{\"label\":\"Manage ACLs with GitHub\",\"numericId\":1306,\"slug\":\"gitops-acls-github\"}\n52:{\"label\":\"Manage ACLs with GitLab\",\"numericId\":1254,\"slug\":\"gitops-acls-gitlab\"}\n4f:[\"$50\",\"$51\",\"$52\"]\n4e:{\"label\":\"Manage ACLs with GitOps\",\"numericId\":1204,\"slug\":\"gitopcs-acls\",\"items\":\"$4f\"}\n48:[\"$49\",\"$4c\",\"$4d\",\"$4e\"]\n47:{\"label\":\"Manage access control\",\"numericId\":1393,\"slug\":\"access-control\",\"items\":\"$48\"}\n55:{\"label\":\"Device posture for JIT access\",\"numericId\":1383,\"slug\":\"device-posture-for-jit\"}\n58:{\"label\":\"ConductorOne\",\"numericId\":1208,\"slug\":\"jit-access-conductorone\"}\n59:{\"label\":\"Opal\",\"numericId\":1209,\"slug\":\"jit-access-opal\"}\n5a:{\"label\":\"Sym\",\"numericId\":1206,\"slug\":\"jit-access-sym\"}\n57:[\"$58\",\"$59\",\"$5a\"]\n56:{\"label\":\"3rd party JIT access integrations\",\"numericId\":1374,\"slug\":\"jit-access-integrations\",\"items\":\"$57\"}\n54:[\"$55\",\"$56\"]\n53:{\"label\":\"Manage Just-in-time access\",\"numericId\":1443,\"slug\":\"just-in-time-access\",\"items\":\"$54\"}\n5d:{\"label\":\"Add a device\",\"numericId\":1316,\"slug\":\"device-add\"}\n5e:{\"label\":\"Device approval\",\"numericId\":1099,\"slug\":\"device-approval\"}\n5f:{\"label\":\"Rename a device\",\"numericId\":1098,\"slug\":\"machine-names\"}\n60:{\"label\":\"Remove a device\",\"numericId\":1260,\"slug\":\"device-remove\"}\n63:{\"label\":\"Use Device Identity Collection\",\"numericId\":1326,\"slug\":\"device-identity\"}\n64:{\"label\":\"CrowdStrike Falco"])</script><script>self.__next_f.push([1,"n\",\"numericId\":1289,\"slug\":\"crowdstrike-zta\"}\n65:{\"label\":\"SentinelOne\",\"numericId\":1390,\"slug\":\"sentinelone\"}\n66:{\"label\":\"1Password XAM\",\"numericId\":1407,\"slug\":\"kolide\"}\n67:{\"label\":\"Jamf Pro\",\"numericId\":1409,\"slug\":\"jamf-pro\"}\n68:{\"label\":\"Microsoft Intune\",\"numericId\":1410,\"slug\":\"intune\"}\n69:{\"label\":\"Kandji\",\"numericId\":1405,\"slug\":\"kandji\"}\n62:[\"$63\",\"$64\",\"$65\",\"$66\",\"$67\",\"$68\",\"$69\"]\n61:{\"label\":\"Device posture management\",\"numericId\":1288,\"slug\":\"device-posture\",\"items\":\"$62\"}\n6a:{\"label\":\"Filter devices\",\"numericId\":1176,\"slug\":\"filter-devices\"}\n6b:{\"label\":\"Export list of devices\",\"numericId\":1228,\"slug\":\"export-device-list\"}\n6c:{\"label\":\"Use the web interface\",\"numericId\":1325,\"slug\":\"device-web-interface\"}\n6d:{\"label\":\"Add a device using a QR code\",\"numericId\":1336,\"slug\":\"device-add-qr-code\"}\n5c:[\"$5d\",\"$5e\",\"$5f\",\"$60\",\"$61\",\"$6a\",\"$6b\",\"$6c\",\"$6d\"]\n5b:{\"label\":\"Manage devices\",\"numericId\":1372,\"slug\":\"manage-devices\",\"items\":\"$5c\"}\n72:{\"label\":\"Invite team members\",\"numericId\":1064,\"slug\":\"invite-team-members\"}\n73:{\"label\":\"Invite any user\",\"numericId\":1271,\"slug\":\"invite-any-user\"}\n74:{\"label\":\"Use passkeys\",\"numericId\":1269,\"slug\":\"passkeys\"}\n71:[\"$72\",\"$73\",\"$74\"]\n70:{\"label\":\"Invite users\",\"items\":\"$71\",\"numericId\":1371,\"slug\":\"invite-users\"}\n75:{\"label\":\"User approval\",\"numericId\":1239,\"slug\":\"user-approval\"}\n76:{\"label\":\"User roles\",\"numericId\":1138,\"slug\":\"user-roles\"}\n77:{\"label\":\"Change user roles\",\"numericId\":1171,\"slug\":\"changing-user-roles\"}\n78:{\"label\":\"Remove users\",\"numericId\":1145,\"slug\":\"remove-team-members\"}\n79:{\"label\":\"Fast user switching\",\"numericId\":1225,\"slug\":\"fast-user-switching\"}\n7a:{\"label\":\"Export list of users\",\"numericId\":1229,\"slug\":\"export-user-list\"}\n7b:{\"label\":\"Offboard users\",\"numericId\":1248,\"slug\":\"offboarding-users\"}\n7c:{\"label\":\"Admin console session timeout\",\"numericId\":1461,\"slug\":\"admin-console-session-timeout\"}\n6f:[\"$70\",\"$75\",\"$76\",\"$77\",\"$78\",\"$79\",\"$7a\",\"$7b\",\"$7c\"]\n6e:{\"label\":\"Manage users\",\"numericId\":1373,\"slug\":\"manage-users\",\"items\":\"$6f\"}\n7"])</script><script>self.__next_f.push([1,"d:{\"label\":\"Tailnet lock\",\"numericId\":1226,\"slug\":\"tailnet-lock\"}\n46:[\"$47\",\"$53\",\"$5b\",\"$6e\",\"$7d\"]\n81:{\"label\":\"Subnet router BGP advertisement\",\"numericId\":1298,\"slug\":\"subnet-bgp\"}\n82:{\"label\":\"4via6 subnet routers\",\"numericId\":1201,\"slug\":\"4via6-subnets\"}\n83:{\"label\":\"Site-to-site networking\",\"numericId\":1214,\"slug\":\"site-to-site\"}\n80:[\"$81\",\"$82\",\"$83\"]\n7f:{\"label\":\"Set up a subnet router\",\"numericId\":1019,\"slug\":\"subnets\",\"items\":\"$80\"}\n86:{\"label\":\"Use a Mullvad exit node\",\"numericId\":1258,\"slug\":\"mullvad-exit-nodes\"}\n87:{\"label\":\"Recommended exit nodes\",\"numericId\":1392,\"slug\":\"auto-exit-nodes\"}\n88:{\"label\":\"Mandatory exit nodes\",\"numericId\":1413,\"slug\":\"mandatory-exit-nodes\"}\n85:[\"$86\",\"$87\",\"$88\"]\n84:{\"label\":\"Set up an exit node\",\"numericId\":1103,\"slug\":\"exit-nodes\",\"items\":\"$85\"}\n8b:{\"label\":\"How app connectors work\",\"numericId\":1342,\"slug\":\"how-app-connectors-work\"}\n8c:{\"label\":\"Best practices for SaaS apps\",\"numericId\":1332,\"slug\":\"apps-best-practices\"}\n8d:{\"label\":\"Use preset apps\",\"numericId\":1339,\"slug\":\"preset-apps\"}\n8a:[\"$8b\",\"$8c\",\"$8d\"]\n89:{\"label\":\"Set up an app connector\",\"numericId\":1281,\"slug\":\"app-connectors\",\"items\":\"$8a\"}\n90:{\"label\":\"Configure Linux DNS\",\"numericId\":1188,\"slug\":\"linux-dns\"}\n91:{\"label\":\"Why is resolv.conf being overwritten?\",\"numericId\":1235,\"slug\":\"resolv-conf\"}\n92:{\"label\":\"Use NextDNS\",\"numericId\":1218,\"slug\":\"nextdns\"}\n93:{\"label\":\"Use Control D\",\"numericId\":1403,\"slug\":\"control-d\"}\n94:{\"label\":\"Use Unbound DNS in OPNsense\",\"numericId\":1299,\"slug\":\"opnsense-unbound\"}\n8f:[\"$90\",\"$91\",\"$92\",\"$93\",\"$94\"]\n8e:{\"label\":\"Use DNS\",\"numericId\":1054,\"slug\":\"dns\",\"items\":\"$8f\"}\n95:{\"label\":\"Set up MagicDNS\",\"numericId\":1081,\"slug\":\"magicdns\"}\n96:{\"label\":\"Set up high availability\",\"numericId\":1115,\"slug\":\"high-availability\"}\n7e:[\"$7f\",\"$84\",\"$89\",\"$8e\",\"$95\",\"$96\"]\n98:{\"label\":\"Set up a server\",\"numericId\":1245,\"slug\":\"set-up-servers\"}\n99:{\"label\":\"Use tags\",\"numericId\":1068,\"slug\":\"tags\"}\n9a:{\"label\":\"Install Tailscale with cloud-init\",\"numericId\":1293,\"slug\":\"cloud-init\"}"])</script><script>self.__next_f.push([1,"\n9d:{\"label\":\"Automate key expiry\",\"numericId\":1028,\"slug\":\"key-expiry\"}\n9c:[\"$9d\"]\n9b:{\"label\":\"Use auth keys\",\"numericId\":1085,\"slug\":\"auth-keys\",\"items\":\"$9c\"}\na0:{\"label\":\"Use Tailscale SSH Console\",\"numericId\":1216,\"slug\":\"tailscale-ssh-console\"}\n9f:[\"$a0\"]\n9e:{\"label\":\"Use Tailscale SSH\",\"numericId\":1193,\"slug\":\"tailscale-ssh\",\"items\":\"$9f\"}\na1:{\"label\":\"Set up HTTPS certificates\",\"numericId\":1153,\"slug\":\"enabling-https\"}\na2:{\"label\":\"Run an ephemeral node\",\"numericId\":1111,\"slug\":\"ephemeral-nodes\"}\na3:{\"label\":\"Run unattended\",\"numericId\":1088,\"slug\":\"run-unattended\"}\n97:[\"$98\",\"$99\",\"$9a\",\"$9b\",\"$9e\",\"$a1\",\"$a2\",\"$a3\"]\na5:{\"label\":\"View services\",\"numericId\":1100,\"slug\":\"services\"}\na6:{\"label\":\"Share nodes\",\"numericId\":1084,\"slug\":\"sharing\"}\na9:{\"label\":\"Taildrop with NAS\",\"numericId\":1418,\"slug\":\"taildrop-nas\"}\na8:[\"$a9\"]\na7:{\"label\":\"Use Taildrop\",\"numericId\":1106,\"slug\":\"taildrop\",\"items\":\"$a8\"}\na4:[\"$a5\",\"$a6\",\"$a7\"]\nad:{\"label\":\"Examples\",\"numericId\":1247,\"slug\":\"funnel-examples\"}\nae:{\"label\":\"Funnel vs. sharing\",\"numericId\":1464,\"slug\":\"funnel-vs-sharing\"}\nac:[\"$ad\",\"$ae\"]\nab:{\"label\":\"Tailscale Funnel\",\"numericId\":1223,\"slug\":\"funnel\",\"items\":\"$ac\"}\nb1:{\"label\":\"Examples\",\"numericId\":1313,\"slug\":\"serve-examples\"}\nb0:[\"$b1\"]\naf:{\"label\":\"Tailscale Serve\",\"numericId\":1312,\"slug\":\"serve\",\"items\":\"$b0\"}\naa:[\"$ab\",\"$af\"]\nb3:{\"label\":\"Code from your iPad\",\"numericId\":1166,\"slug\":\"vscode-ipad\"}\nb4:{\"label\":\"Lock down a server\",\"numericId\":1077,\"slug\":\"secure-server-ubuntu\"}\nb5:{\"label\":\"Access a PiKVM\",\"numericId\":1292,\"slug\":\"pikvm\"}\nb6:{\"label\":\"Run a Pi-hole\",\"numericId\":1114,\"slug\":\"pi-hole\"}\nb7:{\"label\":\"Secure external services\",\"numericId\":1059,\"slug\":\"ip-blocklist-relays\"}\nba:{\"label\":\"Device posture for JIT access\",\"numericId\":1383,\"slug\":\"device-posture-for-jit\"}\nbd:{\"label\":\"ConductorOne\",\"numericId\":1208,\"slug\":\"jit-access-conductorone\"}\nbe:{\"label\":\"Opal\",\"numericId\":1209,\"slug\":\"jit-access-opal\"}\nbf:{\"label\":\"Sym\",\"numericId\":1206,\"slug\":\"jit-access-sym\"}\nbc:[\"$bd\",\"$be\",\"$bf\"]\nbb:{\"label\":\""])</script><script>self.__next_f.push([1,"3rd party JIT access integrations\",\"numericId\":1374,\"slug\":\"jit-access-integrations\",\"items\":\"$bc\"}\nb9:[\"$ba\",\"$bb\"]\nb8:{\"label\":\"Just-in-time access\",\"numericId\":1443,\"slug\":\"just-in-time-access\",\"items\":\"$b9\"}\nc4:{\"label\":\"Terraform\",\"numericId\":1210,\"slug\":\"terraform-provider\"}\nc5:{\"label\":\"Pulumi\",\"numericId\":1211,\"slug\":\"pulumi-provider\"}\nc3:[\"$c4\",\"$c5\"]\nc2:{\"label\":\"Infrastructure as code\",\"numericId\":1370,\"slug\":\"infrastructure-as-code\",\"items\":\"$c3\"}\nc6:{\"label\":\"macOS and iOS shortcuts\",\"numericId\":1233,\"slug\":\"mac-ios-shortcuts\"}\nc1:[\"$c2\",\"$c6\"]\nc0:{\"label\":\"Automation\",\"numericId\":1430,\"slug\":\"automations\",\"items\":\"$c1\"}\nb2:[\"$b3\",\"$b4\",\"$b5\",\"$b6\",\"$b7\",\"$b8\",\"$c0\"]\nc8:{\"label\":\"AWS Lightsail\",\"numericId\":1128,\"slug\":\"aws-lightsail\"}\nc9:{\"label\":\"AWS VPC\",\"numericId\":1021,\"slug\":\"install-aws\"}\nca:{\"label\":\"Azure App Service\",\"numericId\":1126,\"slug\":\"azure-app-service\"}\ncb:{\"label\":\"Azure Linux VMs\",\"numericId\":1142,\"slug\":\"cloud-azure-linux\"}\ncc:{\"label\":\"Azure Windows VMs\",\"numericId\":1143,\"slug\":\"cloud-azure-windows\"}\ncd:{\"label\":\"Google Compute Engine VMs\",\"numericId\":1147,\"slug\":\"cloud-gce\"}\nce:{\"label\":\"Hetzner VMs\",\"numericId\":1150,\"slug\":\"cloud-hetzner\"}\ncf:{\"label\":\"Oracle Cloud VMs\",\"numericId\":1149,\"slug\":\"cloud-oracle\"}\nc7:[\"$c8\",\"$c9\",\"$ca\",\"$cb\",\"$cc\",\"$cd\",\"$ce\",\"$cf\"]\nd1:{\"label\":\"Docker\",\"numericId\":1282,\"slug\":\"docker\"}\nd6:{\"label\":\"API server proxy\",\"numericId\":1437,\"slug\":\"kubernetes-operator-api-server-proxy\"}\nd7:{\"label\":\"Egress\",\"numericId\":1438,\"slug\":\"kubernetes-operator-cluster-egress\"}\nd8:{\"label\":\"Ingress\",\"numericId\":1439,\"slug\":\"kubernetes-operator-cluster-ingress\"}\nd9:{\"label\":\"Cross cluster\",\"numericId\":1442,\"slug\":\"kubernetes-operator-cross-cluster\"}\nda:{\"label\":\"Cloud services\",\"numericId\":1440,\"slug\":\"kubernetes-operator-cloud-services\"}\ndb:{\"label\":\"Subnet routers and exit nodes\",\"numericId\":1441,\"slug\":\"kubernetes-operator-connector\"}\ndc:{\"label\":\"App connector\",\"numericId\":1517,\"slug\":\"kubernetes-operator-app-connector\"}\ndd:{\"label\":\"Recorder nodes\",\"numericId\":1"])</script><script>self.__next_f.push([1,"484,\"slug\":\"kubernetes-operator-deploying-tsrecorder\"}\nde:{\"label\":\"Operator resource customization\",\"numericId\":1445,\"slug\":\"kubernetes-operator-customization\"}\ndf:{\"label\":\"Troubleshooting\",\"numericId\":1446,\"slug\":\"kubernetes-operator-troubleshooting\"}\nd5:[\"$d6\",\"$d7\",\"$d8\",\"$d9\",\"$da\",\"$db\",\"$dc\",\"$dd\",\"$de\",\"$df\"]\nd4:{\"label\":\"Kubernetes operator\",\"numericId\":1236,\"slug\":\"kubernetes-operator\",\"items\":\"$d5\"}\nd3:[\"$d4\"]\nd2:{\"label\":\"Kubernetes\",\"items\":\"$d3\",\"numericId\":1185,\"slug\":\"kubernetes\"}\ne0:{\"label\":\"LXC containers\",\"numericId\":1130,\"slug\":\"lxc-unprivileged\"}\ne1:{\"label\":\"Proxmox\",\"numericId\":1133,\"slug\":\"proxmox\"}\nd0:[\"$d1\",\"$d2\",\"$e0\",\"$e1\"]\ne3:{\"label\":\"AWS App Runner\",\"numericId\":1127,\"slug\":\"aws-app-runner\"}\ne4:{\"label\":\"AWS Lambda\",\"numericId\":1113,\"slug\":\"aws-lambda\"}\ne5:{\"label\":\"Fly.io\",\"numericId\":1132,\"slug\":\"flydotio\"}\ne6:{\"label\":\"Google Cloud Run\",\"numericId\":1108,\"slug\":\"cloudrun\"}\ne7:{\"label\":\"Heroku\",\"numericId\":1107,\"slug\":\"heroku\"}\ne2:[\"$e3\",\"$e4\",\"$e5\",\"$e6\",\"$e7\"]\ne9:{\"label\":\"AWS RDS\",\"numericId\":1141,\"slug\":\"aws-rds\"}\nea:{\"label\":\"Crunchy Bridge\",\"numericId\":1231,\"slug\":\"crunchy-bridge\"}\ne8:[\"$e9\",\"$ea\"]\nec:{\"label\":\"code-server\",\"numericId\":1164,\"slug\":\"codeserver\"}\ned:{\"label\":\"Coder\",\"numericId\":1163,\"slug\":\"coder\"}\nee:{\"label\":\"CodeSandbox\",\"numericId\":1221,\"slug\":\"codesandbox\"}\nef:{\"label\":\"GitHub Codespaces\",\"numericId\":1160,\"slug\":\"github-codespaces\"}\nf0:{\"label\":\"Gitpod\",\"numericId\":1161,\"slug\":\"gitpod\"}\nf1:{\"label\":\"OpenVSCode\",\"numericId\":1162,\"slug\":\"openvscode\"}\neb:[\"$ec\",\"$ed\",\"$ee\",\"$ef\",\"$f0\",\"$f1\"]\nf3:{\"label\":\"Visual Studio Code Extension\",\"numericId\":1265,\"slug\":\"vscode-extension\"}\nf4:{\"label\":\"Tailscale GitHub Action\",\"numericId\":1276,\"slug\":\"tailscale-github-action\"}\nf5:{\"label\":\"Tailscale with GitLab CI/CD\",\"numericId\":1287,\"slug\":\"tailscale-gitlab-runner\"}\nf6:{\"label\":\"Docker Desktop\",\"numericId\":1184,\"slug\":\"docker-desktop\"}\nf2:[\"$f3\",\"$f4\",\"$f5\",\"$f6\"]\nf8:{\"label\":\"Overview\",\"numericId\":1181,\"slug\":\"firewalls\"}\nf9:{\"label\":\"OPNsense\",\"numericId\":1097,\"slug\""])</script><script>self.__next_f.push([1,":\"install-opnsense\"}\nfa:{\"label\":\"Palo Alto Networks\",\"numericId\":1333,\"slug\":\"firewall-palo-alto-networks\"}\nfb:{\"label\":\"pfSense\",\"numericId\":1146,\"slug\":\"pfsense\"}\nfc:{\"label\":\"Firewall mode\",\"numericId\":1294,\"slug\":\"firewall-mode\"}\nf7:[\"$f8\",\"$f9\",\"$fa\",\"$fb\",\"$fc\"]\nfe:{\"label\":\"Caddy Server\",\"numericId\":1190,\"slug\":\"caddy-certificates\"}\nff:{\"label\":\"Traefik Proxy\",\"numericId\":1234,\"slug\":\"traefik-certificates\"}\nfd:[\"$fe\",\"$ff\"]\n101:{\"label\":\"Synology\",\"numericId\":1131,\"slug\":\"synology\"}\n102:{\"label\":\"QNAP\",\"numericId\":1273,\"slug\":\"qnap\"}\n103:{\"label\":\"TrueNAS SCALE\",\"numericId\":1483,\"slug\":\"truenas-scale\"}\n104:{\"label\":\"Unraid\",\"numericId\":1478,\"slug\":\"unraid\"}\n100:[\"$101\",\"$102\",\"$103\",\"$104\"]\n106:{\"label\":\"Send recordings to S3\",\"numericId\":1263,\"slug\":\"session-recording-s3\"}\n107:{\"label\":\"Deploy multiple recorder nodes\",\"numericId\":1262,\"slug\":\"multiple-recorder-nodes\"}\n105:[\"$106\",\"$107\"]\n109:{\"label\":\"Pricing ↗\",\"href\":\"/pricing\"}\n10a:{\"label\":\"Pricing \u0026 Plans FAQ\",\"numericId\":1251,\"slug\":\"pricing-faq\"}\n10b:{\"label\":\"Free plans and discounts\",\"numericId\":1154,\"slug\":\"free-plans-discounts\"}\n10c:{\"label\":\"Modify billing\",\"numericId\":1182,\"slug\":\"billing-information\"}\n10d:{\"label\":\"Tailscale on Azure Marketplace\",\"numericId\":1220,\"slug\":\"azure-marketplace\"}\n108:[\"$109\",\"$10a\",\"$10b\",\"$10c\",\"$10d\"]\n10f:{\"label\":\"Grants\",\"numericId\":1324,\"slug\":\"acl-grants\"}\n110:{\"label\":\"IP sets\",\"numericId\":1387,\"slug\":\"ipsets\"}\n111:{\"label\":\"Via in grants\",\"numericId\":1378,\"slug\":\"via\"}\n10e:[\"$10f\",\"$110\",\"$111\"]\n113:{\"label\":\"tailscale funnel\",\"numericId\":1311,\"slug\":\"tailscale-funnel\"}\n114:{\"label\":\"tailscale lock\",\"numericId\":1243,\"slug\":\"tailscale-lock\"}\n115:{\"label\":\"tailscale serve\",\"numericId\":1242,\"slug\":\"tailscale-serve\"}\n116:{\"label\":\"tailscale up\",\"numericId\":1241,\"slug\":\"tailscale-up\"}\n117:{\"label\":\"tailscaled\",\"numericId\":1278,\"slug\":\"tailscaled\"}\n112:[\"$113\",\"$114\",\"$115\",\"$116\",\"$117\"]\n119:{\"label\":\"OAuth clients\",\"numericId\":1215,\"slug\":\"oauth-clients\"}\n11c:{\"label\":\"Hello tsnet\",\"numericId\":1521,\"slug\":\""])</script><script>self.__next_f.push([1,"hello-tsnet\"}\n11d:{\"label\":\"tsnet.Server\",\"numericId\":1522,\"slug\":\"tsnet-server\"}\n11b:[\"$11c\",\"$11d\"]\n11a:{\"label\":\"tsnet for Go programs\",\"numericId\":1244,\"slug\":\"tsnet\",\"items\":\"$11b\"}\n118:[\"$119\",\"$11a\"]\n11f:{\"label\":\"Deployment checklist\",\"numericId\":1344,\"slug\":\"deployment-checklist\"}\n122:{\"label\":\"Key and secret management\",\"numericId\":1252,\"slug\":\"key-secret-management\"}\n123:{\"label\":\"Secret scanning\",\"numericId\":1301,\"slug\":\"secret-scanning\"}\n124:{\"label\":\"Admin with passkey\",\"numericId\":1341,\"slug\":\"tailnet-passkey-admin\"}\n121:[\"$122\",\"$123\",\"$124\"]\n120:{\"label\":\"Security best practices\",\"items\":\"$121\",\"numericId\":1196,\"slug\":\"security-hardening\"}\n125:{\"label\":\"Performance best practices\",\"numericId\":1320,\"slug\":\"performance-best-practices\"}\n126:{\"label\":\"AWS reference architecture\",\"numericId\":1296,\"slug\":\"aws-reference-architecture\"}\n127:{\"label\":\"Azure reference architecture\",\"numericId\":1314,\"slug\":\"azure-reference-architecture\"}\n11e:[\"$11f\",\"$120\",\"$125\",\"$126\",\"$127\"]\n129:{\"label\":\"About WireGuard\",\"numericId\":1035,\"slug\":\"wireguard\"}\n12a:{\"label\":\"Tailscale encryption\",\"numericId\":1504,\"slug\":\"encryption\"}\n12b:{\"label\":\"Control and data planes\",\"numericId\":1508,\"slug\":\"control-data-planes\"}\n12c:{\"label\":\"Direct vs relayed connections\",\"numericId\":1257,\"slug\":\"connection-types\"}\n12d:{\"label\":\"Device connectivity\",\"numericId\":1411,\"slug\":\"device-connectivity\"}\n12e:{\"label\":\"How Tailscale assigns IP addresses\",\"numericId\":1033,\"slug\":\"ip-and-dns-addresses\"}\n12f:{\"label\":\"Tailscale and the OSI model\",\"numericId\":1456,\"slug\":\"osi\"}\n130:{\"label\":\"Smaller binaries for embedded devices\",\"numericId\":1207,\"slug\":\"small-tailscale\"}\n131:{\"label\":\"Kernel vs. netstack subnet routing \u0026 exit nodes\",\"numericId\":1177,\"slug\":\"kernel-vs-userspace-routers\"}\n132:{\"label\":\"Userspace networking mode\",\"numericId\":1112,\"slug\":\"userspace-networking\"}\n133:{\"label\":\"Node keys\",\"numericId\":1010,\"slug\":\"node-keys\"}\n134:{\"label\":\"Protect SSH Servers\",\"numericId\":1009,\"slug\":\"protect-ssh-servers\"}\n135:{\"label\":\"Tailnet lock white"])</script><script>self.__next_f.push([1," paper\",\"numericId\":1230,\"slug\":\"tailnet-lock-whitepaper\"}\n136:{\"label\":\"DERP servers\",\"numericId\":1232,\"slug\":\"derp-servers\"}\n137:{\"label\":\"Zero Trust Networking (ZTN)\",\"numericId\":1123,\"slug\":\"zero-trust\"}\n138:{\"label\":\"IPv4 vs. IPv6 FAQ\",\"numericId\":1134,\"slug\":\"ipv6-faq\"}\n128:[\"$129\",\"$12a\",\"$12b\",\"$12c\",\"$12d\",\"$12e\",\"$12f\",\"$130\",\"$131\",\"$132\",\"$133\",\"$134\",\"$135\",\"$136\",\"$137\",\"$138\"]\n13a:{\"label\":\"Troubleshoot device connectivity\",\"numericId\":1463,\"slug\":\"troubleshoot-connectivity\"}\n139:[\"$13a\"]\n13c:{\"label\":\"Unstable builds\",\"numericId\":1083,\"slug\":\"install-unstable\"}\n13b:[\"$13c\"]\n13e:[\"1155\",\"terminology-and-concepts\"]\n142:{\"label\":\"Quickstart\",\"numericId\":1017,\"slug\":\"install\"}\n143:{\"label\":\"Install Tailscale\",\"numericId\":1347,\"slug\":\"installation\",\"items\":\"$1b\"}\n144:{\"label\":\"Quick guides\",\"numericId\":1415,\"slug\":\"quick-guides\",\"items\":\"$30\"}\n145:{\"label\":\"Set up an identity provider\",\"numericId\":1013,\"slug\":\"sso-providers\",\"items\":\"$38\"}\n146:{\"label\":\"What is Tailscale?\",\"numericId\":1151,\"slug\":\"what-is-tailscale\"}\n141:[\"$142\",\"$143\",\"$144\",\"$145\",\"$146\"]\n148:{\"label\":\"Quickstart\",\"numericId\":1017,\"slug\":\"install\",\"nodes\":\"$undefined\"}\n14b:{\"label\":\"Download ↗\",\"href\":\"/downloads\",\"nodes\":\"$undefined\"}\n14c:{\"label\":\"Update Tailscale\",\"numericId\":1067,\"slug\":\"update\",\"nodes\":\"$undefined\"}\n14d:{\"label\":\"Uninstall Tailscale\",\"numericId\":1069,\"slug\":\"uninstall\",\"nodes\":\"$undefined\"}\n152:{\"label\":\"Deploy on Android\",\"numericId\":1384,\"slug\":\"android-mdm\",\"nodes\":\"$undefined\"}\n153:{\"label\":\"Deploy on iOS/tvOS\",\"numericId\":1380,\"slug\":\"ios-mdm\",\"nodes\":\"$undefined\"}\n154:{\"label\":\"Deploy on macOS\",\"numericId\":1286,\"slug\":\"macos-mdm\",\"nodes\":\"$undefined\"}\n155:{\"label\":\"Deploy on Windows\",\"numericId\":1318,\"slug\":\"windows-mdm\",\"nodes\":\"$undefined\"}\n151:[\"$152\",\"$153\",\"$154\",\"$155\"]\n150:{\"label\":\"Customize Tailscale using system policies\",\"numericId\":1315,\"slug\":\"mdm-keys\",\"items\":\"$22\",\"nodes\":\"$151\"}\n158:{\"label\":\"Google Workspace\",\"numericId\":1386,\"slug\":\"mdm-google-workspace\",\"nodes\":\"$undefined\"}\n159:{\"lab"])</script><script>self.__next_f.push([1,"el\":\"Jamf\",\"numericId\":1328,\"slug\":\"mdm-jamf\",\"nodes\":\"$undefined\"}\n15a:{\"label\":\"JumpCloud\",\"numericId\":1485,\"slug\":\"mdm-jumpcloud\",\"nodes\":\"$undefined\"}\n15b:{\"label\":\"Kandji\",\"numericId\":1329,\"slug\":\"mdm-kandji\",\"nodes\":\"$undefined\"}\n15c:{\"label\":\"Microsoft Intune\",\"numericId\":1327,\"slug\":\"mdm-microsoft-intune\",\"nodes\":\"$undefined\"}\n15d:{\"label\":\"SimpleMDM\",\"numericId\":1330,\"slug\":\"mdm-simplemdm\",\"nodes\":\"$undefined\"}\n15e:{\"label\":\"TinyMDM\",\"numericId\":1385,\"slug\":\"mdm-tinymdm\",\"nodes\":\"$undefined\"}\n157:[\"$158\",\"$159\",\"$15a\",\"$15b\",\"$15c\",\"$15d\",\"$15e\"]\n156:{\"label\":\"MDM integration partners\",\"numericId\":1448,\"slug\":\"mdm-integration-partners\",\"items\":\"$28\",\"nodes\":\"$157\"}\n14f:[\"$150\",\"$156\"]\n14e:{\"label\":\"Deploy with MDM\",\"numericId\":1362,\"slug\":\"mdm\",\"items\":\"$20\",\"nodes\":\"$14f\"}\n14a:[\"$14b\",\"$14c\",\"$14d\",\"$14e\"]\n149:{\"label\":\"Install Tailscale\",\"numericId\":1347,\"slug\":\"installation\",\"items\":\"$1b\",\"nodes\":\"$14a\"}\n161:{\"label\":\"Use exit nodes\",\"numericId\":1408,\"slug\":\"quick-guide-exit-node\",\"nodes\":\"$undefined\"}\n162:{\"label\":\"Configure a subnet router\",\"numericId\":1406,\"slug\":\"quick-guide-subnets\",\"nodes\":\"$undefined\"}\n163:{\"label\":\"Host a website\",\"numericId\":1310,\"slug\":\"quick-guide-host-websites\",\"nodes\":\"$undefined\"}\n164:{\"label\":\"Install on AWS\",\"numericId\":1449,\"slug\":\"quick-guide-aws\",\"nodes\":\"$undefined\"}\n165:{\"label\":\"SSH into a Linux virtual machine\",\"numericId\":1308,\"slug\":\"quick-guide-ssh-linux-vm\",\"nodes\":\"$undefined\"}\n166:{\"label\":\"Access a virtual private cloud (VPC)\",\"numericId\":1309,\"slug\":\"quick-guide-access-vpc\",\"nodes\":\"$undefined\"}\n167:{\"label\":\"Add a Docker container\",\"numericId\":1453,\"slug\":\"quick-guide-docker\",\"nodes\":\"$undefined\"}\n160:[\"$161\",\"$162\",\"$163\",\"$164\",\"$165\",\"$166\",\"$167\"]\n15f:{\"label\":\"Quick guides\",\"numericId\":1415,\"slug\":\"quick-guides\",\"items\":\"$30\",\"nodes\":\"$160\"}\n16a:{\"label\":\"Google\",\"numericId\":1199,\"slug\":\"sso-google\",\"nodes\":\"$undefined\"}\n16b:{\"label\":\"Microsoft Entra ID\",\"numericId\":1285,\"slug\":\"sso-microsoft\",\"nodes\":\"$undefined\"}\n16c:{\"label\":\"Okta\",\"numericId\":1"])</script><script>self.__next_f.push([1,"066,\"slug\":\"sso-okta\",\"nodes\":\"$undefined\"}\n16d:{\"label\":\"GitHub\",\"numericId\":1284,\"slug\":\"sso-github\",\"nodes\":\"$undefined\"}\n16e:{\"label\":\"Apple\",\"numericId\":1283,\"slug\":\"sso-apple\",\"nodes\":\"$undefined\"}\n16f:{\"label\":\"OneLogin\",\"numericId\":1070,\"slug\":\"sso-onelogin\",\"nodes\":\"$undefined\"}\n172:{\"label\":\"Google Workspace\",\"numericId\":1317,\"slug\":\"sso-google-sync\",\"nodes\":\"$undefined\"}\n173:{\"label\":\"Microsoft Entra ID\",\"numericId\":1249,\"slug\":\"sso-entra-id-scim\",\"nodes\":\"$undefined\"}\n174:{\"label\":\"Okta\",\"numericId\":1180,\"slug\":\"sso-okta-scim\",\"nodes\":\"$undefined\"}\n171:[\"$172\",\"$173\",\"$174\"]\n170:{\"label\":\"User \u0026 group provisioning\",\"numericId\":1290,\"slug\":\"user-group-provisioning\",\"items\":\"$40\",\"nodes\":\"$171\"}\n175:{\"label\":\"Custom OIDC providers\",\"numericId\":1240,\"slug\":\"sso-custom-oidc\",\"nodes\":\"$undefined\"}\n176:{\"label\":\"Enable 2FA and MFA\",\"numericId\":1075,\"slug\":\"multifactor-auth\",\"nodes\":\"$undefined\"}\n169:[\"$16a\",\"$16b\",\"$16c\",\"$16d\",\"$16e\",\"$16f\",\"$170\",\"$175\",\"$176\"]\n168:{\"label\":\"Set up an identity provider\",\"numericId\":1013,\"slug\":\"sso-providers\",\"items\":\"$38\",\"nodes\":\"$169\"}\n177:{\"label\":\"What is Tailscale?\",\"numericId\":1151,\"slug\":\"what-is-tailscale\",\"nodes\":\"$undefined\"}\n147:[\"$148\",\"$149\",\"$15f\",\"$168\",\"$177\"]\n140:{\"label\":\"Start\",\"slug\":\"start\",\"numericId\":1346,\"items\":\"$141\",\"nodes\":\"$147\"}\n17a:{\"label\":\"Manage Access\",\"group\":true,\"numericId\":1350,\"slug\":\"manage\",\"items\":\"$46\"}\n17b:{\"label\":\"Route Traffic\",\"group\":true,\"numericId\":1351,\"slug\":\"route\",\"items\":\"$7e\"}\n17c:{\"label\":\"Set Up Servers\",\"group\":true,\"numericId\":1352,\"slug\":\"servers\",\"items\":\"$97\"}\n17d:{\"label\":\"Access \u0026 Share Services\",\"group\":true,\"numericId\":1354,\"slug\":\"share\",\"items\":\"$a4\"}\n17e:{\"label\":\"Share a web server\",\"group\":true,\"numericId\":1353,\"slug\":\"share-web-server\",\"items\":\"$aa\"}\n17f:{\"label\":\"Solutions\",\"group\":true,\"numericId\":1355,\"slug\":\"solutions\",\"items\":\"$b2\"}\n179:[\"$17a\",\"$17b\",\"$17c\",\"$17d\",\"$17e\",\"$17f\"]\n187:{\"label\":\"ACL syntax\",\"numericId\":1337,\"slug\":\"acl-syntax\",\"nodes\":\"$undefined\"}\n186:[\"$187\"]\n185:{\"label\":\"Ma"])</script><script>self.__next_f.push([1,"nage ACLs\",\"numericId\":1018,\"slug\":\"acls\",\"items\":\"$4a\",\"nodes\":\"$186\"}\n188:{\"label\":\"Manage grants\",\"numericId\":1324,\"slug\":\"acl-grants\",\"nodes\":\"$undefined\"}\n189:{\"label\":\"Edit the tailnet policy file\",\"numericId\":1338,\"slug\":\"acl-edit\",\"nodes\":\"$undefined\"}\n18c:{\"label\":\"Manage ACLs with Bitbucket\",\"numericId\":1302,\"slug\":\"gitops-acls-bitbucket\",\"nodes\":\"$undefined\"}\n18d:{\"label\":\"Manage ACLs with GitHub\",\"numericId\":1306,\"slug\":\"gitops-acls-github\",\"nodes\":\"$undefined\"}\n18e:{\"label\":\"Manage ACLs with GitLab\",\"numericId\":1254,\"slug\":\"gitops-acls-gitlab\",\"nodes\":\"$undefined\"}\n18b:[\"$18c\",\"$18d\",\"$18e\"]\n18a:{\"label\":\"Manage ACLs with GitOps\",\"numericId\":1204,\"slug\":\"gitopcs-acls\",\"items\":\"$4f\",\"nodes\":\"$18b\"}\n184:[\"$185\",\"$188\",\"$189\",\"$18a\"]\n183:{\"label\":\"Manage access control\",\"numericId\":1393,\"slug\":\"access-control\",\"items\":\"$48\",\"nodes\":\"$184\"}\n191:{\"label\":\"Device posture for JIT access\",\"numericId\":1383,\"slug\":\"device-posture-for-jit\",\"nodes\":\"$undefined\"}\n194:{\"label\":\"ConductorOne\",\"numericId\":1208,\"slug\":\"jit-access-conductorone\",\"nodes\":\"$undefined\"}\n195:{\"label\":\"Opal\",\"numericId\":1209,\"slug\":\"jit-access-opal\",\"nodes\":\"$undefined\"}\n196:{\"label\":\"Sym\",\"numericId\":1206,\"slug\":\"jit-access-sym\",\"nodes\":\"$undefined\"}\n193:[\"$194\",\"$195\",\"$196\"]\n192:{\"label\":\"3rd party JIT access integrations\",\"numericId\":1374,\"slug\":\"jit-access-integrations\",\"items\":\"$57\",\"nodes\":\"$193\"}\n190:[\"$191\",\"$192\"]\n18f:{\"label\":\"Manage Just-in-time access\",\"numericId\":1443,\"slug\":\"just-in-time-access\",\"items\":\"$54\",\"nodes\":\"$190\"}\n199:{\"label\":\"Add a device\",\"numericId\":1316,\"slug\":\"device-add\",\"nodes\":\"$undefined\"}\n19a:{\"label\":\"Device approval\",\"numericId\":1099,\"slug\":\"device-approval\",\"nodes\":\"$undefined\"}\n19b:{\"label\":\"Rename a device\",\"numericId\":1098,\"slug\":\"machine-names\",\"nodes\":\"$undefined\"}\n19c:{\"label\":\"Remove a device\",\"numericId\":1260,\"slug\":\"device-remove\",\"nodes\":\"$undefined\"}\n19f:{\"label\":\"Use Device Identity Collection\",\"numericId\":1326,\"slug\":\"device-identity\",\"nodes\":\"$undefined\"}\n1a0:{\"label\":\"CrowdStrike Falcon"])</script><script>self.__next_f.push([1,"\",\"numericId\":1289,\"slug\":\"crowdstrike-zta\",\"nodes\":\"$undefined\"}\n1a1:{\"label\":\"SentinelOne\",\"numericId\":1390,\"slug\":\"sentinelone\",\"nodes\":\"$undefined\"}\n1a2:{\"label\":\"1Password XAM\",\"numericId\":1407,\"slug\":\"kolide\",\"nodes\":\"$undefined\"}\n1a3:{\"label\":\"Jamf Pro\",\"numericId\":1409,\"slug\":\"jamf-pro\",\"nodes\":\"$undefined\"}\n1a4:{\"label\":\"Microsoft Intune\",\"numericId\":1410,\"slug\":\"intune\",\"nodes\":\"$undefined\"}\n1a5:{\"label\":\"Kandji\",\"numericId\":1405,\"slug\":\"kandji\",\"nodes\":\"$undefined\"}\n19e:[\"$19f\",\"$1a0\",\"$1a1\",\"$1a2\",\"$1a3\",\"$1a4\",\"$1a5\"]\n19d:{\"label\":\"Device posture management\",\"numericId\":1288,\"slug\":\"device-posture\",\"items\":\"$62\",\"nodes\":\"$19e\"}\n1a6:{\"label\":\"Filter devices\",\"numericId\":1176,\"slug\":\"filter-devices\",\"nodes\":\"$undefined\"}\n1a7:{\"label\":\"Export list of devices\",\"numericId\":1228,\"slug\":\"export-device-list\",\"nodes\":\"$undefined\"}\n1a8:{\"label\":\"Use the web interface\",\"numericId\":1325,\"slug\":\"device-web-interface\",\"nodes\":\"$undefined\"}\n1a9:{\"label\":\"Add a device using a QR code\",\"numericId\":1336,\"slug\":\"device-add-qr-code\",\"nodes\":\"$undefined\"}\n198:[\"$199\",\"$19a\",\"$19b\",\"$19c\",\"$19d\",\"$1a6\",\"$1a7\",\"$1a8\",\"$1a9\"]\n197:{\"label\":\"Manage devices\",\"numericId\":1372,\"slug\":\"manage-devices\",\"items\":\"$5c\",\"nodes\":\"$198\"}\n1ae:{\"label\":\"Invite team members\",\"numericId\":1064,\"slug\":\"invite-team-members\",\"nodes\":\"$undefined\"}\n1af:{\"label\":\"Invite any user\",\"numericId\":1271,\"slug\":\"invite-any-user\",\"nodes\":\"$undefined\"}\n1b0:{\"label\":\"Use passkeys\",\"numericId\":1269,\"slug\":\"passkeys\",\"nodes\":\"$undefined\"}\n1ad:[\"$1ae\",\"$1af\",\"$1b0\"]\n1ac:{\"label\":\"Invite users\",\"items\":\"$71\",\"numericId\":1371,\"slug\":\"invite-users\",\"nodes\":\"$1ad\"}\n1b1:{\"label\":\"User approval\",\"numericId\":1239,\"slug\":\"user-approval\",\"nodes\":\"$undefined\"}\n1b2:{\"label\":\"User roles\",\"numericId\":1138,\"slug\":\"user-roles\",\"nodes\":\"$undefined\"}\n1b3:{\"label\":\"Change user roles\",\"numericId\":1171,\"slug\":\"changing-user-roles\",\"nodes\":\"$undefined\"}\n1b4:{\"label\":\"Remove users\",\"numericId\":1145,\"slug\":\"remove-team-members\",\"nodes\":\"$undefined\"}\n1b5:{\"label\":\"Fast user switching\""])</script><script>self.__next_f.push([1,",\"numericId\":1225,\"slug\":\"fast-user-switching\",\"nodes\":\"$undefined\"}\n1b6:{\"label\":\"Export list of users\",\"numericId\":1229,\"slug\":\"export-user-list\",\"nodes\":\"$undefined\"}\n1b7:{\"label\":\"Offboard users\",\"numericId\":1248,\"slug\":\"offboarding-users\",\"nodes\":\"$undefined\"}\n1b8:{\"label\":\"Admin console session timeout\",\"numericId\":1461,\"slug\":\"admin-console-session-timeout\",\"nodes\":\"$undefined\"}\n1ab:[\"$1ac\",\"$1b1\",\"$1b2\",\"$1b3\",\"$1b4\",\"$1b5\",\"$1b6\",\"$1b7\",\"$1b8\"]\n1aa:{\"label\":\"Manage users\",\"numericId\":1373,\"slug\":\"manage-users\",\"items\":\"$6f\",\"nodes\":\"$1ab\"}\n1b9:{\"label\":\"Tailnet lock\",\"numericId\":1226,\"slug\":\"tailnet-lock\",\"nodes\":\"$undefined\"}\n182:[\"$183\",\"$18f\",\"$197\",\"$1aa\",\"$1b9\"]\n181:{\"label\":\"Manage Access\",\"group\":true,\"numericId\":1350,\"slug\":\"manage\",\"items\":\"$46\",\"nodes\":\"$182\"}\n1be:{\"label\":\"Subnet router BGP advertisement\",\"numericId\":1298,\"slug\":\"subnet-bgp\",\"nodes\":\"$undefined\"}\n1bf:{\"label\":\"4via6 subnet routers\",\"numericId\":1201,\"slug\":\"4via6-subnets\",\"nodes\":\"$undefined\"}\n1c0:{\"label\":\"Site-to-site networking\",\"numericId\":1214,\"slug\":\"site-to-site\",\"nodes\":\"$undefined\"}\n1bd:[\"$1be\",\"$1bf\",\"$1c0\"]\n1bc:{\"label\":\"Set up a subnet router\",\"numericId\":1019,\"slug\":\"subnets\",\"items\":\"$80\",\"nodes\":\"$1bd\"}\n1c3:{\"label\":\"Use a Mullvad exit node\",\"numericId\":1258,\"slug\":\"mullvad-exit-nodes\",\"nodes\":\"$undefined\"}\n1c4:{\"label\":\"Recommended exit nodes\",\"numericId\":1392,\"slug\":\"auto-exit-nodes\",\"nodes\":\"$undefined\"}\n1c5:{\"label\":\"Mandatory exit nodes\",\"numericId\":1413,\"slug\":\"mandatory-exit-nodes\",\"nodes\":\"$undefined\"}\n1c2:[\"$1c3\",\"$1c4\",\"$1c5\"]\n1c1:{\"label\":\"Set up an exit node\",\"numericId\":1103,\"slug\":\"exit-nodes\",\"items\":\"$85\",\"nodes\":\"$1c2\"}\n1c8:{\"label\":\"How app connectors work\",\"numericId\":1342,\"slug\":\"how-app-connectors-work\",\"nodes\":\"$undefined\"}\n1c9:{\"label\":\"Best practices for SaaS apps\",\"numericId\":1332,\"slug\":\"apps-best-practices\",\"nodes\":\"$undefined\"}\n1ca:{\"label\":\"Use preset apps\",\"numericId\":1339,\"slug\":\"preset-apps\",\"nodes\":\"$undefined\"}\n1c7:[\"$1c8\",\"$1c9\",\"$1ca\"]\n1c6:{\"label\":\"Set up an app connector\",\"nu"])</script><script>self.__next_f.push([1,"mericId\":1281,\"slug\":\"app-connectors\",\"items\":\"$8a\",\"nodes\":\"$1c7\"}\n1cd:{\"label\":\"Configure Linux DNS\",\"numericId\":1188,\"slug\":\"linux-dns\",\"nodes\":\"$undefined\"}\n1ce:{\"label\":\"Why is resolv.conf being overwritten?\",\"numericId\":1235,\"slug\":\"resolv-conf\",\"nodes\":\"$undefined\"}\n1cf:{\"label\":\"Use NextDNS\",\"numericId\":1218,\"slug\":\"nextdns\",\"nodes\":\"$undefined\"}\n1d0:{\"label\":\"Use Control D\",\"numericId\":1403,\"slug\":\"control-d\",\"nodes\":\"$undefined\"}\n1d1:{\"label\":\"Use Unbound DNS in OPNsense\",\"numericId\":1299,\"slug\":\"opnsense-unbound\",\"nodes\":\"$undefined\"}\n1cc:[\"$1cd\",\"$1ce\",\"$1cf\",\"$1d0\",\"$1d1\"]\n1cb:{\"label\":\"Use DNS\",\"numericId\":1054,\"slug\":\"dns\",\"items\":\"$8f\",\"nodes\":\"$1cc\"}\n1d2:{\"label\":\"Set up MagicDNS\",\"numericId\":1081,\"slug\":\"magicdns\",\"nodes\":\"$undefined\"}\n1d3:{\"label\":\"Set up high availability\",\"numericId\":1115,\"slug\":\"high-availability\",\"nodes\":\"$undefined\"}\n1bb:[\"$1bc\",\"$1c1\",\"$1c6\",\"$1cb\",\"$1d2\",\"$1d3\"]\n1ba:{\"label\":\"Route Traffic\",\"group\":true,\"numericId\":1351,\"slug\":\"route\",\"items\":\"$7e\",\"nodes\":\"$1bb\"}\n1d6:{\"label\":\"Set up a server\",\"numericId\":1245,\"slug\":\"set-up-servers\",\"nodes\":\"$undefined\"}\n1d7:{\"label\":\"Use tags\",\"numericId\":1068,\"slug\":\"tags\",\"nodes\":\"$undefined\"}\n1d8:{\"label\":\"Install Tailscale with cloud-init\",\"numericId\":1293,\"slug\":\"cloud-init\",\"nodes\":\"$undefined\"}\n1db:{\"label\":\"Automate key expiry\",\"numericId\":1028,\"slug\":\"key-expiry\",\"nodes\":\"$undefined\"}\n1da:[\"$1db\"]\n1d9:{\"label\":\"Use auth keys\",\"numericId\":1085,\"slug\":\"auth-keys\",\"items\":\"$9c\",\"nodes\":\"$1da\"}\n1de:{\"label\":\"Use Tailscale SSH Console\",\"numericId\":1216,\"slug\":\"tailscale-ssh-console\",\"nodes\":\"$undefined\"}\n1dd:[\"$1de\"]\n1dc:{\"label\":\"Use Tailscale SSH\",\"numericId\":1193,\"slug\":\"tailscale-ssh\",\"items\":\"$9f\",\"nodes\":\"$1dd\"}\n1df:{\"label\":\"Set up HTTPS certificates\",\"numericId\":1153,\"slug\":\"enabling-https\",\"nodes\":\"$undefined\"}\n1e0:{\"label\":\"Run an ephemeral node\",\"numericId\":1111,\"slug\":\"ephemeral-nodes\",\"nodes\":\"$undefined\"}\n1e1:{\"label\":\"Run unattended\",\"numericId\":1088,\"slug\":\"run-unattended\",\"nodes\":\"$undefined\"}\n1d5:[\"$1d6\",\"$1d7\",\""])</script><script>self.__next_f.push([1,"$1d8\",\"$1d9\",\"$1dc\",\"$1df\",\"$1e0\",\"$1e1\"]\n1d4:{\"label\":\"Set Up Servers\",\"group\":true,\"numericId\":1352,\"slug\":\"servers\",\"items\":\"$97\",\"nodes\":\"$1d5\"}\n1e4:{\"label\":\"View services\",\"numericId\":1100,\"slug\":\"services\",\"nodes\":\"$undefined\"}\n1e5:{\"label\":\"Share nodes\",\"numericId\":1084,\"slug\":\"sharing\",\"nodes\":\"$undefined\"}\n1e8:{\"label\":\"Taildrop with NAS\",\"numericId\":1418,\"slug\":\"taildrop-nas\",\"nodes\":\"$undefined\"}\n1e7:[\"$1e8\"]\n1e6:{\"label\":\"Use Taildrop\",\"numericId\":1106,\"slug\":\"taildrop\",\"items\":\"$a8\",\"nodes\":\"$1e7\"}\n1e3:[\"$1e4\",\"$1e5\",\"$1e6\"]\n1e2:{\"label\":\"Access \u0026 Share Services\",\"group\":true,\"numericId\":1354,\"slug\":\"share\",\"items\":\"$a4\",\"nodes\":\"$1e3\"}\n1ed:{\"label\":\"Examples\",\"numericId\":1247,\"slug\":\"funnel-examples\",\"nodes\":\"$undefined\"}\n1ee:{\"label\":\"Funnel vs. sharing\",\"numericId\":1464,\"slug\":\"funnel-vs-sharing\",\"nodes\":\"$undefined\"}\n1ec:[\"$1ed\",\"$1ee\"]\n1eb:{\"label\":\"Tailscale Funnel\",\"numericId\":1223,\"slug\":\"funnel\",\"items\":\"$ac\",\"nodes\":\"$1ec\"}\n1f1:{\"label\":\"Examples\",\"numericId\":1313,\"slug\":\"serve-examples\",\"nodes\":\"$undefined\"}\n1f0:[\"$1f1\"]\n1ef:{\"label\":\"Tailscale Serve\",\"numericId\":1312,\"slug\":\"serve\",\"items\":\"$b0\",\"nodes\":\"$1f0\"}\n1ea:[\"$1eb\",\"$1ef\"]\n1e9:{\"label\":\"Share a web server\",\"group\":true,\"numericId\":1353,\"slug\":\"share-web-server\",\"items\":\"$aa\",\"nodes\":\"$1ea\"}\n1f4:{\"label\":\"Code from your iPad\",\"numericId\":1166,\"slug\":\"vscode-ipad\",\"nodes\":\"$undefined\"}\n1f5:{\"label\":\"Lock down a server\",\"numericId\":1077,\"slug\":\"secure-server-ubuntu\",\"nodes\":\"$undefined\"}\n1f6:{\"label\":\"Access a PiKVM\",\"numericId\":1292,\"slug\":\"pikvm\",\"nodes\":\"$undefined\"}\n1f7:{\"label\":\"Run a Pi-hole\",\"numericId\":1114,\"slug\":\"pi-hole\",\"nodes\":\"$undefined\"}\n1f8:{\"label\":\"Secure external services\",\"numericId\":1059,\"slug\":\"ip-blocklist-relays\",\"nodes\":\"$undefined\"}\n1fb:{\"label\":\"Device posture for JIT access\",\"numericId\":1383,\"slug\":\"device-posture-for-jit\",\"nodes\":\"$undefined\"}\n1fe:{\"label\":\"ConductorOne\",\"numericId\":1208,\"slug\":\"jit-access-conductorone\",\"nodes\":\"$undefined\"}\n1ff:{\"label\":\"Opal\",\"numericId\":1209,\"slug\":\"jit-access-opal\","])</script><script>self.__next_f.push([1,"\"nodes\":\"$undefined\"}\n200:{\"label\":\"Sym\",\"numericId\":1206,\"slug\":\"jit-access-sym\",\"nodes\":\"$undefined\"}\n1fd:[\"$1fe\",\"$1ff\",\"$200\"]\n1fc:{\"label\":\"3rd party JIT access integrations\",\"numericId\":1374,\"slug\":\"jit-access-integrations\",\"items\":\"$bc\",\"nodes\":\"$1fd\"}\n1fa:[\"$1fb\",\"$1fc\"]\n1f9:{\"label\":\"Just-in-time access\",\"numericId\":1443,\"slug\":\"just-in-time-access\",\"items\":\"$b9\",\"nodes\":\"$1fa\"}\n205:{\"label\":\"Terraform\",\"numericId\":1210,\"slug\":\"terraform-provider\",\"nodes\":\"$undefined\"}\n206:{\"label\":\"Pulumi\",\"numericId\":1211,\"slug\":\"pulumi-provider\",\"nodes\":\"$undefined\"}\n204:[\"$205\",\"$206\"]\n203:{\"label\":\"Infrastructure as code\",\"numericId\":1370,\"slug\":\"infrastructure-as-code\",\"items\":\"$c3\",\"nodes\":\"$204\"}\n207:{\"label\":\"macOS and iOS shortcuts\",\"numericId\":1233,\"slug\":\"mac-ios-shortcuts\",\"nodes\":\"$undefined\"}\n202:[\"$203\",\"$207\"]\n201:{\"label\":\"Automation\",\"numericId\":1430,\"slug\":\"automations\",\"items\":\"$c1\",\"nodes\":\"$202\"}\n1f3:[\"$1f4\",\"$1f5\",\"$1f6\",\"$1f7\",\"$1f8\",\"$1f9\",\"$201\"]\n1f2:{\"label\":\"Solutions\",\"group\":true,\"numericId\":1355,\"slug\":\"solutions\",\"items\":\"$b2\",\"nodes\":\"$1f3\"}\n180:[\"$181\",\"$1ba\",\"$1d4\",\"$1e2\",\"$1e9\",\"$1f2\"]\n178:{\"label\":\"How-to Guides\",\"numericId\":1348,\"slug\":\"guides\",\"items\":\"$179\",\"nodes\":\"$180\"}\n20a:{\"label\":\"Cloud servers\",\"numericId\":\"integrations\",\"slug\":\"cloud-server\",\"items\":\"$c7\"}\n20b:{\"label\":\"Containers and virtualization\",\"numericId\":1358,\"slug\":\"containers-and-virtualization\",\"items\":\"$d0\"}\n20c:{\"label\":\"Serverless apps\",\"numericId\":1364,\"slug\":\"serverless\",\"items\":\"$e2\"}\n20d:{\"label\":\"Databases\",\"numericId\":1359,\"slug\":\"database\",\"items\":\"$e8\"}\n20e:{\"label\":\"Remote environments\",\"items\":\"$eb\",\"numericId\":1363,\"slug\":\"remote-code\"}\n20f:{\"label\":\"Developer tools\",\"numericId\":1360,\"slug\":\"developer-tools\",\"items\":\"$f2\"}\n210:{\"label\":\"Firewalls\",\"numericId\":1361,\"slug\":\"firewall\",\"items\":\"$f7\"}\n211:{\"label\":\"Web servers\",\"numericId\":1365,\"slug\":\"webserver\",\"items\":\"$fd\"}\n212:{\"label\":\"NAS\",\"numericId\":1307,\"slug\":\"nas\",\"items\":\"$100\"}\n209:[\"$20a\",\"$20b\",\"$20c\",\"$20d\",\"$20e\",\"$20f\",\"$210\",\"$211\",\""])</script><script>self.__next_f.push([1,"$212\"]\n216:{\"label\":\"AWS Lightsail\",\"numericId\":1128,\"slug\":\"aws-lightsail\",\"nodes\":\"$undefined\"}\n217:{\"label\":\"AWS VPC\",\"numericId\":1021,\"slug\":\"install-aws\",\"nodes\":\"$undefined\"}\n218:{\"label\":\"Azure App Service\",\"numericId\":1126,\"slug\":\"azure-app-service\",\"nodes\":\"$undefined\"}\n219:{\"label\":\"Azure Linux VMs\",\"numericId\":1142,\"slug\":\"cloud-azure-linux\",\"nodes\":\"$undefined\"}\n21a:{\"label\":\"Azure Windows VMs\",\"numericId\":1143,\"slug\":\"cloud-azure-windows\",\"nodes\":\"$undefined\"}\n21b:{\"label\":\"Google Compute Engine VMs\",\"numericId\":1147,\"slug\":\"cloud-gce\",\"nodes\":\"$undefined\"}\n21c:{\"label\":\"Hetzner VMs\",\"numericId\":1150,\"slug\":\"cloud-hetzner\",\"nodes\":\"$undefined\"}\n21d:{\"label\":\"Oracle Cloud VMs\",\"numericId\":1149,\"slug\":\"cloud-oracle\",\"nodes\":\"$undefined\"}\n215:[\"$216\",\"$217\",\"$218\",\"$219\",\"$21a\",\"$21b\",\"$21c\",\"$21d\"]\n214:{\"label\":\"Cloud servers\",\"numericId\":\"integrations\",\"slug\":\"cloud-server\",\"items\":\"$c7\",\"nodes\":\"$215\"}\n220:{\"label\":\"Docker\",\"numericId\":1282,\"slug\":\"docker\",\"nodes\":\"$undefined\"}\n225:{\"label\":\"API server proxy\",\"numericId\":1437,\"slug\":\"kubernetes-operator-api-server-proxy\",\"nodes\":\"$undefined\"}\n226:{\"label\":\"Egress\",\"numericId\":1438,\"slug\":\"kubernetes-operator-cluster-egress\",\"nodes\":\"$undefined\"}\n227:{\"label\":\"Ingress\",\"numericId\":1439,\"slug\":\"kubernetes-operator-cluster-ingress\",\"nodes\":\"$undefined\"}\n228:{\"label\":\"Cross cluster\",\"numericId\":1442,\"slug\":\"kubernetes-operator-cross-cluster\",\"nodes\":\"$undefined\"}\n229:{\"label\":\"Cloud services\",\"numericId\":1440,\"slug\":\"kubernetes-operator-cloud-services\",\"nodes\":\"$undefined\"}\n22a:{\"label\":\"Subnet routers and exit nodes\",\"numericId\":1441,\"slug\":\"kubernetes-operator-connector\",\"nodes\":\"$undefined\"}\n22b:{\"label\":\"App connector\",\"numericId\":1517,\"slug\":\"kubernetes-operator-app-connector\",\"nodes\":\"$undefined\"}\n22c:{\"label\":\"Recorder nodes\",\"numericId\":1484,\"slug\":\"kubernetes-operator-deploying-tsrecorder\",\"nodes\":\"$undefined\"}\n22d:{\"label\":\"Operator resource customization\",\"numericId\":1445,\"slug\":\"kubernetes-operator-customization\",\"nodes\":\"$undefined\"}\n22e:{\"l"])</script><script>self.__next_f.push([1,"abel\":\"Troubleshooting\",\"numericId\":1446,\"slug\":\"kubernetes-operator-troubleshooting\",\"nodes\":\"$undefined\"}\n224:[\"$225\",\"$226\",\"$227\",\"$228\",\"$229\",\"$22a\",\"$22b\",\"$22c\",\"$22d\",\"$22e\"]\n223:{\"label\":\"Kubernetes operator\",\"numericId\":1236,\"slug\":\"kubernetes-operator\",\"items\":\"$d5\",\"nodes\":\"$224\"}\n222:[\"$223\"]\n221:{\"label\":\"Kubernetes\",\"items\":\"$d3\",\"numericId\":1185,\"slug\":\"kubernetes\",\"nodes\":\"$222\"}\n22f:{\"label\":\"LXC containers\",\"numericId\":1130,\"slug\":\"lxc-unprivileged\",\"nodes\":\"$undefined\"}\n230:{\"label\":\"Proxmox\",\"numericId\":1133,\"slug\":\"proxmox\",\"nodes\":\"$undefined\"}\n21f:[\"$220\",\"$221\",\"$22f\",\"$230\"]\n21e:{\"label\":\"Containers and virtualization\",\"numericId\":1358,\"slug\":\"containers-and-virtualization\",\"items\":\"$d0\",\"nodes\":\"$21f\"}\n233:{\"label\":\"AWS App Runner\",\"numericId\":1127,\"slug\":\"aws-app-runner\",\"nodes\":\"$undefined\"}\n234:{\"label\":\"AWS Lambda\",\"numericId\":1113,\"slug\":\"aws-lambda\",\"nodes\":\"$undefined\"}\n235:{\"label\":\"Fly.io\",\"numericId\":1132,\"slug\":\"flydotio\",\"nodes\":\"$undefined\"}\n236:{\"label\":\"Google Cloud Run\",\"numericId\":1108,\"slug\":\"cloudrun\",\"nodes\":\"$undefined\"}\n237:{\"label\":\"Heroku\",\"numericId\":1107,\"slug\":\"heroku\",\"nodes\":\"$undefined\"}\n232:[\"$233\",\"$234\",\"$235\",\"$236\",\"$237\"]\n231:{\"label\":\"Serverless apps\",\"numericId\":1364,\"slug\":\"serverless\",\"items\":\"$e2\",\"nodes\":\"$232\"}\n23a:{\"label\":\"AWS RDS\",\"numericId\":1141,\"slug\":\"aws-rds\",\"nodes\":\"$undefined\"}\n23b:{\"label\":\"Crunchy Bridge\",\"numericId\":1231,\"slug\":\"crunchy-bridge\",\"nodes\":\"$undefined\"}\n239:[\"$23a\",\"$23b\"]\n238:{\"label\":\"Databases\",\"numericId\":1359,\"slug\":\"database\",\"items\":\"$e8\",\"nodes\":\"$239\"}\n23e:{\"label\":\"code-server\",\"numericId\":1164,\"slug\":\"codeserver\",\"nodes\":\"$undefined\"}\n23f:{\"label\":\"Coder\",\"numericId\":1163,\"slug\":\"coder\",\"nodes\":\"$undefined\"}\n240:{\"label\":\"CodeSandbox\",\"numericId\":1221,\"slug\":\"codesandbox\",\"nodes\":\"$undefined\"}\n241:{\"label\":\"GitHub Codespaces\",\"numericId\":1160,\"slug\":\"github-codespaces\",\"nodes\":\"$undefined\"}\n242:{\"label\":\"Gitpod\",\"numericId\":1161,\"slug\":\"gitpod\",\"nodes\":\"$undefined\"}\n243:{\"label\":\"OpenVSCode\",\"numericId\":11"])</script><script>self.__next_f.push([1,"62,\"slug\":\"openvscode\",\"nodes\":\"$undefined\"}\n23d:[\"$23e\",\"$23f\",\"$240\",\"$241\",\"$242\",\"$243\"]\n23c:{\"label\":\"Remote environments\",\"items\":\"$eb\",\"numericId\":1363,\"slug\":\"remote-code\",\"nodes\":\"$23d\"}\n246:{\"label\":\"Visual Studio Code Extension\",\"numericId\":1265,\"slug\":\"vscode-extension\",\"nodes\":\"$undefined\"}\n247:{\"label\":\"Tailscale GitHub Action\",\"numericId\":1276,\"slug\":\"tailscale-github-action\",\"nodes\":\"$undefined\"}\n248:{\"label\":\"Tailscale with GitLab CI/CD\",\"numericId\":1287,\"slug\":\"tailscale-gitlab-runner\",\"nodes\":\"$undefined\"}\n249:{\"label\":\"Docker Desktop\",\"numericId\":1184,\"slug\":\"docker-desktop\",\"nodes\":\"$undefined\"}\n245:[\"$246\",\"$247\",\"$248\",\"$249\"]\n244:{\"label\":\"Developer tools\",\"numericId\":1360,\"slug\":\"developer-tools\",\"items\":\"$f2\",\"nodes\":\"$245\"}\n24c:{\"label\":\"Overview\",\"numericId\":1181,\"slug\":\"firewalls\",\"nodes\":\"$undefined\"}\n24d:{\"label\":\"OPNsense\",\"numericId\":1097,\"slug\":\"install-opnsense\",\"nodes\":\"$undefined\"}\n24e:{\"label\":\"Palo Alto Networks\",\"numericId\":1333,\"slug\":\"firewall-palo-alto-networks\",\"nodes\":\"$undefined\"}\n24f:{\"label\":\"pfSense\",\"numericId\":1146,\"slug\":\"pfsense\",\"nodes\":\"$undefined\"}\n250:{\"label\":\"Firewall mode\",\"numericId\":1294,\"slug\":\"firewall-mode\",\"nodes\":\"$undefined\"}\n24b:[\"$24c\",\"$24d\",\"$24e\",\"$24f\",\"$250\"]\n24a:{\"label\":\"Firewalls\",\"numericId\":1361,\"slug\":\"firewall\",\"items\":\"$f7\",\"nodes\":\"$24b\"}\n253:{\"label\":\"Caddy Server\",\"numericId\":1190,\"slug\":\"caddy-certificates\",\"nodes\":\"$undefined\"}\n254:{\"label\":\"Traefik Proxy\",\"numericId\":1234,\"slug\":\"traefik-certificates\",\"nodes\":\"$undefined\"}\n252:[\"$253\",\"$254\"]\n251:{\"label\":\"Web servers\",\"numericId\":1365,\"slug\":\"webserver\",\"items\":\"$fd\",\"nodes\":\"$252\"}\n257:{\"label\":\"Synology\",\"numericId\":1131,\"slug\":\"synology\",\"nodes\":\"$undefined\"}\n258:{\"label\":\"QNAP\",\"numericId\":1273,\"slug\":\"qnap\",\"nodes\":\"$undefined\"}\n259:{\"label\":\"TrueNAS SCALE\",\"numericId\":1483,\"slug\":\"truenas-scale\",\"nodes\":\"$undefined\"}\n25a:{\"label\":\"Unraid\",\"numericId\":1478,\"slug\":\"unraid\",\"nodes\":\"$undefined\"}\n256:[\"$257\",\"$258\",\"$259\",\"$25a\"]\n255:{\"label\":\"NAS\",\"numericId\":1307,\"slug\":"])</script><script>self.__next_f.push([1,"\"nas\",\"items\":\"$100\",\"nodes\":\"$256\"}\n213:[\"$214\",\"$21e\",\"$231\",\"$238\",\"$23c\",\"$244\",\"$24a\",\"$251\",\"$255\"]\n208:{\"label\":\"Integrations\",\"numericId\":1356,\"items\":\"$209\",\"slug\":\"integrations\",\"nodes\":\"$213\"}\n25b:{\"label\":\"FAQ\",\"numericId\":1366,\"slug\":\"faq\",\"nodes\":\"$undefined\"}\n25e:{\"label\":\"Logging overview\",\"numericId\":1011,\"slug\":\"log-mesh-traffic\"}\n25f:{\"label\":\"Configuration audit logging\",\"numericId\":1203,\"slug\":\"audit-logging\"}\n260:{\"label\":\"Network flow logs\",\"numericId\":1219,\"slug\":\"network-flow-logs\"}\n261:{\"label\":\"Log streaming\",\"numericId\":1255,\"slug\":\"log-streaming\"}\n262:{\"label\":\"SSH session recording\",\"numericId\":1246,\"slug\":\"tailscale-ssh-session-recording\",\"items\":\"$105\"}\n263:{\"label\":\"Client metrics\",\"numericId\":1482,\"slug\":\"client-metrics\"}\n264:{\"label\":\"Webhooks\",\"numericId\":1213,\"slug\":\"webhooks\"}\n25d:[\"$25e\",\"$25f\",\"$260\",\"$261\",\"$262\",\"$263\",\"$264\"]\n266:{\"label\":\"Logging overview\",\"numericId\":1011,\"slug\":\"log-mesh-traffic\",\"nodes\":\"$undefined\"}\n267:{\"label\":\"Configuration audit logging\",\"numericId\":1203,\"slug\":\"audit-logging\",\"nodes\":\"$undefined\"}\n268:{\"label\":\"Network flow logs\",\"numericId\":1219,\"slug\":\"network-flow-logs\",\"nodes\":\"$undefined\"}\n269:{\"label\":\"Log streaming\",\"numericId\":1255,\"slug\":\"log-streaming\",\"nodes\":\"$undefined\"}\n26c:{\"label\":\"Send recordings to S3\",\"numericId\":1263,\"slug\":\"session-recording-s3\",\"nodes\":\"$undefined\"}\n26d:{\"label\":\"Deploy multiple recorder nodes\",\"numericId\":1262,\"slug\":\"multiple-recorder-nodes\",\"nodes\":\"$undefined\"}\n26b:[\"$26c\",\"$26d\"]\n26a:{\"label\":\"SSH session recording\",\"numericId\":1246,\"slug\":\"tailscale-ssh-session-recording\",\"items\":\"$105\",\"nodes\":\"$26b\"}\n26e:{\"label\":\"Client metrics\",\"numericId\":1482,\"slug\":\"client-metrics\",\"nodes\":\"$undefined\"}\n26f:{\"label\":\"Webhooks\",\"numericId\":1213,\"slug\":\"webhooks\",\"nodes\":\"$undefined\"}\n265:[\"$266\",\"$267\",\"$268\",\"$269\",\"$26a\",\"$26e\",\"$26f\"]\n25c:{\"label\":\"Logging, Streaming, and Events\",\"numericId\":1349,\"slug\":\"log-events\",\"items\":\"$25d\",\"nodes\":\"$265\"}\n272:{\"label\":\"Contact preferences\",\"numericId\":1224,\"slug\":\"co"])</script><script>self.__next_f.push([1,"ntract-preferences\"}\n273:{\"label\":\"Pricing and billing\",\"numericId\":1375,\"slug\":\"pb-lp\",\"items\":\"$108\"}\n274:{\"label\":\"Tailnet name\",\"numericId\":1217,\"slug\":\"tailnet-name\"}\n275:{\"label\":\"Domain ownership\",\"numericId\":1259,\"slug\":\"domain-ownership\"}\n271:[\"$272\",\"$273\",\"$274\",\"$275\"]\n277:{\"label\":\"Contact preferences\",\"numericId\":1224,\"slug\":\"contract-preferences\",\"nodes\":\"$undefined\"}\n27a:{\"label\":\"Pricing ↗\",\"href\":\"/pricing\",\"nodes\":\"$undefined\"}\n27b:{\"label\":\"Pricing \u0026 Plans FAQ\",\"numericId\":1251,\"slug\":\"pricing-faq\",\"nodes\":\"$undefined\"}\n27c:{\"label\":\"Free plans and discounts\",\"numericId\":1154,\"slug\":\"free-plans-discounts\",\"nodes\":\"$undefined\"}\n27d:{\"label\":\"Modify billing\",\"numericId\":1182,\"slug\":\"billing-information\",\"nodes\":\"$undefined\"}\n27e:{\"label\":\"Tailscale on Azure Marketplace\",\"numericId\":1220,\"slug\":\"azure-marketplace\",\"nodes\":\"$undefined\"}\n279:[\"$27a\",\"$27b\",\"$27c\",\"$27d\",\"$27e\"]\n278:{\"label\":\"Pricing and billing\",\"numericId\":1375,\"slug\":\"pb-lp\",\"items\":\"$108\",\"nodes\":\"$279\"}\n27f:{\"label\":\"Tailnet name\",\"numericId\":1217,\"slug\":\"tailnet-name\",\"nodes\":\"$undefined\"}\n280:{\"label\":\"Domain ownership\",\"numericId\":1259,\"slug\":\"domain-ownership\",\"nodes\":\"$undefined\"}\n276:[\"$277\",\"$278\",\"$27f\",\"$280\"]\n270:{\"label\":\"Manage Your Organization\",\"numericId\":1431,\"slug\":\"manage-account\",\"items\":\"$271\",\"nodes\":\"$276\"}\n283:{\"label\":\"ACL syntax\",\"numericId\":1337,\"slug\":\"acl-syntax\",\"items\":\"$10e\"}\n284:{\"label\":\"ACL samples\",\"numericId\":1192,\"slug\":\"acl-samples\"}\n285:{\"label\":\"CLI\",\"numericId\":1080,\"slug\":\"cli\",\"items\":\"$112\"}\n286:{\"label\":\"API\",\"numericId\":1101,\"slug\":\"api\",\"items\":\"$118\"}\n287:{\"label\":\"Key prefixes\",\"numericId\":1277,\"slug\":\"key-prefixes\"}\n288:{\"label\":\"Production best practices\",\"numericId\":1300,\"slug\":\"production-best-practices\",\"items\":\"$11e\"}\n289:{\"label\":\"Shared responsibility\",\"numericId\":1212,\"slug\":\"shared-responsibility\"}\n28a:{\"label\":\"Technical overviews\",\"numericId\":1376,\"slug\":\"tech-overviews\",\"items\":\"$128\"}\n28b:{\"label\":\"Terminology and concepts\",\"numericId\":1155,\"slug\":\"terminology-and"])</script><script>self.__next_f.push([1,"-concepts\"}\n28c:{\"label\":\"GitHub ↗\",\"href\":\"https://github.com/tailscale/tailscale\"}\n282:[\"$283\",\"$284\",\"$285\",\"$286\",\"$287\",\"$288\",\"$289\",\"$28a\",\"$28b\",\"$28c\"]\n290:{\"label\":\"Grants\",\"numericId\":1324,\"slug\":\"acl-grants\",\"nodes\":\"$undefined\"}\n291:{\"label\":\"IP sets\",\"numericId\":1387,\"slug\":\"ipsets\",\"nodes\":\"$undefined\"}\n292:{\"label\":\"Via in grants\",\"numericId\":1378,\"slug\":\"via\",\"nodes\":\"$undefined\"}\n28f:[\"$290\",\"$291\",\"$292\"]\n28e:{\"label\":\"ACL syntax\",\"numericId\":1337,\"slug\":\"acl-syntax\",\"items\":\"$10e\",\"nodes\":\"$28f\"}\n293:{\"label\":\"ACL samples\",\"numericId\":1192,\"slug\":\"acl-samples\",\"nodes\":\"$undefined\"}\n296:{\"label\":\"tailscale funnel\",\"numericId\":1311,\"slug\":\"tailscale-funnel\",\"nodes\":\"$undefined\"}\n297:{\"label\":\"tailscale lock\",\"numericId\":1243,\"slug\":\"tailscale-lock\",\"nodes\":\"$undefined\"}\n298:{\"label\":\"tailscale serve\",\"numericId\":1242,\"slug\":\"tailscale-serve\",\"nodes\":\"$undefined\"}\n299:{\"label\":\"tailscale up\",\"numericId\":1241,\"slug\":\"tailscale-up\",\"nodes\":\"$undefined\"}\n29a:{\"label\":\"tailscaled\",\"numericId\":1278,\"slug\":\"tailscaled\",\"nodes\":\"$undefined\"}\n295:[\"$296\",\"$297\",\"$298\",\"$299\",\"$29a\"]\n294:{\"label\":\"CLI\",\"numericId\":1080,\"slug\":\"cli\",\"items\":\"$112\",\"nodes\":\"$295\"}\n29d:{\"label\":\"OAuth clients\",\"numericId\":1215,\"slug\":\"oauth-clients\",\"nodes\":\"$undefined\"}\n2a0:{\"label\":\"Hello tsnet\",\"numericId\":1521,\"slug\":\"hello-tsnet\",\"nodes\":\"$undefined\"}\n2a1:{\"label\":\"tsnet.Server\",\"numericId\":1522,\"slug\":\"tsnet-server\",\"nodes\":\"$undefined\"}\n29f:[\"$2a0\",\"$2a1\"]\n29e:{\"label\":\"tsnet for Go programs\",\"numericId\":1244,\"slug\":\"tsnet\",\"items\":\"$11b\",\"nodes\":\"$29f\"}\n29c:[\"$29d\",\"$29e\"]\n29b:{\"label\":\"API\",\"numericId\":1101,\"slug\":\"api\",\"items\":\"$118\",\"nodes\":\"$29c\"}\n2a2:{\"label\":\"Key prefixes\",\"numericId\":1277,\"slug\":\"key-prefixes\",\"nodes\":\"$undefined\"}\n2a5:{\"label\":\"Deployment checklist\",\"numericId\":1344,\"slug\":\"deployment-checklist\",\"nodes\":\"$undefined\"}\n2a8:{\"label\":\"Key and secret management\",\"numericId\":1252,\"slug\":\"key-secret-management\",\"nodes\":\"$undefined\"}\n2a9:{\"label\":\"Secret scanning\",\"numericId\":1301,\"slug\":\"secret-sc"])</script><script>self.__next_f.push([1,"anning\",\"nodes\":\"$undefined\"}\n2aa:{\"label\":\"Admin with passkey\",\"numericId\":1341,\"slug\":\"tailnet-passkey-admin\",\"nodes\":\"$undefined\"}\n2a7:[\"$2a8\",\"$2a9\",\"$2aa\"]\n2a6:{\"label\":\"Security best practices\",\"items\":\"$121\",\"numericId\":1196,\"slug\":\"security-hardening\",\"nodes\":\"$2a7\"}\n2ab:{\"label\":\"Performance best practices\",\"numericId\":1320,\"slug\":\"performance-best-practices\",\"nodes\":\"$undefined\"}\n2ac:{\"label\":\"AWS reference architecture\",\"numericId\":1296,\"slug\":\"aws-reference-architecture\",\"nodes\":\"$undefined\"}\n2ad:{\"label\":\"Azure reference architecture\",\"numericId\":1314,\"slug\":\"azure-reference-architecture\",\"nodes\":\"$undefined\"}\n2a4:[\"$2a5\",\"$2a6\",\"$2ab\",\"$2ac\",\"$2ad\"]\n2a3:{\"label\":\"Production best practices\",\"numericId\":1300,\"slug\":\"production-best-practices\",\"items\":\"$11e\",\"nodes\":\"$2a4\"}\n2ae:{\"label\":\"Shared responsibility\",\"numericId\":1212,\"slug\":\"shared-responsibility\",\"nodes\":\"$undefined\"}\n2b1:{\"label\":\"About WireGuard\",\"numericId\":1035,\"slug\":\"wireguard\",\"nodes\":\"$undefined\"}\n2b2:{\"label\":\"Tailscale encryption\",\"numericId\":1504,\"slug\":\"encryption\",\"nodes\":\"$undefined\"}\n2b3:{\"label\":\"Control and data planes\",\"numericId\":1508,\"slug\":\"control-data-planes\",\"nodes\":\"$undefined\"}\n2b4:{\"label\":\"Direct vs relayed connections\",\"numericId\":1257,\"slug\":\"connection-types\",\"nodes\":\"$undefined\"}\n2b5:{\"label\":\"Device connectivity\",\"numericId\":1411,\"slug\":\"device-connectivity\",\"nodes\":\"$undefined\"}\n2b6:{\"label\":\"How Tailscale assigns IP addresses\",\"numericId\":1033,\"slug\":\"ip-and-dns-addresses\",\"nodes\":\"$undefined\"}\n2b7:{\"label\":\"Tailscale and the OSI model\",\"numericId\":1456,\"slug\":\"osi\",\"nodes\":\"$undefined\"}\n2b8:{\"label\":\"Smaller binaries for embedded devices\",\"numericId\":1207,\"slug\":\"small-tailscale\",\"nodes\":\"$undefined\"}\n2b9:{\"label\":\"Kernel vs. netstack subnet routing \u0026 exit nodes\",\"numericId\":1177,\"slug\":\"kernel-vs-userspace-routers\",\"nodes\":\"$undefined\"}\n2ba:{\"label\":\"Userspace networking mode\",\"numericId\":1112,\"slug\":\"userspace-networking\",\"nodes\":\"$undefined\"}\n2bb:{\"label\":\"Node keys\",\"numericId\":1010,\"slug\":\"node-keys\","])</script><script>self.__next_f.push([1,"\"nodes\":\"$undefined\"}\n2bc:{\"label\":\"Protect SSH Servers\",\"numericId\":1009,\"slug\":\"protect-ssh-servers\",\"nodes\":\"$undefined\"}\n2bd:{\"label\":\"Tailnet lock white paper\",\"numericId\":1230,\"slug\":\"tailnet-lock-whitepaper\",\"nodes\":\"$undefined\"}\n2be:{\"label\":\"DERP servers\",\"numericId\":1232,\"slug\":\"derp-servers\",\"nodes\":\"$undefined\"}\n2bf:{\"label\":\"Zero Trust Networking (ZTN)\",\"numericId\":1123,\"slug\":\"zero-trust\",\"nodes\":\"$undefined\"}\n2c0:{\"label\":\"IPv4 vs. IPv6 FAQ\",\"numericId\":1134,\"slug\":\"ipv6-faq\",\"nodes\":\"$undefined\"}\n2b0:[\"$2b1\",\"$2b2\",\"$2b3\",\"$2b4\",\"$2b5\",\"$2b6\",\"$2b7\",\"$2b8\",\"$2b9\",\"$2ba\",\"$2bb\",\"$2bc\",\"$2bd\",\"$2be\",\"$2bf\",\"$2c0\"]\n2af:{\"label\":\"Technical overviews\",\"numericId\":1376,\"slug\":\"tech-overviews\",\"items\":\"$128\",\"nodes\":\"$2b0\"}\n2c1:{\"label\":\"Terminology and concepts\",\"numericId\":1155,\"slug\":\"terminology-and-concepts\",\"nodes\":\"$undefined\"}\n2c2:{\"label\":\"GitHub ↗\",\"href\":\"https://github.com/tailscale/tailscale\",\"nodes\":\"$undefined\"}\n28d:[\"$28e\",\"$293\",\"$294\",\"$29b\",\"$2a2\",\"$2a3\",\"$2ae\",\"$2af\",\"$2c1\",\"$2c2\"]\n281:{\"label\":\"Reference\",\"numericId\":1367,\"slug\":\"reference\",\"items\":\"$282\",\"nodes\":\"$28d\"}\n2c5:{\"label\":\"Troubleshooting\",\"numericId\":1023,\"slug\":\"troubleshooting\",\"items\":\"$139\"}\n2c6:{\"label\":\"Support options\",\"numericId\":1250,\"slug\":\"support-options\"}\n2c7:{\"label\":\"Contact support ↗\",\"href\":\"/contact/support\"}\n2c8:{\"label\":\"Generate a bug report\",\"numericId\":1227,\"slug\":\"bug-report\"}\n2c4:[\"$2c5\",\"$2c6\",\"$2c7\",\"$2c8\"]\n2cc:{\"label\":\"Troubleshoot device connectivity\",\"numericId\":1463,\"slug\":\"troubleshoot-connectivity\",\"nodes\":\"$undefined\"}\n2cb:[\"$2cc\"]\n2ca:{\"label\":\"Troubleshooting\",\"numericId\":1023,\"slug\":\"troubleshooting\",\"items\":\"$139\",\"nodes\":\"$2cb\"}\n2cd:{\"label\":\"Support options\",\"numericId\":1250,\"slug\":\"support-options\",\"nodes\":\"$undefined\"}\n2ce:{\"label\":\"Contact support ↗\",\"href\":\"/contact/support\",\"nodes\":\"$undefined\"}\n2cf:{\"label\":\"Generate a bug report\",\"numericId\":1227,\"slug\":\"bug-report\",\"nodes\":\"$undefined\"}\n2c9:[\"$2ca\",\"$2cd\",\"$2ce\",\"$2cf\"]\n2c3:{\"label\":\"Get Support\",\"numericId\":1432,\"sl"])</script><script>self.__next_f.push([1,"ug\":\"get-support\",\"items\":\"$2c4\",\"nodes\":\"$2c9\"}\n2d2:{\"label\":\"Changelog ↗\",\"href\":\"/changelog\"}\n2d3:{\"label\":\"Comparisons ↗\",\"href\":\"/compare\"}\n2d4:{\"label\":\"Release stages\",\"numericId\":1167,\"slug\":\"release-stages\"}\n2d5:{\"label\":\"Security ↗\",\"href\":\"/security\"}\n2d6:{\"label\":\"Versions\",\"numericId\":1168,\"slug\":\"versions\",\"items\":\"$13b\"}\n2d7:{\"label\":\"Use cases\",\"numericId\":1377,\"slug\":\"use-cases\"}\n2d8:{\"label\":\"Invite only features\",\"numericId\":1222,\"slug\":\"invite-only-feature\"}\n2d1:[\"$2d2\",\"$2d3\",\"$2d4\",\"$2d5\",\"$2d6\",\"$2d7\",\"$2d8\"]\n2da:{\"label\":\"Changelog ↗\",\"href\":\"/changelog\",\"nodes\":\"$undefined\"}\n2db:{\"label\":\"Comparisons ↗\",\"href\":\"/compare\",\"nodes\":\"$undefined\"}\n2dc:{\"label\":\"Release stages\",\"numericId\":1167,\"slug\":\"release-stages\",\"nodes\":\"$undefined\"}\n2dd:{\"label\":\"Security ↗\",\"href\":\"/security\",\"nodes\":\"$undefined\"}\n2e0:{\"label\":\"Unstable builds\",\"numericId\":1083,\"slug\":\"install-unstable\",\"nodes\":\"$undefined\"}\n2df:[\"$2e0\"]\n2de:{\"label\":\"Versions\",\"numericId\":1168,\"slug\":\"versions\",\"items\":\"$13b\",\"nodes\":\"$2df\"}\n2e1:{\"label\":\"Use cases\",\"numericId\":1377,\"slug\":\"use-cases\",\"nodes\":\"$undefined\"}\n2e2:{\"label\":\"Invite only features\",\"numericId\":1222,\"slug\":\"invite-only-feature\",\"nodes\":\"$undefined\"}\n2d9:[\"$2da\",\"$2db\",\"$2dc\",\"$2dd\",\"$2de\",\"$2e1\",\"$2e2\"]\n2d0:{\"label\":\"Resources\",\"numericId\":1368,\"slug\":\"resources\",\"items\":\"$2d1\",\"nodes\":\"$2d9\"}\n13f:[\"$140\",\"$178\",\"$208\",\"$25b\",\"$25c\",\"$270\",\"$281\",\"$2c3\",\"$2d0\"]\n"])</script><script>self.__next_f.push([1,"b:[\"$\",\"div\",null,{\"className\":\"grid grid-cols-10 gap-x-8 pt-4 md:pt-8\",\"children\":[[\"$\",\"aside\",null,{\"className\":\"js-docHighlight col-span-10 md:col-span-3 md:row-span-2 xl:col-span-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"relative hidden h-full md:block\",\"children\":[\"$\",\"$L1a\",null,{\"routeParams\":[\"1155\",\"terminology-and-concepts\"],\"config\":[{\"label\":\"Start\",\"slug\":\"start\",\"numericId\":1346,\"items\":[{\"label\":\"Quickstart\",\"numericId\":1017,\"slug\":\"install\"},{\"label\":\"Install Tailscale\",\"numericId\":1347,\"slug\":\"installation\",\"items\":[{\"label\":\"Download ↗\",\"href\":\"/downloads\"},{\"label\":\"Update Tailscale\",\"numericId\":1067,\"slug\":\"update\"},{\"label\":\"Uninstall Tailscale\",\"numericId\":1069,\"slug\":\"uninstall\"},{\"label\":\"Deploy with MDM\",\"numericId\":1362,\"slug\":\"mdm\",\"items\":[{\"label\":\"Customize Tailscale using system policies\",\"numericId\":1315,\"slug\":\"mdm-keys\",\"items\":[{\"label\":\"Deploy on Android\",\"numericId\":1384,\"slug\":\"android-mdm\"},{\"label\":\"Deploy on iOS/tvOS\",\"numericId\":1380,\"slug\":\"ios-mdm\"},{\"label\":\"Deploy on macOS\",\"numericId\":1286,\"slug\":\"macos-mdm\"},{\"label\":\"Deploy on Windows\",\"numericId\":1318,\"slug\":\"windows-mdm\"}]},{\"label\":\"MDM integration partners\",\"numericId\":1448,\"slug\":\"mdm-integration-partners\",\"items\":[{\"label\":\"Google Workspace\",\"numericId\":1386,\"slug\":\"mdm-google-workspace\"},{\"label\":\"Jamf\",\"numericId\":1328,\"slug\":\"mdm-jamf\"},{\"label\":\"JumpCloud\",\"numericId\":1485,\"slug\":\"mdm-jumpcloud\"},{\"label\":\"Kandji\",\"numericId\":1329,\"slug\":\"mdm-kandji\"},{\"label\":\"Microsoft Intune\",\"numericId\":1327,\"slug\":\"mdm-microsoft-intune\"},{\"label\":\"SimpleMDM\",\"numericId\":1330,\"slug\":\"mdm-simplemdm\"},{\"label\":\"TinyMDM\",\"numericId\":1385,\"slug\":\"mdm-tinymdm\"}]}]}]},{\"label\":\"Quick guides\",\"numericId\":1415,\"slug\":\"quick-guides\",\"items\":[{\"label\":\"Use exit nodes\",\"numericId\":1408,\"slug\":\"quick-guide-exit-node\"},{\"label\":\"Configure a subnet router\",\"numericId\":1406,\"slug\":\"quick-guide-subnets\"},{\"label\":\"Host a website\",\"numericId\":1310,\"slug\":\"quick-guide-host-websites\"},{\"label\":\"Install on AWS\",\"numericId\":1449,\"slug\":\"quick-guide-aws\"},{\"label\":\"SSH into a Linux virtual machine\",\"numericId\":1308,\"slug\":\"quick-guide-ssh-linux-vm\"},{\"label\":\"Access a virtual private cloud (VPC)\",\"numericId\":1309,\"slug\":\"quick-guide-access-vpc\"},{\"label\":\"Add a Docker container\",\"numericId\":1453,\"slug\":\"quick-guide-docker\"}]},{\"label\":\"Set up an identity provider\",\"numericId\":1013,\"slug\":\"sso-providers\",\"items\":[{\"label\":\"Google\",\"numericId\":1199,\"slug\":\"sso-google\"},{\"label\":\"Microsoft Entra ID\",\"numericId\":1285,\"slug\":\"sso-microsoft\"},{\"label\":\"Okta\",\"numericId\":1066,\"slug\":\"sso-okta\"},{\"label\":\"GitHub\",\"numericId\":1284,\"slug\":\"sso-github\"},{\"label\":\"Apple\",\"numericId\":1283,\"slug\":\"sso-apple\"},{\"label\":\"OneLogin\",\"numericId\":1070,\"slug\":\"sso-onelogin\"},{\"label\":\"User \u0026 group provisioning\",\"numericId\":1290,\"slug\":\"user-group-provisioning\",\"items\":[{\"label\":\"Google Workspace\",\"numericId\":1317,\"slug\":\"sso-google-sync\"},{\"label\":\"Microsoft Entra ID\",\"numericId\":1249,\"slug\":\"sso-entra-id-scim\"},{\"label\":\"Okta\",\"numericId\":1180,\"slug\":\"sso-okta-scim\"}]},{\"label\":\"Custom OIDC providers\",\"numericId\":1240,\"slug\":\"sso-custom-oidc\"},{\"label\":\"Enable 2FA and MFA\",\"numericId\":1075,\"slug\":\"multifactor-auth\"}]},{\"label\":\"What is Tailscale?\",\"numericId\":1151,\"slug\":\"what-is-tailscale\"}],\"nodes\":[{\"label\":\"Quickstart\",\"numericId\":1017,\"slug\":\"install\",\"nodes\":\"$undefined\"},{\"label\":\"Install Tailscale\",\"numericId\":1347,\"slug\":\"installation\",\"items\":\"$1b\",\"nodes\":[{\"label\":\"Download ↗\",\"href\":\"/downloads\",\"nodes\":\"$undefined\"},{\"label\":\"Update Tailscale\",\"numericId\":1067,\"slug\":\"update\",\"nodes\":\"$undefined\"},{\"label\":\"Uninstall Tailscale\",\"numericId\":1069,\"slug\":\"uninstall\",\"nodes\":\"$undefined\"},{\"label\":\"Deploy with MDM\",\"numericId\":1362,\"slug\":\"mdm\",\"items\":\"$20\",\"nodes\":[{\"label\":\"Customize Tailscale using system policies\",\"numericId\":1315,\"slug\":\"mdm-keys\",\"items\":\"$22\",\"nodes\":[{\"label\":\"Deploy on Android\",\"numericId\":1384,\"slug\":\"android-mdm\",\"nodes\":\"$undefined\"},{\"label\":\"Deploy on iOS/tvOS\",\"numericId\":1380,\"slug\":\"ios-mdm\",\"nodes\":\"$undefined\"},{\"label\":\"Deploy on macOS\",\"numericId\":1286,\"slug\":\"macos-mdm\",\"nodes\":\"$undefined\"},{\"label\":\"Deploy on Windows\",\"numericId\":1318,\"slug\":\"windows-mdm\",\"nodes\":\"$undefined\"}]},{\"label\":\"MDM integration partners\",\"numericId\":1448,\"slug\":\"mdm-integration-partners\",\"items\":\"$28\",\"nodes\":[{\"label\":\"Google Workspace\",\"numericId\":1386,\"slug\":\"mdm-google-workspace\",\"nodes\":\"$undefined\"},{\"label\":\"Jamf\",\"numericId\":1328,\"slug\":\"mdm-jamf\",\"nodes\":\"$undefined\"},{\"label\":\"JumpCloud\",\"numericId\":1485,\"slug\":\"mdm-jumpcloud\",\"nodes\":\"$undefined\"},{\"label\":\"Kandji\",\"numericId\":1329,\"slug\":\"mdm-kandji\",\"nodes\":\"$undefined\"},{\"label\":\"Microsoft Intune\",\"numericId\":1327,\"slug\":\"mdm-microsoft-intune\",\"nodes\":\"$undefined\"},{\"label\":\"SimpleMDM\",\"numericId\":1330,\"slug\":\"mdm-simplemdm\",\"nodes\":\"$undefined\"},{\"label\":\"TinyMDM\",\"numericId\":1385,\"slug\":\"mdm-tinymdm\",\"nodes\":\"$undefined\"}]}]}]},{\"label\":\"Quick guides\",\"numericId\":1415,\"slug\":\"quick-guides\",\"items\":\"$30\",\"nodes\":[{\"label\":\"Use exit nodes\",\"numericId\":1408,\"slug\":\"quick-guide-exit-node\",\"nodes\":\"$undefined\"},{\"label\":\"Configure a subnet router\",\"numericId\":1406,\"slug\":\"quick-guide-subnets\",\"nodes\":\"$undefined\"},{\"label\":\"Host a website\",\"numericId\":1310,\"slug\":\"quick-guide-host-websites\",\"nodes\":\"$undefined\"},{\"label\":\"Install on AWS\",\"numericId\":1449,\"slug\":\"quick-guide-aws\",\"nodes\":\"$undefined\"},{\"label\":\"SSH into a Linux virtual machine\",\"numericId\":1308,\"slug\":\"quick-guide-ssh-linux-vm\",\"nodes\":\"$undefined\"},{\"label\":\"Access a virtual private cloud (VPC)\",\"numericId\":1309,\"slug\":\"quick-guide-access-vpc\",\"nodes\":\"$undefined\"},{\"label\":\"Add a Docker container\",\"numericId\":1453,\"slug\":\"quick-guide-docker\",\"nodes\":\"$undefined\"}]},{\"label\":\"Set up an identity provider\",\"numericId\":1013,\"slug\":\"sso-providers\",\"items\":\"$38\",\"nodes\":[{\"label\":\"Google\",\"numericId\":1199,\"slug\":\"sso-google\",\"nodes\":\"$undefined\"},{\"label\":\"Microsoft Entra ID\",\"numericId\":1285,\"slug\":\"sso-microsoft\",\"nodes\":\"$undefined\"},{\"label\":\"Okta\",\"numericId\":1066,\"slug\":\"sso-okta\",\"nodes\":\"$undefined\"},{\"label\":\"GitHub\",\"numericId\":1284,\"slug\":\"sso-github\",\"nodes\":\"$undefined\"},{\"label\":\"Apple\",\"numericId\":1283,\"slug\":\"sso-apple\",\"nodes\":\"$undefined\"},{\"label\":\"OneLogin\",\"numericId\":1070,\"slug\":\"sso-onelogin\",\"nodes\":\"$undefined\"},{\"label\":\"User \u0026 group provisioning\",\"numericId\":1290,\"slug\":\"user-group-provisioning\",\"items\":\"$40\",\"nodes\":[{\"label\":\"Google Workspace\",\"numericId\":1317,\"slug\":\"sso-google-sync\",\"nodes\":\"$undefined\"},{\"label\":\"Microsoft Entra ID\",\"numericId\":1249,\"slug\":\"sso-entra-id-scim\",\"nodes\":\"$undefined\"},{\"label\":\"Okta\",\"numericId\":1180,\"slug\":\"sso-okta-scim\",\"nodes\":\"$undefined\"}]},{\"label\":\"Custom OIDC providers\",\"numericId\":1240,\"slug\":\"sso-custom-oidc\",\"nodes\":\"$undefined\"},{\"label\":\"Enable 2FA and MFA\",\"numericId\":1075,\"slug\":\"multifactor-auth\",\"nodes\":\"$undefined\"}]},{\"label\":\"What is Tailscale?\",\"numericId\":1151,\"slug\":\"what-is-tailscale\",\"nodes\":\"$undefined\"}]},{\"label\":\"How-to Guides\",\"numericId\":1348,\"slug\":\"guides\",\"items\":[{\"label\":\"Manage Access\",\"group\":true,\"numericId\":1350,\"slug\":\"manage\",\"items\":[{\"label\":\"Manage access control\",\"numericId\":1393,\"slug\":\"access-control\",\"items\":[{\"label\":\"Manage ACLs\",\"numericId\":1018,\"slug\":\"acls\",\"items\":[{\"label\":\"ACL syntax\",\"numericId\":1337,\"slug\":\"acl-syntax\"}]},{\"label\":\"Manage grants\",\"numericId\":1324,\"slug\":\"acl-grants\"},{\"label\":\"Edit the tailnet policy file\",\"numericId\":1338,\"slug\":\"acl-edit\"},{\"label\":\"Manage ACLs with GitOps\",\"numericId\":1204,\"slug\":\"gitopcs-acls\",\"items\":[{\"label\":\"Manage ACLs with Bitbucket\",\"numericId\":1302,\"slug\":\"gitops-acls-bitbucket\"},{\"label\":\"Manage ACLs with GitHub\",\"numericId\":1306,\"slug\":\"gitops-acls-github\"},{\"label\":\"Manage ACLs with GitLab\",\"numericId\":1254,\"slug\":\"gitops-acls-gitlab\"}]}]},{\"label\":\"Manage Just-in-time access\",\"numericId\":1443,\"slug\":\"just-in-time-access\",\"items\":[{\"label\":\"Device posture for JIT access\",\"numericId\":1383,\"slug\":\"device-posture-for-jit\"},{\"label\":\"3rd party JIT access integrations\",\"numericId\":1374,\"slug\":\"jit-access-integrations\",\"items\":[{\"label\":\"ConductorOne\",\"numericId\":1208,\"slug\":\"jit-access-conductorone\"},{\"label\":\"Opal\",\"numericId\":1209,\"slug\":\"jit-access-opal\"},{\"label\":\"Sym\",\"numericId\":1206,\"slug\":\"jit-access-sym\"}]}]},{\"label\":\"Manage devices\",\"numericId\":1372,\"slug\":\"manage-devices\",\"items\":[{\"label\":\"Add a device\",\"numericId\":1316,\"slug\":\"device-add\"},{\"label\":\"Device approval\",\"numericId\":1099,\"slug\":\"device-approval\"},{\"label\":\"Rename a device\",\"numericId\":1098,\"slug\":\"machine-names\"},{\"label\":\"Remove a device\",\"numericId\":1260,\"slug\":\"device-remove\"},{\"label\":\"Device posture management\",\"numericId\":1288,\"slug\":\"device-posture\",\"items\":[{\"label\":\"Use Device Identity Collection\",\"numericId\":1326,\"slug\":\"device-identity\"},{\"label\":\"CrowdStrike Falcon\",\"numericId\":1289,\"slug\":\"crowdstrike-zta\"},{\"label\":\"SentinelOne\",\"numericId\":1390,\"slug\":\"sentinelone\"},{\"label\":\"1Password XAM\",\"numericId\":1407,\"slug\":\"kolide\"},{\"label\":\"Jamf Pro\",\"numericId\":1409,\"slug\":\"jamf-pro\"},{\"label\":\"Microsoft Intune\",\"numericId\":1410,\"slug\":\"intune\"},{\"label\":\"Kandji\",\"numericId\":1405,\"slug\":\"kandji\"}]},{\"label\":\"Filter devices\",\"numericId\":1176,\"slug\":\"filter-devices\"},{\"label\":\"Export list of devices\",\"numericId\":1228,\"slug\":\"export-device-list\"},{\"label\":\"Use the web interface\",\"numericId\":1325,\"slug\":\"device-web-interface\"},{\"label\":\"Add a device using a QR code\",\"numericId\":1336,\"slug\":\"device-add-qr-code\"}]},{\"label\":\"Manage users\",\"numericId\":1373,\"slug\":\"manage-users\",\"items\":[{\"label\":\"Invite users\",\"items\":[{\"label\":\"Invite team members\",\"numericId\":1064,\"slug\":\"invite-team-members\"},{\"label\":\"Invite any user\",\"numericId\":1271,\"slug\":\"invite-any-user\"},{\"label\":\"Use passkeys\",\"numericId\":1269,\"slug\":\"passkeys\"}],\"numericId\":1371,\"slug\":\"invite-users\"},{\"label\":\"User approval\",\"numericId\":1239,\"slug\":\"user-approval\"},{\"label\":\"User roles\",\"numericId\":1138,\"slug\":\"user-roles\"},{\"label\":\"Change user roles\",\"numericId\":1171,\"slug\":\"changing-user-roles\"},{\"label\":\"Remove users\",\"numericId\":1145,\"slug\":\"remove-team-members\"},{\"label\":\"Fast user switching\",\"numericId\":1225,\"slug\":\"fast-user-switching\"},{\"label\":\"Export list of users\",\"numericId\":1229,\"slug\":\"export-user-list\"},{\"label\":\"Offboard users\",\"numericId\":1248,\"slug\":\"offboarding-users\"},{\"label\":\"Admin console session timeout\",\"numericId\":1461,\"slug\":\"admin-console-session-timeout\"}]},{\"label\":\"Tailnet lock\",\"numericId\":1226,\"slug\":\"tailnet-lock\"}]},{\"label\":\"Route Traffic\",\"group\":true,\"numericId\":1351,\"slug\":\"route\",\"items\":[{\"label\":\"Set up a subnet router\",\"numericId\":1019,\"slug\":\"subnets\",\"items\":[{\"label\":\"Subnet router BGP advertisement\",\"numericId\":1298,\"slug\":\"subnet-bgp\"},{\"label\":\"4via6 subnet routers\",\"numericId\":1201,\"slug\":\"4via6-subnets\"},{\"label\":\"Site-to-site networking\",\"numericId\":1214,\"slug\":\"site-to-site\"}]},{\"label\":\"Set up an exit node\",\"numericId\":1103,\"slug\":\"exit-nodes\",\"items\":[{\"label\":\"Use a Mullvad exit node\",\"numericId\":1258,\"slug\":\"mullvad-exit-nodes\"},{\"label\":\"Recommended exit nodes\",\"numericId\":1392,\"slug\":\"auto-exit-nodes\"},{\"label\":\"Mandatory exit nodes\",\"numericId\":1413,\"slug\":\"mandatory-exit-nodes\"}]},{\"label\":\"Set up an app connector\",\"numericId\":1281,\"slug\":\"app-connectors\",\"items\":[{\"label\":\"How app connectors work\",\"numericId\":1342,\"slug\":\"how-app-connectors-work\"},{\"label\":\"Best practices for SaaS apps\",\"numericId\":1332,\"slug\":\"apps-best-practices\"},{\"label\":\"Use preset apps\",\"numericId\":1339,\"slug\":\"preset-apps\"}]},{\"label\":\"Use DNS\",\"numericId\":1054,\"slug\":\"dns\",\"items\":[{\"label\":\"Configure Linux DNS\",\"numericId\":1188,\"slug\":\"linux-dns\"},{\"label\":\"Why is resolv.conf being overwritten?\",\"numericId\":1235,\"slug\":\"resolv-conf\"},{\"label\":\"Use NextDNS\",\"numericId\":1218,\"slug\":\"nextdns\"},{\"label\":\"Use Control D\",\"numericId\":1403,\"slug\":\"control-d\"},{\"label\":\"Use Unbound DNS in OPNsense\",\"numericId\":1299,\"slug\":\"opnsense-unbound\"}]},{\"label\":\"Set up MagicDNS\",\"numericId\":1081,\"slug\":\"magicdns\"},{\"label\":\"Set up high availability\",\"numericId\":1115,\"slug\":\"high-availability\"}]},{\"label\":\"Set Up Servers\",\"group\":true,\"numericId\":1352,\"slug\":\"servers\",\"items\":[{\"label\":\"Set up a server\",\"numericId\":1245,\"slug\":\"set-up-servers\"},{\"label\":\"Use tags\",\"numericId\":1068,\"slug\":\"tags\"},{\"label\":\"Install Tailscale with cloud-init\",\"numericId\":1293,\"slug\":\"cloud-init\"},{\"label\":\"Use auth keys\",\"numericId\":1085,\"slug\":\"auth-keys\",\"items\":[{\"label\":\"Automate key expiry\",\"numericId\":1028,\"slug\":\"key-expiry\"}]},{\"label\":\"Use Tailscale SSH\",\"numericId\":1193,\"slug\":\"tailscale-ssh\",\"items\":[{\"label\":\"Use Tailscale SSH Console\",\"numericId\":1216,\"slug\":\"tailscale-ssh-console\"}]},{\"label\":\"Set up HTTPS certificates\",\"numericId\":1153,\"slug\":\"enabling-https\"},{\"label\":\"Run an ephemeral node\",\"numericId\":1111,\"slug\":\"ephemeral-nodes\"},{\"label\":\"Run unattended\",\"numericId\":1088,\"slug\":\"run-unattended\"}]},{\"label\":\"Access \u0026 Share Services\",\"group\":true,\"numericId\":1354,\"slug\":\"share\",\"items\":[{\"label\":\"View services\",\"numericId\":1100,\"slug\":\"services\"},{\"label\":\"Share nodes\",\"numericId\":1084,\"slug\":\"sharing\"},{\"label\":\"Use Taildrop\",\"numericId\":1106,\"slug\":\"taildrop\",\"items\":[{\"label\":\"Taildrop with NAS\",\"numericId\":1418,\"slug\":\"taildrop-nas\"}]}]},{\"label\":\"Share a web server\",\"group\":true,\"numericId\":1353,\"slug\":\"share-web-server\",\"items\":[{\"label\":\"Tailscale Funnel\",\"numericId\":1223,\"slug\":\"funnel\",\"items\":[{\"label\":\"Examples\",\"numericId\":1247,\"slug\":\"funnel-examples\"},{\"label\":\"Funnel vs. sharing\",\"numericId\":1464,\"slug\":\"funnel-vs-sharing\"}]},{\"label\":\"Tailscale Serve\",\"numericId\":1312,\"slug\":\"serve\",\"items\":[{\"label\":\"Examples\",\"numericId\":1313,\"slug\":\"serve-examples\"}]}]},{\"label\":\"Solutions\",\"group\":true,\"numericId\":1355,\"slug\":\"solutions\",\"items\":[{\"label\":\"Code from your iPad\",\"numericId\":1166,\"slug\":\"vscode-ipad\"},{\"label\":\"Lock down a server\",\"numericId\":1077,\"slug\":\"secure-server-ubuntu\"},{\"label\":\"Access a PiKVM\",\"numericId\":1292,\"slug\":\"pikvm\"},{\"label\":\"Run a Pi-hole\",\"numericId\":1114,\"slug\":\"pi-hole\"},{\"label\":\"Secure external services\",\"numericId\":1059,\"slug\":\"ip-blocklist-relays\"},{\"label\":\"Just-in-time access\",\"numericId\":1443,\"slug\":\"just-in-time-access\",\"items\":[{\"label\":\"Device posture for JIT access\",\"numericId\":1383,\"slug\":\"device-posture-for-jit\"},{\"label\":\"3rd party JIT access integrations\",\"numericId\":1374,\"slug\":\"jit-access-integrations\",\"items\":[{\"label\":\"ConductorOne\",\"numericId\":1208,\"slug\":\"jit-access-conductorone\"},{\"label\":\"Opal\",\"numericId\":1209,\"slug\":\"jit-access-opal\"},{\"label\":\"Sym\",\"numericId\":1206,\"slug\":\"jit-access-sym\"}]}]},{\"label\":\"Automation\",\"numericId\":1430,\"slug\":\"automations\",\"items\":[{\"label\":\"Infrastructure as code\",\"numericId\":1370,\"slug\":\"infrastructure-as-code\",\"items\":[{\"label\":\"Terraform\",\"numericId\":1210,\"slug\":\"terraform-provider\"},{\"label\":\"Pulumi\",\"numericId\":1211,\"slug\":\"pulumi-provider\"}]},{\"label\":\"macOS and iOS shortcuts\",\"numericId\":1233,\"slug\":\"mac-ios-shortcuts\"}]}]}],\"nodes\":[{\"label\":\"Manage Access\",\"group\":true,\"numericId\":1350,\"slug\":\"manage\",\"items\":\"$46\",\"nodes\":[{\"label\":\"Manage access control\",\"numericId\":1393,\"slug\":\"access-control\",\"items\":\"$48\",\"nodes\":[{\"label\":\"Manage ACLs\",\"numericId\":1018,\"slug\":\"acls\",\"items\":\"$4a\",\"nodes\":[{\"label\":\"ACL syntax\",\"numericId\":1337,\"slug\":\"acl-syntax\",\"nodes\":\"$undefined\"}]},{\"label\":\"Manage grants\",\"numericId\":1324,\"slug\":\"acl-grants\",\"nodes\":\"$undefined\"},{\"label\":\"Edit the tailnet policy file\",\"numericId\":1338,\"slug\":\"acl-edit\",\"nodes\":\"$undefined\"},{\"label\":\"Manage ACLs with GitOps\",\"numericId\":1204,\"slug\":\"gitopcs-acls\",\"items\":\"$4f\",\"nodes\":[{\"label\":\"Manage ACLs with Bitbucket\",\"numericId\":1302,\"slug\":\"gitops-acls-bitbucket\",\"nodes\":\"$undefined\"},{\"label\":\"Manage ACLs with GitHub\",\"numericId\":1306,\"slug\":\"gitops-acls-github\",\"nodes\":\"$undefined\"},{\"label\":\"Manage ACLs with GitLab\",\"numericId\":1254,\"slug\":\"gitops-acls-gitlab\",\"nodes\":\"$undefined\"}]}]},{\"label\":\"Manage Just-in-time access\",\"numericId\":1443,\"slug\":\"just-in-time-access\",\"items\":\"$54\",\"nodes\":[{\"label\":\"Device posture for JIT access\",\"numericId\":1383,\"slug\":\"device-posture-for-jit\",\"nodes\":\"$undefined\"},{\"label\":\"3rd party JIT access integrations\",\"numericId\":1374,\"slug\":\"jit-access-integrations\",\"items\":\"$57\",\"nodes\":[{\"label\":\"ConductorOne\",\"numericId\":1208,\"slug\":\"jit-access-conductorone\",\"nodes\":\"$undefined\"},{\"label\":\"Opal\",\"numericId\":1209,\"slug\":\"jit-access-opal\",\"nodes\":\"$undefined\"},{\"label\":\"Sym\",\"numericId\":1206,\"slug\":\"jit-access-sym\",\"nodes\":\"$undefined\"}]}]},{\"label\":\"Manage devices\",\"numericId\":1372,\"slug\":\"manage-devices\",\"items\":\"$5c\",\"nodes\":[{\"label\":\"Add a device\",\"numericId\":1316,\"slug\":\"device-add\",\"nodes\":\"$undefined\"},{\"label\":\"Device approval\",\"numericId\":1099,\"slug\":\"device-approval\",\"nodes\":\"$undefined\"},{\"label\":\"Rename a device\",\"numericId\":1098,\"slug\":\"machine-names\",\"nodes\":\"$undefined\"},{\"label\":\"Remove a device\",\"numericId\":1260,\"slug\":\"device-remove\",\"nodes\":\"$undefined\"},{\"label\":\"Device posture management\",\"numericId\":1288,\"slug\":\"device-posture\",\"items\":\"$62\",\"nodes\":[{\"label\":\"Use Device Identity Collection\",\"numericId\":1326,\"slug\":\"device-identity\",\"nodes\":\"$undefined\"},{\"label\":\"CrowdStrike Falcon\",\"numericId\":1289,\"slug\":\"crowdstrike-zta\",\"nodes\":\"$undefined\"},{\"label\":\"SentinelOne\",\"numericId\":1390,\"slug\":\"sentinelone\",\"nodes\":\"$undefined\"},{\"label\":\"1Password XAM\",\"numericId\":1407,\"slug\":\"kolide\",\"nodes\":\"$undefined\"},{\"label\":\"Jamf Pro\",\"numericId\":1409,\"slug\":\"jamf-pro\",\"nodes\":\"$undefined\"},{\"label\":\"Microsoft Intune\",\"numericId\":1410,\"slug\":\"intune\",\"nodes\":\"$undefined\"},{\"label\":\"Kandji\",\"numericId\":1405,\"slug\":\"kandji\",\"nodes\":\"$undefined\"}]},{\"label\":\"Filter devices\",\"numericId\":1176,\"slug\":\"filter-devices\",\"nodes\":\"$undefined\"},{\"label\":\"Export list of devices\",\"numericId\":1228,\"slug\":\"export-device-list\",\"nodes\":\"$undefined\"},{\"label\":\"Use the web interface\",\"numericId\":1325,\"slug\":\"device-web-interface\",\"nodes\":\"$undefined\"},{\"label\":\"Add a device using a QR code\",\"numericId\":1336,\"slug\":\"device-add-qr-code\",\"nodes\":\"$undefined\"}]},{\"label\":\"Manage users\",\"numericId\":1373,\"slug\":\"manage-users\",\"items\":\"$6f\",\"nodes\":[{\"label\":\"Invite users\",\"items\":\"$71\",\"numericId\":1371,\"slug\":\"invite-users\",\"nodes\":[{\"label\":\"Invite team members\",\"numericId\":1064,\"slug\":\"invite-team-members\",\"nodes\":\"$undefined\"},{\"label\":\"Invite any user\",\"numericId\":1271,\"slug\":\"invite-any-user\",\"nodes\":\"$undefined\"},{\"label\":\"Use passkeys\",\"numericId\":1269,\"slug\":\"passkeys\",\"nodes\":\"$undefined\"}]},{\"label\":\"User approval\",\"numericId\":1239,\"slug\":\"user-approval\",\"nodes\":\"$undefined\"},{\"label\":\"User roles\",\"numericId\":1138,\"slug\":\"user-roles\",\"nodes\":\"$undefined\"},{\"label\":\"Change user roles\",\"numericId\":1171,\"slug\":\"changing-user-roles\",\"nodes\":\"$undefined\"},{\"label\":\"Remove users\",\"numericId\":1145,\"slug\":\"remove-team-members\",\"nodes\":\"$undefined\"},{\"label\":\"Fast user switching\",\"numericId\":1225,\"slug\":\"fast-user-switching\",\"nodes\":\"$undefined\"},{\"label\":\"Export list of users\",\"numericId\":1229,\"slug\":\"export-user-list\",\"nodes\":\"$undefined\"},{\"label\":\"Offboard users\",\"numericId\":1248,\"slug\":\"offboarding-users\",\"nodes\":\"$undefined\"},{\"label\":\"Admin console session timeout\",\"numericId\":1461,\"slug\":\"admin-console-session-timeout\",\"nodes\":\"$undefined\"}]},{\"label\":\"Tailnet lock\",\"numericId\":1226,\"slug\":\"tailnet-lock\",\"nodes\":\"$undefined\"}]},{\"label\":\"Route Traffic\",\"group\":true,\"numericId\":1351,\"slug\":\"route\",\"items\":\"$7e\",\"nodes\":[{\"label\":\"Set up a subnet router\",\"numericId\":1019,\"slug\":\"subnets\",\"items\":\"$80\",\"nodes\":[{\"label\":\"Subnet router BGP advertisement\",\"numericId\":1298,\"slug\":\"subnet-bgp\",\"nodes\":\"$undefined\"},{\"label\":\"4via6 subnet routers\",\"numericId\":1201,\"slug\":\"4via6-subnets\",\"nodes\":\"$undefined\"},{\"label\":\"Site-to-site networking\",\"numericId\":1214,\"slug\":\"site-to-site\",\"nodes\":\"$undefined\"}]},{\"label\":\"Set up an exit node\",\"numericId\":1103,\"slug\":\"exit-nodes\",\"items\":\"$85\",\"nodes\":[{\"label\":\"Use a Mullvad exit node\",\"numericId\":1258,\"slug\":\"mullvad-exit-nodes\",\"nodes\":\"$undefined\"},{\"label\":\"Recommended exit nodes\",\"numericId\":1392,\"slug\":\"auto-exit-nodes\",\"nodes\":\"$undefined\"},{\"label\":\"Mandatory exit nodes\",\"numericId\":1413,\"slug\":\"mandatory-exit-nodes\",\"nodes\":\"$undefined\"}]},{\"label\":\"Set up an app connector\",\"numericId\":1281,\"slug\":\"app-connectors\",\"items\":\"$8a\",\"nodes\":[{\"label\":\"How app connectors work\",\"numericId\":1342,\"slug\":\"how-app-connectors-work\",\"nodes\":\"$undefined\"},{\"label\":\"Best practices for SaaS apps\",\"numericId\":1332,\"slug\":\"apps-best-practices\",\"nodes\":\"$undefined\"},{\"label\":\"Use preset apps\",\"numericId\":1339,\"slug\":\"preset-apps\",\"nodes\":\"$undefined\"}]},{\"label\":\"Use DNS\",\"numericId\":1054,\"slug\":\"dns\",\"items\":\"$8f\",\"nodes\":[{\"label\":\"Configure Linux DNS\",\"numericId\":1188,\"slug\":\"linux-dns\",\"nodes\":\"$undefined\"},{\"label\":\"Why is resolv.conf being overwritten?\",\"numericId\":1235,\"slug\":\"resolv-conf\",\"nodes\":\"$undefined\"},{\"label\":\"Use NextDNS\",\"numericId\":1218,\"slug\":\"nextdns\",\"nodes\":\"$undefined\"},{\"label\":\"Use Control D\",\"numericId\":1403,\"slug\":\"control-d\",\"nodes\":\"$undefined\"},{\"label\":\"Use Unbound DNS in OPNsense\",\"numericId\":1299,\"slug\":\"opnsense-unbound\",\"nodes\":\"$undefined\"}]},{\"label\":\"Set up MagicDNS\",\"numericId\":1081,\"slug\":\"magicdns\",\"nodes\":\"$undefined\"},{\"label\":\"Set up high availability\",\"numericId\":1115,\"slug\":\"high-availability\",\"nodes\":\"$undefined\"}]},{\"label\":\"Set Up Servers\",\"group\":true,\"numericId\":1352,\"slug\":\"servers\",\"items\":\"$97\",\"nodes\":[{\"label\":\"Set up a server\",\"numericId\":1245,\"slug\":\"set-up-servers\",\"nodes\":\"$undefined\"},{\"label\":\"Use tags\",\"numericId\":1068,\"slug\":\"tags\",\"nodes\":\"$undefined\"},{\"label\":\"Install Tailscale with cloud-init\",\"numericId\":1293,\"slug\":\"cloud-init\",\"nodes\":\"$undefined\"},{\"label\":\"Use auth keys\",\"numericId\":1085,\"slug\":\"auth-keys\",\"items\":\"$9c\",\"nodes\":[{\"label\":\"Automate key expiry\",\"numericId\":1028,\"slug\":\"key-expiry\",\"nodes\":\"$undefined\"}]},{\"label\":\"Use Tailscale SSH\",\"numericId\":1193,\"slug\":\"tailscale-ssh\",\"items\":\"$9f\",\"nodes\":[{\"label\":\"Use Tailscale SSH Console\",\"numericId\":1216,\"slug\":\"tailscale-ssh-console\",\"nodes\":\"$undefined\"}]},{\"label\":\"Set up HTTPS certificates\",\"numericId\":1153,\"slug\":\"enabling-https\",\"nodes\":\"$undefined\"},{\"label\":\"Run an ephemeral node\",\"numericId\":1111,\"slug\":\"ephemeral-nodes\",\"nodes\":\"$undefined\"},{\"label\":\"Run unattended\",\"numericId\":1088,\"slug\":\"run-unattended\",\"nodes\":\"$undefined\"}]},{\"label\":\"Access \u0026 Share Services\",\"group\":true,\"numericId\":1354,\"slug\":\"share\",\"items\":\"$a4\",\"nodes\":[{\"label\":\"View services\",\"numericId\":1100,\"slug\":\"services\",\"nodes\":\"$undefined\"},{\"label\":\"Share nodes\",\"numericId\":1084,\"slug\":\"sharing\",\"nodes\":\"$undefined\"},{\"label\":\"Use Taildrop\",\"numericId\":1106,\"slug\":\"taildrop\",\"items\":\"$a8\",\"nodes\":[{\"label\":\"Taildrop with NAS\",\"numericId\":1418,\"slug\":\"taildrop-nas\",\"nodes\":\"$undefined\"}]}]},{\"label\":\"Share a web server\",\"group\":true,\"numericId\":1353,\"slug\":\"share-web-server\",\"items\":\"$aa\",\"nodes\":[{\"label\":\"Tailscale Funnel\",\"numericId\":1223,\"slug\":\"funnel\",\"items\":\"$ac\",\"nodes\":[{\"label\":\"Examples\",\"numericId\":1247,\"slug\":\"funnel-examples\",\"nodes\":\"$undefined\"},{\"label\":\"Funnel vs. sharing\",\"numericId\":1464,\"slug\":\"funnel-vs-sharing\",\"nodes\":\"$undefined\"}]},{\"label\":\"Tailscale Serve\",\"numericId\":1312,\"slug\":\"serve\",\"items\":\"$b0\",\"nodes\":[{\"label\":\"Examples\",\"numericId\":1313,\"slug\":\"serve-examples\",\"nodes\":\"$undefined\"}]}]},{\"label\":\"Solutions\",\"group\":true,\"numericId\":1355,\"slug\":\"solutions\",\"items\":\"$b2\",\"nodes\":[{\"label\":\"Code from your iPad\",\"numericId\":1166,\"slug\":\"vscode-ipad\",\"nodes\":\"$undefined\"},{\"label\":\"Lock down a server\",\"numericId\":1077,\"slug\":\"secure-server-ubuntu\",\"nodes\":\"$undefined\"},{\"label\":\"Access a PiKVM\",\"numericId\":1292,\"slug\":\"pikvm\",\"nodes\":\"$undefined\"},{\"label\":\"Run a Pi-hole\",\"numericId\":1114,\"slug\":\"pi-hole\",\"nodes\":\"$undefined\"},{\"label\":\"Secure external services\",\"numericId\":1059,\"slug\":\"ip-blocklist-relays\",\"nodes\":\"$undefined\"},{\"label\":\"Just-in-time access\",\"numericId\":1443,\"slug\":\"just-in-time-access\",\"items\":\"$b9\",\"nodes\":[{\"label\":\"Device posture for JIT access\",\"numericId\":1383,\"slug\":\"device-posture-for-jit\",\"nodes\":\"$undefined\"},{\"label\":\"3rd party JIT access integrations\",\"numericId\":1374,\"slug\":\"jit-access-integrations\",\"items\":\"$bc\",\"nodes\":[{\"label\":\"ConductorOne\",\"numericId\":1208,\"slug\":\"jit-access-conductorone\",\"nodes\":\"$undefined\"},{\"label\":\"Opal\",\"numericId\":1209,\"slug\":\"jit-access-opal\",\"nodes\":\"$undefined\"},{\"label\":\"Sym\",\"numericId\":1206,\"slug\":\"jit-access-sym\",\"nodes\":\"$undefined\"}]}]},{\"label\":\"Automation\",\"numericId\":1430,\"slug\":\"automations\",\"items\":\"$c1\",\"nodes\":[{\"label\":\"Infrastructure as code\",\"numericId\":1370,\"slug\":\"infrastructure-as-code\",\"items\":\"$c3\",\"nodes\":[{\"label\":\"Terraform\",\"numericId\":1210,\"slug\":\"terraform-provider\",\"nodes\":\"$undefined\"},{\"label\":\"Pulumi\",\"numericId\":1211,\"slug\":\"pulumi-provider\",\"nodes\":\"$undefined\"}]},{\"label\":\"macOS and iOS shortcuts\",\"numericId\":1233,\"slug\":\"mac-ios-shortcuts\",\"nodes\":\"$undefined\"}]}]}]},{\"label\":\"Integrations\",\"numericId\":1356,\"items\":[{\"label\":\"Cloud servers\",\"numericId\":\"integrations\",\"slug\":\"cloud-server\",\"items\":[{\"label\":\"AWS Lightsail\",\"numericId\":1128,\"slug\":\"aws-lightsail\"},{\"label\":\"AWS VPC\",\"numericId\":1021,\"slug\":\"install-aws\"},{\"label\":\"Azure App Service\",\"numericId\":1126,\"slug\":\"azure-app-service\"},{\"label\":\"Azure Linux VMs\",\"numericId\":1142,\"slug\":\"cloud-azure-linux\"},{\"label\":\"Azure Windows VMs\",\"numericId\":1143,\"slug\":\"cloud-azure-windows\"},{\"label\":\"Google Compute Engine VMs\",\"numericId\":1147,\"slug\":\"cloud-gce\"},{\"label\":\"Hetzner VMs\",\"numericId\":1150,\"slug\":\"cloud-hetzner\"},{\"label\":\"Oracle Cloud VMs\",\"numericId\":1149,\"slug\":\"cloud-oracle\"}]},{\"label\":\"Containers and virtualization\",\"numericId\":1358,\"slug\":\"containers-and-virtualization\",\"items\":[{\"label\":\"Docker\",\"numericId\":1282,\"slug\":\"docker\"},{\"label\":\"Kubernetes\",\"items\":[{\"label\":\"Kubernetes operator\",\"numericId\":1236,\"slug\":\"kubernetes-operator\",\"items\":[{\"label\":\"API server proxy\",\"numericId\":1437,\"slug\":\"kubernetes-operator-api-server-proxy\"},{\"label\":\"Egress\",\"numericId\":1438,\"slug\":\"kubernetes-operator-cluster-egress\"},{\"label\":\"Ingress\",\"numericId\":1439,\"slug\":\"kubernetes-operator-cluster-ingress\"},{\"label\":\"Cross cluster\",\"numericId\":1442,\"slug\":\"kubernetes-operator-cross-cluster\"},{\"label\":\"Cloud services\",\"numericId\":1440,\"slug\":\"kubernetes-operator-cloud-services\"},{\"label\":\"Subnet routers and exit nodes\",\"numericId\":1441,\"slug\":\"kubernetes-operator-connector\"},{\"label\":\"App connector\",\"numericId\":1517,\"slug\":\"kubernetes-operator-app-connector\"},{\"label\":\"Recorder nodes\",\"numericId\":1484,\"slug\":\"kubernetes-operator-deploying-tsrecorder\"},{\"label\":\"Operator resource customization\",\"numericId\":1445,\"slug\":\"kubernetes-operator-customization\"},{\"label\":\"Troubleshooting\",\"numericId\":1446,\"slug\":\"kubernetes-operator-troubleshooting\"}]}],\"numericId\":1185,\"slug\":\"kubernetes\"},{\"label\":\"LXC containers\",\"numericId\":1130,\"slug\":\"lxc-unprivileged\"},{\"label\":\"Proxmox\",\"numericId\":1133,\"slug\":\"proxmox\"}]},{\"label\":\"Serverless apps\",\"numericId\":1364,\"slug\":\"serverless\",\"items\":[{\"label\":\"AWS App Runner\",\"numericId\":1127,\"slug\":\"aws-app-runner\"},{\"label\":\"AWS Lambda\",\"numericId\":1113,\"slug\":\"aws-lambda\"},{\"label\":\"Fly.io\",\"numericId\":1132,\"slug\":\"flydotio\"},{\"label\":\"Google Cloud Run\",\"numericId\":1108,\"slug\":\"cloudrun\"},{\"label\":\"Heroku\",\"numericId\":1107,\"slug\":\"heroku\"}]},{\"label\":\"Databases\",\"numericId\":1359,\"slug\":\"database\",\"items\":[{\"label\":\"AWS RDS\",\"numericId\":1141,\"slug\":\"aws-rds\"},{\"label\":\"Crunchy Bridge\",\"numericId\":1231,\"slug\":\"crunchy-bridge\"}]},{\"label\":\"Remote environments\",\"items\":[{\"label\":\"code-server\",\"numericId\":1164,\"slug\":\"codeserver\"},{\"label\":\"Coder\",\"numericId\":1163,\"slug\":\"coder\"},{\"label\":\"CodeSandbox\",\"numericId\":1221,\"slug\":\"codesandbox\"},{\"label\":\"GitHub Codespaces\",\"numericId\":1160,\"slug\":\"github-codespaces\"},{\"label\":\"Gitpod\",\"numericId\":1161,\"slug\":\"gitpod\"},{\"label\":\"OpenVSCode\",\"numericId\":1162,\"slug\":\"openvscode\"}],\"numericId\":1363,\"slug\":\"remote-code\"},{\"label\":\"Developer tools\",\"numericId\":1360,\"slug\":\"developer-tools\",\"items\":[{\"label\":\"Visual Studio Code Extension\",\"numericId\":1265,\"slug\":\"vscode-extension\"},{\"label\":\"Tailscale GitHub Action\",\"numericId\":1276,\"slug\":\"tailscale-github-action\"},{\"label\":\"Tailscale with GitLab CI/CD\",\"numericId\":1287,\"slug\":\"tailscale-gitlab-runner\"},{\"label\":\"Docker Desktop\",\"numericId\":1184,\"slug\":\"docker-desktop\"}]},{\"label\":\"Firewalls\",\"numericId\":1361,\"slug\":\"firewall\",\"items\":[{\"label\":\"Overview\",\"numericId\":1181,\"slug\":\"firewalls\"},{\"label\":\"OPNsense\",\"numericId\":1097,\"slug\":\"install-opnsense\"},{\"label\":\"Palo Alto Networks\",\"numericId\":1333,\"slug\":\"firewall-palo-alto-networks\"},{\"label\":\"pfSense\",\"numericId\":1146,\"slug\":\"pfsense\"},{\"label\":\"Firewall mode\",\"numericId\":1294,\"slug\":\"firewall-mode\"}]},{\"label\":\"Web servers\",\"numericId\":1365,\"slug\":\"webserver\",\"items\":[{\"label\":\"Caddy Server\",\"numericId\":1190,\"slug\":\"caddy-certificates\"},{\"label\":\"Traefik Proxy\",\"numericId\":1234,\"slug\":\"traefik-certificates\"}]},{\"label\":\"NAS\",\"numericId\":1307,\"slug\":\"nas\",\"items\":[{\"label\":\"Synology\",\"numericId\":1131,\"slug\":\"synology\"},{\"label\":\"QNAP\",\"numericId\":1273,\"slug\":\"qnap\"},{\"label\":\"TrueNAS SCALE\",\"numericId\":1483,\"slug\":\"truenas-scale\"},{\"label\":\"Unraid\",\"numericId\":1478,\"slug\":\"unraid\"}]}],\"slug\":\"integrations\",\"nodes\":[{\"label\":\"Cloud servers\",\"numericId\":\"integrations\",\"slug\":\"cloud-server\",\"items\":\"$c7\",\"nodes\":[{\"label\":\"AWS Lightsail\",\"numericId\":1128,\"slug\":\"aws-lightsail\",\"nodes\":\"$undefined\"},{\"label\":\"AWS VPC\",\"numericId\":1021,\"slug\":\"install-aws\",\"nodes\":\"$undefined\"},{\"label\":\"Azure App Service\",\"numericId\":1126,\"slug\":\"azure-app-service\",\"nodes\":\"$undefined\"},{\"label\":\"Azure Linux VMs\",\"numericId\":1142,\"slug\":\"cloud-azure-linux\",\"nodes\":\"$undefined\"},{\"label\":\"Azure Windows VMs\",\"numericId\":1143,\"slug\":\"cloud-azure-windows\",\"nodes\":\"$undefined\"},{\"label\":\"Google Compute Engine VMs\",\"numericId\":1147,\"slug\":\"cloud-gce\",\"nodes\":\"$undefined\"},{\"label\":\"Hetzner VMs\",\"numericId\":1150,\"slug\":\"cloud-hetzner\",\"nodes\":\"$undefined\"},{\"label\":\"Oracle Cloud VMs\",\"numericId\":1149,\"slug\":\"cloud-oracle\",\"nodes\":\"$undefined\"}]},{\"label\":\"Containers and virtualization\",\"numericId\":1358,\"slug\":\"containers-and-virtualization\",\"items\":\"$d0\",\"nodes\":[{\"label\":\"Docker\",\"numericId\":1282,\"slug\":\"docker\",\"nodes\":\"$undefined\"},{\"label\":\"Kubernetes\",\"items\":\"$d3\",\"numericId\":1185,\"slug\":\"kubernetes\",\"nodes\":[{\"label\":\"Kubernetes operator\",\"numericId\":1236,\"slug\":\"kubernetes-operator\",\"items\":\"$d5\",\"nodes\":[{\"label\":\"API server proxy\",\"numericId\":1437,\"slug\":\"kubernetes-operator-api-server-proxy\",\"nodes\":\"$undefined\"},{\"label\":\"Egress\",\"numericId\":1438,\"slug\":\"kubernetes-operator-cluster-egress\",\"nodes\":\"$undefined\"},{\"label\":\"Ingress\",\"numericId\":1439,\"slug\":\"kubernetes-operator-cluster-ingress\",\"nodes\":\"$undefined\"},{\"label\":\"Cross cluster\",\"numericId\":1442,\"slug\":\"kubernetes-operator-cross-cluster\",\"nodes\":\"$undefined\"},{\"label\":\"Cloud services\",\"numericId\":1440,\"slug\":\"kubernetes-operator-cloud-services\",\"nodes\":\"$undefined\"},{\"label\":\"Subnet routers and exit nodes\",\"numericId\":1441,\"slug\":\"kubernetes-operator-connector\",\"nodes\":\"$undefined\"},{\"label\":\"App connector\",\"numericId\":1517,\"slug\":\"kubernetes-operator-app-connector\",\"nodes\":\"$undefined\"},{\"label\":\"Recorder nodes\",\"numericId\":1484,\"slug\":\"kubernetes-operator-deploying-tsrecorder\",\"nodes\":\"$undefined\"},{\"label\":\"Operator resource customization\",\"numericId\":1445,\"slug\":\"kubernetes-operator-customization\",\"nodes\":\"$undefined\"},{\"label\":\"Troubleshooting\",\"numericId\":1446,\"slug\":\"kubernetes-operator-troubleshooting\",\"nodes\":\"$undefined\"}]}]},{\"label\":\"LXC containers\",\"numericId\":1130,\"slug\":\"lxc-unprivileged\",\"nodes\":\"$undefined\"},{\"label\":\"Proxmox\",\"numericId\":1133,\"slug\":\"proxmox\",\"nodes\":\"$undefined\"}]},{\"label\":\"Serverless apps\",\"numericId\":1364,\"slug\":\"serverless\",\"items\":\"$e2\",\"nodes\":[{\"label\":\"AWS App Runner\",\"numericId\":1127,\"slug\":\"aws-app-runner\",\"nodes\":\"$undefined\"},{\"label\":\"AWS Lambda\",\"numericId\":1113,\"slug\":\"aws-lambda\",\"nodes\":\"$undefined\"},{\"label\":\"Fly.io\",\"numericId\":1132,\"slug\":\"flydotio\",\"nodes\":\"$undefined\"},{\"label\":\"Google Cloud Run\",\"numericId\":1108,\"slug\":\"cloudrun\",\"nodes\":\"$undefined\"},{\"label\":\"Heroku\",\"numericId\":1107,\"slug\":\"heroku\",\"nodes\":\"$undefined\"}]},{\"label\":\"Databases\",\"numericId\":1359,\"slug\":\"database\",\"items\":\"$e8\",\"nodes\":[{\"label\":\"AWS RDS\",\"numericId\":1141,\"slug\":\"aws-rds\",\"nodes\":\"$undefined\"},{\"label\":\"Crunchy Bridge\",\"numericId\":1231,\"slug\":\"crunchy-bridge\",\"nodes\":\"$undefined\"}]},{\"label\":\"Remote environments\",\"items\":\"$eb\",\"numericId\":1363,\"slug\":\"remote-code\",\"nodes\":[{\"label\":\"code-server\",\"numericId\":1164,\"slug\":\"codeserver\",\"nodes\":\"$undefined\"},{\"label\":\"Coder\",\"numericId\":1163,\"slug\":\"coder\",\"nodes\":\"$undefined\"},{\"label\":\"CodeSandbox\",\"numericId\":1221,\"slug\":\"codesandbox\",\"nodes\":\"$undefined\"},{\"label\":\"GitHub Codespaces\",\"numericId\":1160,\"slug\":\"github-codespaces\",\"nodes\":\"$undefined\"},{\"label\":\"Gitpod\",\"numericId\":1161,\"slug\":\"gitpod\",\"nodes\":\"$undefined\"},{\"label\":\"OpenVSCode\",\"numericId\":1162,\"slug\":\"openvscode\",\"nodes\":\"$undefined\"}]},{\"label\":\"Developer tools\",\"numericId\":1360,\"slug\":\"developer-tools\",\"items\":\"$f2\",\"nodes\":[{\"label\":\"Visual Studio Code Extension\",\"numericId\":1265,\"slug\":\"vscode-extension\",\"nodes\":\"$undefined\"},{\"label\":\"Tailscale GitHub Action\",\"numericId\":1276,\"slug\":\"tailscale-github-action\",\"nodes\":\"$undefined\"},{\"label\":\"Tailscale with GitLab CI/CD\",\"numericId\":1287,\"slug\":\"tailscale-gitlab-runner\",\"nodes\":\"$undefined\"},{\"label\":\"Docker Desktop\",\"numericId\":1184,\"slug\":\"docker-desktop\",\"nodes\":\"$undefined\"}]},{\"label\":\"Firewalls\",\"numericId\":1361,\"slug\":\"firewall\",\"items\":\"$f7\",\"nodes\":[{\"label\":\"Overview\",\"numericId\":1181,\"slug\":\"firewalls\",\"nodes\":\"$undefined\"},{\"label\":\"OPNsense\",\"numericId\":1097,\"slug\":\"install-opnsense\",\"nodes\":\"$undefined\"},{\"label\":\"Palo Alto Networks\",\"numericId\":1333,\"slug\":\"firewall-palo-alto-networks\",\"nodes\":\"$undefined\"},{\"label\":\"pfSense\",\"numericId\":1146,\"slug\":\"pfsense\",\"nodes\":\"$undefined\"},{\"label\":\"Firewall mode\",\"numericId\":1294,\"slug\":\"firewall-mode\",\"nodes\":\"$undefined\"}]},{\"label\":\"Web servers\",\"numericId\":1365,\"slug\":\"webserver\",\"items\":\"$fd\",\"nodes\":[{\"label\":\"Caddy Server\",\"numericId\":1190,\"slug\":\"caddy-certificates\",\"nodes\":\"$undefined\"},{\"label\":\"Traefik Proxy\",\"numericId\":1234,\"slug\":\"traefik-certificates\",\"nodes\":\"$undefined\"}]},{\"label\":\"NAS\",\"numericId\":1307,\"slug\":\"nas\",\"items\":\"$100\",\"nodes\":[{\"label\":\"Synology\",\"numericId\":1131,\"slug\":\"synology\",\"nodes\":\"$undefined\"},{\"label\":\"QNAP\",\"numericId\":1273,\"slug\":\"qnap\",\"nodes\":\"$undefined\"},{\"label\":\"TrueNAS SCALE\",\"numericId\":1483,\"slug\":\"truenas-scale\",\"nodes\":\"$undefined\"},{\"label\":\"Unraid\",\"numericId\":1478,\"slug\":\"unraid\",\"nodes\":\"$undefined\"}]}]},{\"label\":\"FAQ\",\"numericId\":1366,\"slug\":\"faq\",\"nodes\":\"$undefined\"},{\"label\":\"Logging, Streaming, and Events\",\"numericId\":1349,\"slug\":\"log-events\",\"items\":[{\"label\":\"Logging overview\",\"numericId\":1011,\"slug\":\"log-mesh-traffic\"},{\"label\":\"Configuration audit logging\",\"numericId\":1203,\"slug\":\"audit-logging\"},{\"label\":\"Network flow logs\",\"numericId\":1219,\"slug\":\"network-flow-logs\"},{\"label\":\"Log streaming\",\"numericId\":1255,\"slug\":\"log-streaming\"},{\"label\":\"SSH session recording\",\"numericId\":1246,\"slug\":\"tailscale-ssh-session-recording\",\"items\":[{\"label\":\"Send recordings to S3\",\"numericId\":1263,\"slug\":\"session-recording-s3\"},{\"label\":\"Deploy multiple recorder nodes\",\"numericId\":1262,\"slug\":\"multiple-recorder-nodes\"}]},{\"label\":\"Client metrics\",\"numericId\":1482,\"slug\":\"client-metrics\"},{\"label\":\"Webhooks\",\"numericId\":1213,\"slug\":\"webhooks\"}],\"nodes\":[{\"label\":\"Logging overview\",\"numericId\":1011,\"slug\":\"log-mesh-traffic\",\"nodes\":\"$undefined\"},{\"label\":\"Configuration audit logging\",\"numericId\":1203,\"slug\":\"audit-logging\",\"nodes\":\"$undefined\"},{\"label\":\"Network flow logs\",\"numericId\":1219,\"slug\":\"network-flow-logs\",\"nodes\":\"$undefined\"},{\"label\":\"Log streaming\",\"numericId\":1255,\"slug\":\"log-streaming\",\"nodes\":\"$undefined\"},{\"label\":\"SSH session recording\",\"numericId\":1246,\"slug\":\"tailscale-ssh-session-recording\",\"items\":\"$105\",\"nodes\":[{\"label\":\"Send recordings to S3\",\"numericId\":1263,\"slug\":\"session-recording-s3\",\"nodes\":\"$undefined\"},{\"label\":\"Deploy multiple recorder nodes\",\"numericId\":1262,\"slug\":\"multiple-recorder-nodes\",\"nodes\":\"$undefined\"}]},{\"label\":\"Client metrics\",\"numericId\":1482,\"slug\":\"client-metrics\",\"nodes\":\"$undefined\"},{\"label\":\"Webhooks\",\"numericId\":1213,\"slug\":\"webhooks\",\"nodes\":\"$undefined\"}]},{\"label\":\"Manage Your Organization\",\"numericId\":1431,\"slug\":\"manage-account\",\"items\":[{\"label\":\"Contact preferences\",\"numericId\":1224,\"slug\":\"contract-preferences\"},{\"label\":\"Pricing and billing\",\"numericId\":1375,\"slug\":\"pb-lp\",\"items\":[{\"label\":\"Pricing ↗\",\"href\":\"/pricing\"},{\"label\":\"Pricing \u0026 Plans FAQ\",\"numericId\":1251,\"slug\":\"pricing-faq\"},{\"label\":\"Free plans and discounts\",\"numericId\":1154,\"slug\":\"free-plans-discounts\"},{\"label\":\"Modify billing\",\"numericId\":1182,\"slug\":\"billing-information\"},{\"label\":\"Tailscale on Azure Marketplace\",\"numericId\":1220,\"slug\":\"azure-marketplace\"}]},{\"label\":\"Tailnet name\",\"numericId\":1217,\"slug\":\"tailnet-name\"},{\"label\":\"Domain ownership\",\"numericId\":1259,\"slug\":\"domain-ownership\"}],\"nodes\":[{\"label\":\"Contact preferences\",\"numericId\":1224,\"slug\":\"contract-preferences\",\"nodes\":\"$undefined\"},{\"label\":\"Pricing and billing\",\"numericId\":1375,\"slug\":\"pb-lp\",\"items\":\"$108\",\"nodes\":[{\"label\":\"Pricing ↗\",\"href\":\"/pricing\",\"nodes\":\"$undefined\"},{\"label\":\"Pricing \u0026 Plans FAQ\",\"numericId\":1251,\"slug\":\"pricing-faq\",\"nodes\":\"$undefined\"},{\"label\":\"Free plans and discounts\",\"numericId\":1154,\"slug\":\"free-plans-discounts\",\"nodes\":\"$undefined\"},{\"label\":\"Modify billing\",\"numericId\":1182,\"slug\":\"billing-information\",\"nodes\":\"$undefined\"},{\"label\":\"Tailscale on Azure Marketplace\",\"numericId\":1220,\"slug\":\"azure-marketplace\",\"nodes\":\"$undefined\"}]},{\"label\":\"Tailnet name\",\"numericId\":1217,\"slug\":\"tailnet-name\",\"nodes\":\"$undefined\"},{\"label\":\"Domain ownership\",\"numericId\":1259,\"slug\":\"domain-ownership\",\"nodes\":\"$undefined\"}]},{\"label\":\"Reference\",\"numericId\":1367,\"slug\":\"reference\",\"items\":[{\"label\":\"ACL syntax\",\"numericId\":1337,\"slug\":\"acl-syntax\",\"items\":[{\"label\":\"Grants\",\"numericId\":1324,\"slug\":\"acl-grants\"},{\"label\":\"IP sets\",\"numericId\":1387,\"slug\":\"ipsets\"},{\"label\":\"Via in grants\",\"numericId\":1378,\"slug\":\"via\"}]},{\"label\":\"ACL samples\",\"numericId\":1192,\"slug\":\"acl-samples\"},{\"label\":\"CLI\",\"numericId\":1080,\"slug\":\"cli\",\"items\":[{\"label\":\"tailscale funnel\",\"numericId\":1311,\"slug\":\"tailscale-funnel\"},{\"label\":\"tailscale lock\",\"numericId\":1243,\"slug\":\"tailscale-lock\"},{\"label\":\"tailscale serve\",\"numericId\":1242,\"slug\":\"tailscale-serve\"},{\"label\":\"tailscale up\",\"numericId\":1241,\"slug\":\"tailscale-up\"},{\"label\":\"tailscaled\",\"numericId\":1278,\"slug\":\"tailscaled\"}]},{\"label\":\"API\",\"numericId\":1101,\"slug\":\"api\",\"items\":[{\"label\":\"OAuth clients\",\"numericId\":1215,\"slug\":\"oauth-clients\"},{\"label\":\"tsnet for Go programs\",\"numericId\":1244,\"slug\":\"tsnet\",\"items\":[{\"label\":\"Hello tsnet\",\"numericId\":1521,\"slug\":\"hello-tsnet\"},{\"label\":\"tsnet.Server\",\"numericId\":1522,\"slug\":\"tsnet-server\"}]}]},{\"label\":\"Key prefixes\",\"numericId\":1277,\"slug\":\"key-prefixes\"},{\"label\":\"Production best practices\",\"numericId\":1300,\"slug\":\"production-best-practices\",\"items\":[{\"label\":\"Deployment checklist\",\"numericId\":1344,\"slug\":\"deployment-checklist\"},{\"label\":\"Security best practices\",\"items\":[{\"label\":\"Key and secret management\",\"numericId\":1252,\"slug\":\"key-secret-management\"},{\"label\":\"Secret scanning\",\"numericId\":1301,\"slug\":\"secret-scanning\"},{\"label\":\"Admin with passkey\",\"numericId\":1341,\"slug\":\"tailnet-passkey-admin\"}],\"numericId\":1196,\"slug\":\"security-hardening\"},{\"label\":\"Performance best practices\",\"numericId\":1320,\"slug\":\"performance-best-practices\"},{\"label\":\"AWS reference architecture\",\"numericId\":1296,\"slug\":\"aws-reference-architecture\"},{\"label\":\"Azure reference architecture\",\"numericId\":1314,\"slug\":\"azure-reference-architecture\"}]},{\"label\":\"Shared responsibility\",\"numericId\":1212,\"slug\":\"shared-responsibility\"},{\"label\":\"Technical overviews\",\"numericId\":1376,\"slug\":\"tech-overviews\",\"items\":[{\"label\":\"About WireGuard\",\"numericId\":1035,\"slug\":\"wireguard\"},{\"label\":\"Tailscale encryption\",\"numericId\":1504,\"slug\":\"encryption\"},{\"label\":\"Control and data planes\",\"numericId\":1508,\"slug\":\"control-data-planes\"},{\"label\":\"Direct vs relayed connections\",\"numericId\":1257,\"slug\":\"connection-types\"},{\"label\":\"Device connectivity\",\"numericId\":1411,\"slug\":\"device-connectivity\"},{\"label\":\"How Tailscale assigns IP addresses\",\"numericId\":1033,\"slug\":\"ip-and-dns-addresses\"},{\"label\":\"Tailscale and the OSI model\",\"numericId\":1456,\"slug\":\"osi\"},{\"label\":\"Smaller binaries for embedded devices\",\"numericId\":1207,\"slug\":\"small-tailscale\"},{\"label\":\"Kernel vs. netstack subnet routing \u0026 exit nodes\",\"numericId\":1177,\"slug\":\"kernel-vs-userspace-routers\"},{\"label\":\"Userspace networking mode\",\"numericId\":1112,\"slug\":\"userspace-networking\"},{\"label\":\"Node keys\",\"numericId\":1010,\"slug\":\"node-keys\"},{\"label\":\"Protect SSH Servers\",\"numericId\":1009,\"slug\":\"protect-ssh-servers\"},{\"label\":\"Tailnet lock white paper\",\"numericId\":1230,\"slug\":\"tailnet-lock-whitepaper\"},{\"label\":\"DERP servers\",\"numericId\":1232,\"slug\":\"derp-servers\"},{\"label\":\"Zero Trust Networking (ZTN)\",\"numericId\":1123,\"slug\":\"zero-trust\"},{\"label\":\"IPv4 vs. IPv6 FAQ\",\"numericId\":1134,\"slug\":\"ipv6-faq\"}]},{\"label\":\"Terminology and concepts\",\"numericId\":1155,\"slug\":\"terminology-and-concepts\"},{\"label\":\"GitHub ↗\",\"href\":\"https://github.com/tailscale/tailscale\"}],\"nodes\":[{\"label\":\"ACL syntax\",\"numericId\":1337,\"slug\":\"acl-syntax\",\"items\":\"$10e\",\"nodes\":[{\"label\":\"Grants\",\"numericId\":1324,\"slug\":\"acl-grants\",\"nodes\":\"$undefined\"},{\"label\":\"IP sets\",\"numericId\":1387,\"slug\":\"ipsets\",\"nodes\":\"$undefined\"},{\"label\":\"Via in grants\",\"numericId\":1378,\"slug\":\"via\",\"nodes\":\"$undefined\"}]},{\"label\":\"ACL samples\",\"numericId\":1192,\"slug\":\"acl-samples\",\"nodes\":\"$undefined\"},{\"label\":\"CLI\",\"numericId\":1080,\"slug\":\"cli\",\"items\":\"$112\",\"nodes\":[{\"label\":\"tailscale funnel\",\"numericId\":1311,\"slug\":\"tailscale-funnel\",\"nodes\":\"$undefined\"},{\"label\":\"tailscale lock\",\"numericId\":1243,\"slug\":\"tailscale-lock\",\"nodes\":\"$undefined\"},{\"label\":\"tailscale serve\",\"numericId\":1242,\"slug\":\"tailscale-serve\",\"nodes\":\"$undefined\"},{\"label\":\"tailscale up\",\"numericId\":1241,\"slug\":\"tailscale-up\",\"nodes\":\"$undefined\"},{\"label\":\"tailscaled\",\"numericId\":1278,\"slug\":\"tailscaled\",\"nodes\":\"$undefined\"}]},{\"label\":\"API\",\"numericId\":1101,\"slug\":\"api\",\"items\":\"$118\",\"nodes\":[{\"label\":\"OAuth clients\",\"numericId\":1215,\"slug\":\"oauth-clients\",\"nodes\":\"$undefined\"},{\"label\":\"tsnet for Go programs\",\"numericId\":1244,\"slug\":\"tsnet\",\"items\":\"$11b\",\"nodes\":[{\"label\":\"Hello tsnet\",\"numericId\":1521,\"slug\":\"hello-tsnet\",\"nodes\":\"$undefined\"},{\"label\":\"tsnet.Server\",\"numericId\":1522,\"slug\":\"tsnet-server\",\"nodes\":\"$undefined\"}]}]},{\"label\":\"Key prefixes\",\"numericId\":1277,\"slug\":\"key-prefixes\",\"nodes\":\"$undefined\"},{\"label\":\"Production best practices\",\"numericId\":1300,\"slug\":\"production-best-practices\",\"items\":\"$11e\",\"nodes\":[{\"label\":\"Deployment checklist\",\"numericId\":1344,\"slug\":\"deployment-checklist\",\"nodes\":\"$undefined\"},{\"label\":\"Security best practices\",\"items\":\"$121\",\"numericId\":1196,\"slug\":\"security-hardening\",\"nodes\":[{\"label\":\"Key and secret management\",\"numericId\":1252,\"slug\":\"key-secret-management\",\"nodes\":\"$undefined\"},{\"label\":\"Secret scanning\",\"numericId\":1301,\"slug\":\"secret-scanning\",\"nodes\":\"$undefined\"},{\"label\":\"Admin with passkey\",\"numericId\":1341,\"slug\":\"tailnet-passkey-admin\",\"nodes\":\"$undefined\"}]},{\"label\":\"Performance best practices\",\"numericId\":1320,\"slug\":\"performance-best-practices\",\"nodes\":\"$undefined\"},{\"label\":\"AWS reference architecture\",\"numericId\":1296,\"slug\":\"aws-reference-architecture\",\"nodes\":\"$undefined\"},{\"label\":\"Azure reference architecture\",\"numericId\":1314,\"slug\":\"azure-reference-architecture\",\"nodes\":\"$undefined\"}]},{\"label\":\"Shared responsibility\",\"numericId\":1212,\"slug\":\"shared-responsibility\",\"nodes\":\"$undefined\"},{\"label\":\"Technical overviews\",\"numericId\":1376,\"slug\":\"tech-overviews\",\"items\":\"$128\",\"nodes\":[{\"label\":\"About WireGuard\",\"numericId\":1035,\"slug\":\"wireguard\",\"nodes\":\"$undefined\"},{\"label\":\"Tailscale encryption\",\"numericId\":1504,\"slug\":\"encryption\",\"nodes\":\"$undefined\"},{\"label\":\"Control and data planes\",\"numericId\":1508,\"slug\":\"control-data-planes\",\"nodes\":\"$undefined\"},{\"label\":\"Direct vs relayed connections\",\"numericId\":1257,\"slug\":\"connection-types\",\"nodes\":\"$undefined\"},{\"label\":\"Device connectivity\",\"numericId\":1411,\"slug\":\"device-connectivity\",\"nodes\":\"$undefined\"},{\"label\":\"How Tailscale assigns IP addresses\",\"numericId\":1033,\"slug\":\"ip-and-dns-addresses\",\"nodes\":\"$undefined\"},{\"label\":\"Tailscale and the OSI model\",\"numericId\":1456,\"slug\":\"osi\",\"nodes\":\"$undefined\"},{\"label\":\"Smaller binaries for embedded devices\",\"numericId\":1207,\"slug\":\"small-tailscale\",\"nodes\":\"$undefined\"},{\"label\":\"Kernel vs. netstack subnet routing \u0026 exit nodes\",\"numericId\":1177,\"slug\":\"kernel-vs-userspace-routers\",\"nodes\":\"$undefined\"},{\"label\":\"Userspace networking mode\",\"numericId\":1112,\"slug\":\"userspace-networking\",\"nodes\":\"$undefined\"},{\"label\":\"Node keys\",\"numericId\":1010,\"slug\":\"node-keys\",\"nodes\":\"$undefined\"},{\"label\":\"Protect SSH Servers\",\"numericId\":1009,\"slug\":\"protect-ssh-servers\",\"nodes\":\"$undefined\"},{\"label\":\"Tailnet lock white paper\",\"numericId\":1230,\"slug\":\"tailnet-lock-whitepaper\",\"nodes\":\"$undefined\"},{\"label\":\"DERP servers\",\"numericId\":1232,\"slug\":\"derp-servers\",\"nodes\":\"$undefined\"},{\"label\":\"Zero Trust Networking (ZTN)\",\"numericId\":1123,\"slug\":\"zero-trust\",\"nodes\":\"$undefined\"},{\"label\":\"IPv4 vs. IPv6 FAQ\",\"numericId\":1134,\"slug\":\"ipv6-faq\",\"nodes\":\"$undefined\"}]},{\"label\":\"Terminology and concepts\",\"numericId\":1155,\"slug\":\"terminology-and-concepts\",\"nodes\":\"$undefined\"},{\"label\":\"GitHub ↗\",\"href\":\"https://github.com/tailscale/tailscale\",\"nodes\":\"$undefined\"}]},{\"label\":\"Get Support\",\"numericId\":1432,\"slug\":\"get-support\",\"items\":[{\"label\":\"Troubleshooting\",\"numericId\":1023,\"slug\":\"troubleshooting\",\"items\":[{\"label\":\"Troubleshoot device connectivity\",\"numericId\":1463,\"slug\":\"troubleshoot-connectivity\"}]},{\"label\":\"Support options\",\"numericId\":1250,\"slug\":\"support-options\"},{\"label\":\"Contact support ↗\",\"href\":\"/contact/support\"},{\"label\":\"Generate a bug report\",\"numericId\":1227,\"slug\":\"bug-report\"}],\"nodes\":[{\"label\":\"Troubleshooting\",\"numericId\":1023,\"slug\":\"troubleshooting\",\"items\":\"$139\",\"nodes\":[{\"label\":\"Troubleshoot device connectivity\",\"numericId\":1463,\"slug\":\"troubleshoot-connectivity\",\"nodes\":\"$undefined\"}]},{\"label\":\"Support options\",\"numericId\":1250,\"slug\":\"support-options\",\"nodes\":\"$undefined\"},{\"label\":\"Contact support ↗\",\"href\":\"/contact/support\",\"nodes\":\"$undefined\"},{\"label\":\"Generate a bug report\",\"numericId\":1227,\"slug\":\"bug-report\",\"nodes\":\"$undefined\"}]},{\"label\":\"Resources\",\"numericId\":1368,\"slug\":\"resources\",\"items\":[{\"label\":\"Changelog ↗\",\"href\":\"/changelog\"},{\"label\":\"Comparisons ↗\",\"href\":\"/compare\"},{\"label\":\"Release stages\",\"numericId\":1167,\"slug\":\"release-stages\"},{\"label\":\"Security ↗\",\"href\":\"/security\"},{\"label\":\"Versions\",\"numericId\":1168,\"slug\":\"versions\",\"items\":[{\"label\":\"Unstable builds\",\"numericId\":1083,\"slug\":\"install-unstable\"}]},{\"label\":\"Use cases\",\"numericId\":1377,\"slug\":\"use-cases\"},{\"label\":\"Invite only features\",\"numericId\":1222,\"slug\":\"invite-only-feature\"}],\"nodes\":[{\"label\":\"Changelog ↗\",\"href\":\"/changelog\",\"nodes\":\"$undefined\"},{\"label\":\"Comparisons ↗\",\"href\":\"/compare\",\"nodes\":\"$undefined\"},{\"label\":\"Release stages\",\"numericId\":1167,\"slug\":\"release-stages\",\"nodes\":\"$undefined\"},{\"label\":\"Security ↗\",\"href\":\"/security\",\"nodes\":\"$undefined\"},{\"label\":\"Versions\",\"numericId\":1168,\"slug\":\"versions\",\"items\":\"$13b\",\"nodes\":[{\"label\":\"Unstable builds\",\"numericId\":1083,\"slug\":\"install-unstable\",\"nodes\":\"$undefined\"}]},{\"label\":\"Use cases\",\"numericId\":1377,\"slug\":\"use-cases\",\"nodes\":\"$undefined\"},{\"label\":\"Invite only features\",\"numericId\":1222,\"slug\":\"invite-only-feature\",\"nodes\":\"$undefined\"}]}]}]}],[\"$\",\"div\",null,{\"className\":\"relative pb-6 md:hidden\",\"children\":[\"$\",\"$L13d\",null,{\"routeParams\":\"$13e\",\"config\":\"$13f\"}]}]]}],[\"$\",\"div\",null,{\"className\":\"col-span-10 mb-8 md:col-span-7 xl:col-span-6\",\"children\":[\"$\",\"div\",null,{\"className\":\"max-w-3xl xl:mx-auto\",\"children\":[[\"$\",\"div\",null,{\"className\":\"pb-8\",\"children\":[\"$\",\"$2e3\",null,{\"children\":[\"$\",\"$L2e4\",null,{\"initialQuery\":\"$undefined\"}]}]}],[\"$\",\"article\",null,{\"id\":\"main-content\",\"className\":\"prism markdown-content js-docHighlight\",\"children\":[[\"$\",\"header\",null,{\"className\":\"mb-2 hidden md:flex\",\"children\":[[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"BreadcrumbList\\\",\\\"itemListElement\\\":[{\\\"@type\\\":\\\"ListItem\\\",\\\"position\\\":1,\\\"name\\\":\\\"Docs\\\",\\\"item\\\":\\\"/kb\\\"},{\\\"@type\\\":\\\"ListItem\\\",\\\"position\\\":2,\\\"name\\\":\\\"Reference\\\",\\\"item\\\":\\\"/kb/1367/reference\\\"},{\\\"@type\\\":\\\"ListItem\\\",\\\"position\\\":3,\\\"name\\\":\\\"Terminology and concepts\\\",\\\"item\\\":\\\"/kb/1155/terminology-and-concepts\\\"}]}\"}}],[\"$\",\"nav\",null,{\"className\":\"flex min-w-0 items-center gap-2 whitespace-nowrap text-sm font-medium\",\"children\":[[\"$\",\"$2e5\",\"/kb\",{\"children\":[[\"$\",\"$L16\",null,{\"className\":\"transition-color text-gray-600 hover:text-gray-800\",\"href\":\"/kb\",\"children\":\"Docs\"}],[\"$\",\"span\",null,{\"className\":\"select-none text-gray-500\",\"children\":\"›\"}]]}],[\"$\",\"$2e5\",\"/kb/1367/reference\",{\"children\":[[\"$\",\"$L16\",null,{\"className\":\"transition-color text-gray-600 hover:text-gray-800\",\"href\":\"/kb/1367/reference\",\"children\":\"Reference\"}],[\"$\",\"span\",null,{\"className\":\"select-none text-gray-500\",\"children\":\"›\"}]]}],[\"$\",\"span\",null,{\"className\":\"text-gray-800\",\"children\":\"Terminology and concepts\"}]]}]]}],[\"$\",\"h1\",null,{\"className\":\"mb-4 text-4xl font-medium tracking-tight\",\"children\":\"Terminology and concepts\"}],[\"$\",\"$L2e6\",null,{\"fallback\":[\"$\",\"div\",null,{\"className\":\"max-w-xl rounded-lg border p-6 lg:p-8\",\"children\":[[\"$\",\"h4\",null,{\"className\":\"mb-1 text-lg font-semibold tracking-tight\",\"children\":\"Sorry, an error occurred\"}],[\"$\",\"div\",null,{\"className\":\"ts-prose\",\"children\":[\"$\",\"p\",null,{\"children\":[\"There was an error while rendering the content for this page. \",[\"$\",\"span\",null,{\"className\":\"whitespace-nowrap\",\"children\":\"Please try again\"}],\" later, or\",\" \",[\"$\",\"$L16\",null,{\"href\":\"/contact/support\",\"className\":\"link\",\"children\":\"contact support\"}],\" \",\"for help.\"]}]}]]}],\"children\":[\"$\",\"div\",null,{\"className\":\"ts-prose\",\"children\":[\"$\",\"$2e3\",null,{\"children\":[[\"$\",\"$L2e7\",null,{\"id\":\"access-control-lists\",\"children\":\"Access control lists\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"An \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1018/acls\",\"children\":\"access control list\"}],\" (ACL) manages system access using rules in the \",[\"$\",\"a\",null,{\"href\":\"#tailnet-policy-file\",\"children\":\"tailnet policy file\"}],\". You can use ACLs to filter traffic and enhance security by managing who and what can use which resources.\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"tags\",\"children\":\"tags\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"A \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1068/tags\",\"children\":\"tag\"}],\" lets you assign an \",[\"$\",\"a\",null,{\"href\":\"#identity-provider\",\"children\":\"identity\"}],\" (that's separate from human users) to \",[\"$\",\"a\",null,{\"href\":\"#device\",\"children\":\"devices\"}],\". You can use tags in your \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1018/acls\",\"children\":\"access rules\"}],\" to restrict access.\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"admin-console\",\"children\":\"Admin console\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"The admin console is the central location to view and manage your \",[\"$\",\"a\",null,{\"href\":\"#tailnet\",\"children\":\"Tailscale network\"}],\". You can manage devices on your network, users and their permissions, and settings such as key expiry. The admin console also informs you if an update to the Tailscale client is available for your device. When you make changes from the admin console, the \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1508/control-data-planes#coordination-server\",\"children\":\"coordination server\"}],\" updates the changes to your tailnet immediately.\"]}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"You can access your admin console at \",[\"$\",\"a\",null,{\"href\":\"https://login.tailscale.com/admin/\",\"children\":\"https://login.tailscale.com/admin/\"}],\".\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"api\",\"children\":\"API\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"API is an acronym for application programming interface. APIs define a set of rules to interact with an application or service programmatically. The \",[\"$\",\"$L16\",null,{\"href\":\"/api\",\"children\":\"Tailscale API\"}],\" lets you manage your Tailscale account and tailnet.\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"cli\",\"children\":\"CLI\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"CLI is an acronym for command line interface. The Tailscale \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1080/cli\",\"children\":\"CLI\"}],\" includes a robust set of commands with functionality that GUI applications might not have. The Tailscale CLI is installed automatically when you install Tailscale on Linux, macOS, or Windows.\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"coordination-server\",\"children\":\"Coordination server\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"A \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1508/control-data-planes#coordination-server\",\"children\":\"coordination server\"}],\" is a central server that maintains a connection to all devices in your \",[\"$\",\"a\",null,{\"href\":\"#tailnet\",\"children\":\"Tailscale network\"}],\". It manages \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1504/encryption\",\"children\":\"encryption\"}],\" keys, network changes, access policy changes, and maintains a connection to all devices in your Tailscale network. The coordination server is part of the \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1508/control-data-planes#control-plane\",\"children\":\"control plane\"}],\", not the \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1508/control-data-planes#data-plane\",\"children\":\"data plane\"}],\". It avoids being a performance bottleneck by not relaying traffic between devices.\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"device\",\"children\":\"Device\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":\"A device is anything other than a user. It can be physical or virtual and sends, receives, or processes data on your Tailscale network.\"}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"device-key\",\"children\":\"Device key\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"A device key is a unique public and private key pair for a specific \",[\"$\",\"a\",null,{\"href\":\"#device\",\"children\":\"device\"}],\". More than one user can use a device key, but each device can only have one device key. The combination of a specific user with a device key represents a unique device.\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"firewall\",\"children\":\"Firewall\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"A firewall limits what network traffic can pass between two points. Firewalls can be hardware-based or software-based. Tailscale includes a built-in firewall, defined by the domain's \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1018/acls\",\"children\":\"access rules\"}],\".\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"identity-provider\",\"children\":\"Identity Provider\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"An identity provider is a method for users to authenticate to a \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1136/tailnet\",\"children\":\"tailnet\"}],\". Examples of \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1013/sso-providers\",\"children\":\"identity providers\"}],\" include Google, Okta, and Microsoft. Tailscale is not an identity provider but relies other identity providers for authentication.\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"key-expiry\",\"children\":\"Key expiry\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":\"Key expiry is the end of the validity period for a cryptographic key. An expired key can no longer encrypt or decrypt data, nor authenticate a device to a Tailscale network.\"}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"Using Tailscale means you never have to manage \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1504/encryption\",\"children\":\"encryption\"}],\" keys directly. Tailscale automatically expires keys and requires them to be regenerated at regular intervals. You can disable key expiry for long-lived devices from the admin console.\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"magicdns\",\"children\":\"MagicDNS\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[[\"$\",\"$L16\",null,{\"href\":\"/kb/1081/magicdns\",\"children\":\"MagicDNS\"}],\" automatically registers memorable hostnames for devices in your Tailscale network. It also extends and improves DNS functionality.\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"nat-traversal\",\"children\":\"NAT traversal\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"NAT is an acronym for \",[\"$\",\"a\",null,{\"href\":\"https://en.wikipedia.org/wiki/Network_address_translation\",\"children\":\"network address translation\"}],\". \",[\"$\",\"$L16\",null,{\"href\":\"/blog/how-nat-traversal-works\",\"children\":\"NAT traversal\"}],\" is a way to connect devices across the internet through barriers such as firewalls. Most internet devices can't talk to each other because of firewalls and devices that do network address translation. \",[\"$\",\"$L16\",null,{\"href\":\"/blog/how-tailscale-works#the-control-plane-key-exchange-and-coordination\",\"children\":\"NAT traversal works\"}],\" around these barriers, allowing \",[\"$\",\"a\",null,{\"href\":\"#nat-traversal\",\"children\":\"data to traverse the network\"}],\".\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"network-topology\",\"children\":\"Network topology\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":\"A network topology is an arrangement of devices in a network. It shows the connections between them. Examples of network topologies include star, bus, hub-and-spoke, mesh, and hybrid.\"}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"Traditional virtual private networks (VPNs) use a \",[\"$\",\"$L16\",null,{\"href\":\"/blog/how-tailscale-works#hub-and-spoke-networks\",\"children\":\"hub-and-spoke topology\"}],\". Each device communicates with another in this setup by sending all traffic through a central gateway device. Tailscale operates as a \",[\"$\",\"$L16\",null,{\"href\":\"/blog/how-tailscale-works#mesh-networks\",\"children\":\"mesh topology\"}],\" where each device can talk directly to others using \",[\"$\",\"a\",null,{\"href\":\"#nat-traversal\",\"children\":\"NAT traversal\"}],\".\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"node\",\"children\":\"Node\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"A node is a combination of a user and a \",[\"$\",\"a\",null,{\"href\":\"#device\",\"children\":\"device\"}],\".\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"peer\",\"children\":\"Peer\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"A peer is another \",[\"$\",\"a\",null,{\"href\":\"#node\",\"children\":\"node\"}],\" that your device is trying to talk to. A peer might or might not be in the same domain.\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"relay\",\"children\":\"Relay\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"A relay is an intermediary server that passes data between two or more devices in a network. Tailscale uses a special type of globally distributed relay server called \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1232/derp-servers\",\"children\":\"Designated Encrypted Relay for Packets (DERP)\"}],\". DERP relay servers function as a fallback to connect devices when NAT traversal fails.\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"sso\",\"children\":\"SSO\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"SSO is an acronym for \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1013/sso-providers\",\"children\":\"single sign-on\"}],\". Single sign-on lets users log in to one site using the identity of another.\"]}],\"\\n\",\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"tailnet\",\"children\":\"Tailnet\",\"level\":2}],\"\\n\",\"\\n\",[\"$\",\"p\",null,{\"children\":[\"A \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1136/tailnet\",\"children\":\"tailnet\"}],\" is another term for a Tailscale network, which is an interconnected collection of users, devices, and resources. The network has a \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1508/control-data-planes#control-plane\",\"children\":\"control plane\"}],\" and a \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1508/control-data-planes#data-plane\",\"children\":\"data plane\"}],\" that work in unison to manage access and send data between devices.\"]}],\"\\n\",[\"$\",\"span\",null,{\"id\":\"tailnet-type\"}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"There are personal and organization tailnets. A personal tailnet is a shared domain single-user tailnet (like \",[\"$\",\"code\",null,{\"children\":\"gmail.com\"}],\"). An organization tailnet is a custom domain tailnet (like \",[\"$\",\"code\",null,{\"children\":\"example.com\"}],\"),\"]}],\"\\n\",\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"tailnet-policy-file\",\"children\":\"Tailnet policy file\",\"level\":2}],\"\\n\",\"\\n\",[\"$\",\"p\",null,{\"children\":[\"The tailnet policy file stores your Tailscale network's access rules, along with other tailnet configuration items. It uses \",[\"$\",\"a\",null,{\"href\":\"https://github.com/tailscale/hujson\",\"children\":\"human JSON (HuJSON)\"}],\" and conforms to the \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1337/acl-syntax\",\"children\":\"Tailscale policy syntax\"}],\".\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"tailscalar\",\"children\":\"Tailscalar\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":\"A Tailscalar is a Tailscale employee.\"}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"tailscale-ip-address\",\"children\":\"Tailscale IP address\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[\"A \",[\"$\",\"a\",null,{\"href\":\"#tailscale-ip-address\",\"children\":\"Tailscale IP address\"}],\" is a \",[\"$\",\"$L16\",null,{\"href\":\"/kb/1033/ip-and-dns-addresses\",\"children\":\"unique IP address\"}],\" assigned to each device in your Tailscale network. It's always in the form \",[\"$\",\"code\",null,{\"children\":\"100.x.y.z\"}],\" (for example, \",[\"$\",\"code\",null,{\"children\":\"100.101.102.103\"}],\"). It stays the same even when switching between your home internet connection, cellular networks, or coffee shop Wi-Fi networks.\"]}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"tunnel\",\"children\":\"Tunnel\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":\"In networking, a tunnel is an encapsulated connection between one or more points in a network. It lets users, devices, or resources communicate securely over a public data network.\"}],\"\\n\",[\"$\",\"$L2e7\",null,{\"id\":\"wireguard\",\"children\":\"WireGuard\",\"level\":2}],\"\\n\",[\"$\",\"p\",null,{\"children\":[[\"$\",\"a\",null,{\"href\":\"https://www.wireguard.com\",\"children\":\"WireGuard\"}],\" is the underlying cryptographic protocol that Tailscale uses.\"]}]]}]}]}]]}],[\"$\",\"p\",null,{\"className\":\"mt-6 text-sm leading-snug text-gray-600\",\"children\":[\"Last updated \",\"Dec 10, 2024\"]}]]}]}],[\"$\",\"aside\",null,{\"className\":\"js-docHighlight col-span-10 h-full pb-8 md:col-span-8 md:col-start-4 xl:col-span-2 xl:col-start-auto\",\"children\":[\"$\",\"div\",null,{\"className\":\"sticky top-16 flex flex-col gap-8\",\"children\":[[\"$\",\"$L2e8\",null,{\"data\":[{\"id\":\"access-control-lists\",\"text\":\"Access control lists\",\"level\":2},{\"id\":\"tags\",\"text\":\"tags\",\"level\":2},{\"id\":\"admin-console\",\"text\":\"Admin console\",\"level\":2},{\"id\":\"api\",\"text\":\"API\",\"level\":2},{\"id\":\"cli\",\"text\":\"CLI\",\"level\":2},{\"id\":\"coordination-server\",\"text\":\"Coordination server\",\"level\":2},{\"id\":\"device\",\"text\":\"Device\",\"level\":2},{\"id\":\"device-key\",\"text\":\"Device key\",\"level\":2},{\"id\":\"firewall\",\"text\":\"Firewall\",\"level\":2},{\"id\":\"identity-provider\",\"text\":\"Identity Provider\",\"level\":2},{\"id\":\"key-expiry\",\"text\":\"Key expiry\",\"level\":2},{\"id\":\"magicdns\",\"text\":\"MagicDNS\",\"level\":2},{\"id\":\"nat-traversal\",\"text\":\"NAT traversal\",\"level\":2},{\"id\":\"network-topology\",\"text\":\"Network topology\",\"level\":2},{\"id\":\"node\",\"text\":\"Node\",\"level\":2},{\"id\":\"peer\",\"text\":\"Peer\",\"level\":2},{\"id\":\"relay\",\"text\":\"Relay\",\"level\":2},{\"id\":\"sso\",\"text\":\"SSO\",\"level\":2},{\"id\":\"tailnet\",\"text\":\"Tailnet\",\"level\":2},{\"id\":\"tailnet-policy-file\",\"text\":\"Tailnet policy file\",\"level\":2},{\"id\":\"tailscalar\",\"text\":\"Tailscalar\",\"level\":2},{\"id\":\"tailscale-ip-address\",\"text\":\"Tailscale IP address\",\"level\":2},{\"id\":\"tunnel\",\"text\":\"Tunnel\",\"level\":2},{\"id\":\"wireguard\",\"text\":\"WireGuard\",\"level\":2}]}],null]}]}]]}]\n"])</script></body></html>