From 9a38d78828070ad8171e3cbb9c00cd5d99ba559d Mon Sep 17 00:00:00 2001 From: Kristoffer Dalby Date: Sat, 17 Oct 2026 19:29:18 +0000 Subject: [PATCH] policy/v2, servertest: add multi-route router captures A seven-route router and an exit node under six policies; replayed through policy, peer map and map stream. Peer map now checked against SaaS peers. --- .../v2/tailscale_routes_data_compat_test.go | 150 +- .../routes-m1-wildcard-src-multi-range.hujson | 7388 +++++++++++++++ .../routes-m2-member-partial-subnet.hujson | 7217 ++++++++++++++ .../routes-m3-subnet-route-as-src.hujson | 7062 ++++++++++++++ .../routes-m4-member-self.hujson | 7102 ++++++++++++++ .../routes-m5-wildcard-all.hujson | 8326 +++++++++++++++++ ...tes-m6-subnet-to-subnet-multi-route.hujson | 7026 ++++++++++++++ hscontrol/servertest/via_compat_test.go | 56 +- 8 files changed, 44310 insertions(+), 17 deletions(-) create mode 100644 hscontrol/policy/v2/testdata/routes_results/routes-m1-wildcard-src-multi-range.hujson create mode 100644 hscontrol/policy/v2/testdata/routes_results/routes-m2-member-partial-subnet.hujson create mode 100644 hscontrol/policy/v2/testdata/routes_results/routes-m3-subnet-route-as-src.hujson create mode 100644 hscontrol/policy/v2/testdata/routes_results/routes-m4-member-self.hujson create mode 100644 hscontrol/policy/v2/testdata/routes_results/routes-m5-wildcard-all.hujson create mode 100644 hscontrol/policy/v2/testdata/routes_results/routes-m6-subnet-to-subnet-multi-route.hujson diff --git a/hscontrol/policy/v2/tailscale_routes_data_compat_test.go b/hscontrol/policy/v2/tailscale_routes_data_compat_test.go index b015220da..1e7bbe765 100644 --- a/hscontrol/policy/v2/tailscale_routes_data_compat_test.go +++ b/hscontrol/policy/v2/tailscale_routes_data_compat_test.go @@ -14,7 +14,7 @@ // + ReduceFilterRules) against golden file captures. // // - TestRoutesCompatPeerVisibility: validates peer visibility (CanAccess) -// for the subnet-to-subnet scenarios (f10–f15). These tests +// for the subnet-to-subnet scenarios (f10–f15, m6). These tests // derive expected peer relationships from the golden file captures: if // Tailscale SaaS delivers filter rules to a node, then the subnet routers // referenced in those rules must be visible as peers. This exercises the @@ -174,7 +174,27 @@ func buildRoutesUsersAndNodes( // routesSkipReasons lists checks where headscale differs from SaaS, keyed // //. A listed check that matches fails, so a fix must // delete its entry. -var routesSkipReasons = map[string]string{} +var routesSkipReasons = map[string]string{ + // SaaS lists contiguous source addresses one by one; headscale merges + // them into ranges. + "routes-m2-member-partial-subnet/r-exit/filter": filterAddressForm, + "routes-m2-member-partial-subnet/r-multi/filter": filterAddressForm, + "routes-m4-member-self/m-odin1/filter": filterAddressForm, + "routes-m4-member-self/m-odin2/filter": filterAddressForm, + "routes-m4-member-self/r-exit/filter": "FILTER_ADDRESS_FORM: same addresses, different wire form and rule order", + + "routes-m1-wildcard-src-multi-range/srv/peer-allowed-ips": exitRoutesOnOverlap, + "routes-m6-subnet-to-subnet-multi-route/r-multi/peer-allowed-ips": exitRoutesOnOverlap, + + "routes-m1-wildcard-src-multi-range/m-odin1/peers": sameUserPeers, + "routes-m1-wildcard-src-multi-range/m-odin2/peers": sameUserPeers, + "routes-m2-member-partial-subnet/m-odin1/peers": sameUserPeers, + "routes-m2-member-partial-subnet/m-odin2/peers": sameUserPeers, + "routes-m3-subnet-route-as-src/m-odin1/peers": sameUserPeers, + "routes-m3-subnet-route-as-src/m-odin2/peers": sameUserPeers, + "routes-m6-subnet-to-subnet-multi-route/m-odin1/peers": sameUserPeers, + "routes-m6-subnet-to-subnet-multi-route/m-odin2/peers": sameUserPeers, +} // routesNotCompared lists, by key prefix, checks left out: SaaS's answer // there is in doubt, so it is no reference. @@ -210,6 +230,37 @@ var routesNotCompared = []string{ "routes-t5-oauth-routes-scope/ovl-r-mapped/peer-allowed-ips", "routes-t5-oauth-routes-scope/ovl-r-narrow/peer-allowed-ips", "routes-t5-oauth-routes-scope/ovl-r-via/peer-allowed-ips", + "routes-t1-auto-v4-default/ovl-r-ctrl/peers", + "routes-t1-auto-v4-default/ovl-r-host4/peers", + "routes-t1-auto-v4-default/ovl-r-host6/peers", + "routes-t1-auto-v4-default/ovl-r-mapped/peers", + "routes-t1-auto-v4-default/ovl-r-narrow/peers", + "routes-t1-auto-v4-default/ovl-r-via/peers", + "routes-t1-auto-v4-default/ovl-r-wide-in/peers", + "routes-t2-auto-v6-default/ovl-r-ctrl/peers", + "routes-t2-auto-v6-default/ovl-r-host4/peers", + "routes-t2-auto-v6-default/ovl-r-host6/peers", + "routes-t2-auto-v6-default/ovl-r-mapped/peers", + "routes-t2-auto-v6-default/ovl-r-narrow/peers", + "routes-t2-auto-v6-default/ovl-r-via/peers", + "routes-t3-auto-narrow-keys/ovl-r-ctrl/peers", + "routes-t3-auto-narrow-keys/ovl-r-host4/peers", + "routes-t3-auto-narrow-keys/ovl-r-host6/peers", + "routes-t3-auto-narrow-keys/ovl-r-mapped/peers", + "routes-t3-auto-narrow-keys/ovl-r-narrow/peers", + "routes-t3-auto-narrow-keys/ovl-r-via/peers", + "routes-t4-admin/ovl-r-ctrl/peers", + "routes-t4-admin/ovl-r-host4/peers", + "routes-t4-admin/ovl-r-host6/peers", + "routes-t4-admin/ovl-r-mapped/peers", + "routes-t4-admin/ovl-r-narrow/peers", + "routes-t4-admin/ovl-r-via/peers", + "routes-t5-oauth-routes-scope/ovl-r-ctrl/peers", + "routes-t5-oauth-routes-scope/ovl-r-host4/peers", + "routes-t5-oauth-routes-scope/ovl-r-host6/peers", + "routes-t5-oauth-routes-scope/ovl-r-mapped/peers", + "routes-t5-oauth-routes-scope/ovl-r-narrow/peers", + "routes-t5-oauth-routes-scope/ovl-r-via/peers", } // notCompared reports whether key falls under one of prefixes. @@ -219,6 +270,12 @@ func notCompared(prefixes []string, key string) bool { }) } +const filterAddressForm = "FILTER_ADDRESS_FORM: same addresses, different wire form" + +const exitRoutesOnOverlap = "EXIT_ROUTES_ON_OVERLAP: headscale offers a peer's exit routes to a viewer whose rules reach only nodes or subnets; SaaS leaves them out" + +const sameUserPeers = "SAME_USER_PEERS: SaaS lists a user's own devices as each other's peers with no rule linking them; headscale peers only what the policy links" + // routesSetByAPI reports whether the capture's routes were approved through // the routes API rather than by the policy. func routesSetByAPI(c *testcapture.Capture) bool { @@ -244,6 +301,7 @@ var subnetToSubnetFiles = []string{ "routes-f13-subnet-to-subnet-disjoint", "routes-f14-subnet-to-subnet-overlapping-one-router", "routes-f15-subnet-to-subnet-cross-routers", + "routes-m6-subnet-to-subnet-multi-route", } // TestRoutesCompat is a data-driven test that loads all routes-*.hujson test @@ -316,18 +374,10 @@ func TestRoutesCompat(t *testing.T) { cmpOptions(), cmpopts.EquateEmpty(), ) - if diff := cmp.Diff( - wantRules, - gotRules, - opts..., - ); diff != "" { - t.Errorf( - "%s/%s: filter rules mismatch (-want +got):\n%s", - tf.TestID, - nodeName, - diff, - ) - } + + compatCheck(t, routesSkipReasons, tf.TestID+"/"+nodeName+"/filter", func() string { + return cmp.Diff(wantRules, gotRules, opts...) + }) }) } }) @@ -1579,6 +1629,78 @@ func TestRoutesCompatPeerAllowedIPs(t *testing.T) { ) } +// TestRoutesCompatPeerMap checks that BuildPeerMap gives each captured node +// exactly the topology nodes SaaS listed as its peers. +func TestRoutesCompatPeerMap(t *testing.T) { + t.Parallel() + + files, err := filepath.Glob( + filepath.Join("testdata", "routes_results", "routes-*.hujson"), + ) + require.NoError(t, err, "failed to glob test files") + require.NotEmpty(t, files) + + for _, file := range files { + tf := loadRoutesTestFile(t, file) + if tf.Error { + continue + } + + t.Run(tf.TestID, func(t *testing.T) { + t.Parallel() + + users, nodes := buildRoutesUsersAndNodes(t, tf.Topology) + policyJSON := convertPolicyUserEmails(tf.Input.FullPolicy) + + pm, err := NewPolicyManager(policyJSON, users, nodes.ViewSlice()) + require.NoError(t, err, "%s: failed to create policy manager", tf.TestID) + + names := make(map[types.NodeID]string, len(nodes)) + for _, n := range nodes { + names[n.ID] = n.GivenName + } + + peerMap := pm.BuildPeerMap(nodes.ViewSlice()) + + for viewerName, capture := range tf.Captures { + if capture.Netmap == nil { + continue + } + + viewer := findNodeByGivenName(nodes, viewerName) + require.NotNilf(t, viewer, "golden node %s not found in topology", viewerName) + + key := tf.TestID + "/" + viewerName + "/peers" + if notCompared(routesNotCompared, key) { + continue + } + + t.Run(viewerName, func(t *testing.T) { + want := []string{} + + for _, p := range capture.Netmap.Peers { + name, _, _ := strings.Cut(p.Name(), ".") + if findNodeByGivenName(nodes, name) != nil { + want = append(want, name) + } + } + + got := []string{} + for _, id := range peerMap[viewer.ID] { + got = append(got, names[id]) + } + + slices.Sort(want) + slices.Sort(got) + + compatCheck(t, routesSkipReasons, key, + func() string { return cmp.Diff(want, got) }) + }) + } + }) + } +} + // TestRoutesCompatPeerCapMap validates the peer-view CapMap against SaaS // for route scenarios, whose policies carry no nodeAttrs. SaaS stamps // suggest-exit-node on approved exit peers regardless of policy; the diff --git a/hscontrol/policy/v2/testdata/routes_results/routes-m1-wildcard-src-multi-range.hujson b/hscontrol/policy/v2/testdata/routes_results/routes-m1-wildcard-src-multi-range.hujson new file mode 100644 index 000000000..be7454cd0 --- /dev/null +++ b/hscontrol/policy/v2/testdata/routes_results/routes-m1-wildcard-src-multi-range.hujson @@ -0,0 +1,7388 @@ +// routes-m1-wildcard-src-multi-range +// +// routes multi, wildcard src multi range +// +// Nodes with filter rules: 7 of 7 +// Captured at: 2026-10-17T16:44:05Z +// tool version: tscap/dev +// schema version: 1 +{ + "schema_version": 1, + "test_id": "routes-m1-wildcard-src-multi-range", + "description": "routes multi, wildcard src multi range", + "category": "routes", + "captured_at": "2026-10-17T16:44:05.163691358Z", + "tool_version": "tscap/dev", + "tailnet": "odin@example.com", + "input": { + "api_response_code": 200, + "tailnet": { + "dns": {"magic_dns": false, "nameservers": [], "search_paths": [], "split_dns": {}}, + "settings": {} + }, + "scenario_hujson": " \n \n \n \n{\n\t\"id\": \"routes-m1-wildcard-src-multi-range\",\n\t\"category\": \"routes\",\n\t\"description\": \"routes multi, wildcard src multi range\",\n\t\"topology\": \"../_topologies/routes-multi.hujson\",\n\t\"tailnet\": {\n\t\t\"dns\": {\"magic_dns\": false, \"nameservers\": [], \"search_paths\": [], \"split_dns\": {}},\n\t\t\"settings\": {}\n\t},\n\t\"policy\": {\"tagOwners\": {\n\t\t\"tag:exit\": [\"odin@example.com\"],\n\t\t\"tag:prod\": [\"odin@example.com\"],\n\t\t\"tag:router\": [\"odin@example.com\"],\n\t\t\"tag:server\": [\"odin@example.com\"]\n\t}, \"autoApprovers\": {\"exitNode\": [\"tag:exit\"], \"routes\": {\n\t\t\"10.40.0.0/16\": [\"tag:router\"],\n\t\t\"10.40.7.0/24\": [\"tag:exit\"],\n\t\t\"fd00:40::/48\": [\"tag:router\"]\n\t}}, \"acls\": [\n\t\t{\"action\": \"accept\", \"src\": [\"*\"], \"dst\": [\"tag:server:443\"]},\n\t\t{\"action\": \"accept\", \"src\": [\"tag:prod\"], \"dst\": [\"*:*\"]}\n\t]}\n}\n", + "scenario_path": "scenarios/routes-multi/routes-m1-wildcard-src-multi-range.hujson", + "full_policy": {"acls": [ + {"action": "accept", "dst": ["tag:server:443"], "src": ["*"]}, + {"action": "accept", "dst": ["*:*"], "src": ["tag:prod"]} + ], "autoApprovers": {"exitNode": ["tag:exit"], "routes": { + "10.40.0.0/16": ["tag:router"], + "10.40.7.0/24": ["tag:exit"], + "fd00:40::/48": ["tag:router"] + }}, "tagOwners": { + "tag:exit": ["odin@example.com"], + "tag:prod": ["odin@example.com"], + "tag:router": ["odin@example.com"], + "tag:server": ["odin@example.com"] + }} + }, + "topology": {"users": [ + {"id": 1, "name": "odin", "email": "odin@example.com"}, + {"id": 2, "name": "thor", "email": "thor@example.org"} + ], "nodes": {"m-odin1": { + "hostname": "m-odin1", + "tags": [], + "ipv4": "100.64.0.1", + "ipv6": "fd7a:115c:a1e0::1", + "user": "odin", + "routable_ips": [], + "approved_routes": [] + }, "m-odin2": { + "hostname": "m-odin2", + "tags": [], + "ipv4": "100.64.0.2", + "ipv6": "fd7a:115c:a1e0::2", + "user": "odin", + "routable_ips": [], + "approved_routes": [] + }, "m-thor": { + "hostname": "m-thor", + "tags": [], + "ipv4": "100.64.0.3", + "ipv6": "fd7a:115c:a1e0::3", + "user": "thor", + "routable_ips": [], + "approved_routes": [] + }, "prod": { + "hostname": "prod", + "tags": ["tag:prod"], + "ipv4": "100.64.0.4", + "ipv6": "fd7a:115c:a1e0::4", + "routable_ips": [], + "approved_routes": [] + }, "r-exit": { + "hostname": "r-exit", + "tags": ["tag:exit"], + "ipv4": "100.64.0.5", + "ipv6": "fd7a:115c:a1e0::5", + "routable_ips": ["0.0.0.0/0", "::/0", "10.40.7.0/24"], + "approved_routes": ["0.0.0.0/0", "10.40.7.0/24", "::/0"] + }, "r-multi": { + "hostname": "r-multi", + "tags": ["tag:router"], + "ipv4": "100.64.0.6", + "ipv6": "fd7a:115c:a1e0::6", + "routable_ips": [ + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64", + "10.42.0.0/24" + ], + "approved_routes": [ + "10.40.1.0/24", + "10.40.3.0/24", + "10.40.1.0/25", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ] + }, "srv": { + "hostname": "srv", + "tags": ["tag:server"], + "ipv4": "100.64.0.7", + "ipv6": "fd7a:115c:a1e0::7", + "routable_ips": [], + "approved_routes": [] + }}}, + "captures": {"m-odin1": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "Hostinfo": {"Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "MachineKey": "mkey:9af7099f480dca9442026b80e553a565230d54fd332794a6bdcc8189827f0251", + "Peers": [{ + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "m-odin2": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "Hostinfo": {"Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "MachineKey": "mkey:7a2a32a09046dd6b182646fd5c6afe1b9d70adc3da28e8914b15c9763a1d0247", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "m-thor": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "Hostinfo": {"Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "MachineKey": "mkey:b370bf06f7ad82c1bcd791691ebcc67ae896cae6ef1bd46768003015cef45428", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "prod": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 3103494431633216, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "Hostinfo": {"Hostname": "prod", "RequestTags": ["tag:prod"], "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Tags": ["tag:prod"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "MachineKey": "mkey:ad3fa6da1dedd424ffb1373e0e2fab33466e389a5ddf46258436fc5a41876e07", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-exit", "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053} + ]}, + "Created": "2026-10-17T16:44:12.478205794Z", + "Cap": 142, + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "Online": true, + "CapMap": {"suggest-exit-node": null}, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "3103494431633216": { + "ID": 3103494431633216, + "LoginName": "prod.tail78f774.ts.net", + "DisplayName": "prod" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "r-exit": {"packet_filter_rules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [ + {"IP": "100.64.0.7", "Ports": {"First": 443, "Last": 443}}, + {"IP": "fd7a:115c:a1e0::7", "Ports": {"First": 443, "Last": 443}} + ]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "100.64.0.7/32", "Ports": {"First": 443, "Last": 443}}, + {"Net": "fd7a:115c:a1e0::7/128", "Ports": {"First": 443, "Last": 443}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 6327930576193749, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "Hostinfo": { + "Hostname": "r-exit", + "RoutableIPs": ["0.0.0.0/0", "::/0", "10.40.7.0/24"], + "RequestTags": ["tag:exit"], + "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ] + }, + "Created": "2026-10-17T16:44:12.478205794Z", + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "MachineKey": "mkey:7452982dc03c5685ec1ac5b4565bf699b4db3349f5fc371cda2ea216125be65b", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "100.64.0.7/32", "Ports": {"First": 443, "Last": 443}}, + {"Net": "fd7a:115c:a1e0::7/128", "Ports": {"First": 443, "Last": 443}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [ + {"IP": "100.64.0.7", "Ports": {"First": 443, "Last": 443}}, + {"IP": "fd7a:115c:a1e0::7", "Ports": {"First": 443, "Last": 443}} + ]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "6327930576193749": { + "ID": 6327930576193749, + "LoginName": "r-exit.tail78f774.ts.net", + "DisplayName": "r-exit" + }} + }}, "r-multi": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 4573020226594765, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "Hostinfo": {"Hostname": "r-multi", "RoutableIPs": [ + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64", + "10.42.0.0/24" + ], "RequestTags": ["tag:router"], "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "MachineKey": "mkey:e71c3e50112d04bd566757901e89599ef98c07e3703dac12397aed6230c05b6a", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4573020226594765": { + "ID": 4573020226594765, + "LoginName": "r-multi.tail78f774.ts.net", + "DisplayName": "r-multi" + }} + }}, "srv": {"packet_filter_rules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [ + {"IP": "100.64.0.7", "Ports": {"First": 443, "Last": 443}}, + {"IP": "fd7a:115c:a1e0::7", "Ports": {"First": 443, "Last": 443}} + ]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "100.64.0.7/32", "Ports": {"First": 443, "Last": 443}}, + {"Net": "fd7a:115c:a1e0::7/128", "Ports": {"First": 443, "Last": 443}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 3530479444222049, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "Hostinfo": {"Hostname": "srv", "RequestTags": ["tag:server"], "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Tags": ["tag:server"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "MachineKey": "mkey:248be9eace9253c09dba3b2fb5bf2713fb0e34628ebb8cb1c0ede784c0242a28", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128", "10.40.7.0/24"], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-exit", "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053} + ]}, + "Created": "2026-10-17T16:44:12.478205794Z", + "Cap": 142, + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "Online": true, + "CapMap": {"suggest-exit-node": null}, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "100.64.0.7/32", "Ports": {"First": 443, "Last": 443}}, + {"Net": "fd7a:115c:a1e0::7/128", "Ports": {"First": 443, "Last": 443}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [ + {"IP": "100.64.0.7", "Ports": {"First": 443, "Last": 443}}, + {"IP": "fd7a:115c:a1e0::7", "Ports": {"First": 443, "Last": 443}} + ]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "3530479444222049": { + "ID": 3530479444222049, + "LoginName": "srv.tail78f774.ts.net", + "DisplayName": "srv" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}} +} diff --git a/hscontrol/policy/v2/testdata/routes_results/routes-m2-member-partial-subnet.hujson b/hscontrol/policy/v2/testdata/routes_results/routes-m2-member-partial-subnet.hujson new file mode 100644 index 000000000..0335ee840 --- /dev/null +++ b/hscontrol/policy/v2/testdata/routes_results/routes-m2-member-partial-subnet.hujson @@ -0,0 +1,7217 @@ +// routes-m2-member-partial-subnet +// +// routes multi, member partial subnet +// +// Nodes with filter rules: 7 of 7 +// Captured at: 2026-10-17T16:44:47Z +// tool version: tscap/dev +// schema version: 1 +{ + "schema_version": 1, + "test_id": "routes-m2-member-partial-subnet", + "description": "routes multi, member partial subnet", + "category": "routes", + "captured_at": "2026-10-17T16:44:47.825971516Z", + "tool_version": "tscap/dev", + "tailnet": "odin@example.com", + "input": { + "api_response_code": 200, + "tailnet": { + "dns": {"magic_dns": false, "nameservers": [], "search_paths": [], "split_dns": {}}, + "settings": {} + }, + "scenario_hujson": " \n \n \n \n{\n\t\"id\": \"routes-m2-member-partial-subnet\",\n\t\"category\": \"routes\",\n\t\"description\": \"routes multi, member partial subnet\",\n\t\"topology\": \"../_topologies/routes-multi.hujson\",\n\t\"tailnet\": {\n\t\t\"dns\": {\"magic_dns\": false, \"nameservers\": [], \"search_paths\": [], \"split_dns\": {}},\n\t\t\"settings\": {}\n\t},\n\t\"policy\": {\"tagOwners\": {\n\t\t\"tag:exit\": [\"odin@example.com\"],\n\t\t\"tag:prod\": [\"odin@example.com\"],\n\t\t\"tag:router\": [\"odin@example.com\"],\n\t\t\"tag:server\": [\"odin@example.com\"]\n\t}, \"autoApprovers\": {\"exitNode\": [\"tag:exit\"], \"routes\": {\n\t\t\"10.40.0.0/16\": [\"tag:router\"],\n\t\t\"10.40.7.0/24\": [\"tag:exit\"],\n\t\t\"fd00:40::/48\": [\"tag:router\"]\n\t}}, \"acls\": [{\n\t\t\"action\": \"accept\",\n\t\t\"src\": [\"autogroup:member\"],\n\t\t\"dst\": [\"10.40.1.0/24:*\"]\n\t}, {\"action\": \"accept\", \"src\": [\"tag:prod\"], \"dst\": [\"*:*\"]}]}\n}\n", + "scenario_path": "scenarios/routes-multi/routes-m2-member-partial-subnet.hujson", + "full_policy": { + "acls": [{ + "action": "accept", + "dst": ["10.40.1.0/24:*"], + "src": ["autogroup:member"] + }, {"action": "accept", "dst": ["*:*"], "src": ["tag:prod"]}], + "autoApprovers": {"exitNode": ["tag:exit"], "routes": { + "10.40.0.0/16": ["tag:router"], + "10.40.7.0/24": ["tag:exit"], + "fd00:40::/48": ["tag:router"] + }}, + "tagOwners": { + "tag:exit": ["odin@example.com"], + "tag:prod": ["odin@example.com"], + "tag:router": ["odin@example.com"], + "tag:server": ["odin@example.com"] + } + } + }, + "topology": {"users": [ + {"id": 1, "name": "odin", "email": "odin@example.com"}, + {"id": 2, "name": "thor", "email": "thor@example.org"} + ], "nodes": {"m-odin1": { + "hostname": "m-odin1", + "tags": [], + "ipv4": "100.64.0.1", + "ipv6": "fd7a:115c:a1e0::1", + "user": "odin", + "routable_ips": [], + "approved_routes": [] + }, "m-odin2": { + "hostname": "m-odin2", + "tags": [], + "ipv4": "100.64.0.2", + "ipv6": "fd7a:115c:a1e0::2", + "user": "odin", + "routable_ips": [], + "approved_routes": [] + }, "m-thor": { + "hostname": "m-thor", + "tags": [], + "ipv4": "100.64.0.3", + "ipv6": "fd7a:115c:a1e0::3", + "user": "thor", + "routable_ips": [], + "approved_routes": [] + }, "prod": { + "hostname": "prod", + "tags": ["tag:prod"], + "ipv4": "100.64.0.4", + "ipv6": "fd7a:115c:a1e0::4", + "routable_ips": [], + "approved_routes": [] + }, "r-exit": { + "hostname": "r-exit", + "tags": ["tag:exit"], + "ipv4": "100.64.0.5", + "ipv6": "fd7a:115c:a1e0::5", + "routable_ips": ["0.0.0.0/0", "::/0", "10.40.7.0/24"], + "approved_routes": ["0.0.0.0/0", "10.40.7.0/24", "::/0"] + }, "r-multi": { + "hostname": "r-multi", + "tags": ["tag:router"], + "ipv4": "100.64.0.6", + "ipv6": "fd7a:115c:a1e0::6", + "routable_ips": [ + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64", + "10.42.0.0/24" + ], + "approved_routes": [ + "10.40.1.0/24", + "10.40.3.0/24", + "10.40.1.0/25", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ] + }, "srv": { + "hostname": "srv", + "tags": ["tag:server"], + "ipv4": "100.64.0.7", + "ipv6": "fd7a:115c:a1e0::7", + "routable_ips": [], + "approved_routes": [] + }}}, + "captures": {"m-odin1": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "Hostinfo": {"Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "MachineKey": "mkey:9af7099f480dca9442026b80e553a565230d54fd332794a6bdcc8189827f0251", + "Peers": [{ + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128", "10.40.1.0/24", "10.40.1.0/25"], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": ["10.40.1.0/24", "10.40.1.0/25"], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "m-odin2": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "Hostinfo": {"Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "MachineKey": "mkey:7a2a32a09046dd6b182646fd5c6afe1b9d70adc3da28e8914b15c9763a1d0247", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128", "10.40.1.0/24", "10.40.1.0/25"], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": ["10.40.1.0/24", "10.40.1.0/25"], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "m-thor": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "Hostinfo": {"Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "MachineKey": "mkey:b370bf06f7ad82c1bcd791691ebcc67ae896cae6ef1bd46768003015cef45428", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128", "10.40.1.0/24", "10.40.1.0/25"], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": ["10.40.1.0/24", "10.40.1.0/25"], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "prod": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 3103494431633216, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "Hostinfo": {"Hostname": "prod", "RequestTags": ["tag:prod"], "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Tags": ["tag:prod"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "MachineKey": "mkey:ad3fa6da1dedd424ffb1373e0e2fab33466e389a5ddf46258436fc5a41876e07", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-exit", "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053} + ]}, + "Created": "2026-10-17T16:44:12.478205794Z", + "Cap": 142, + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "Online": true, + "CapMap": {"suggest-exit-node": null}, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "3103494431633216": { + "ID": 3103494431633216, + "LoginName": "prod.tail78f774.ts.net", + "DisplayName": "prod" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "r-exit": {"packet_filter_rules": [{ + "SrcIPs": [ + "100.64.0.1", + "100.64.0.2", + "100.64.0.3", + "fd7a:115c:a1e0::1", + "fd7a:115c:a1e0::2", + "fd7a:115c:a1e0::3" + ], + "DstPorts": [{"IP": "10.40.1.0/24", "Ports": {"First": 0, "Last": 65535}}] + }, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": [ + "100.64.0.1/32", + "100.64.0.2/32", + "100.64.0.3/32", + "fd7a:115c:a1e0::1/128", + "fd7a:115c:a1e0::2/128", + "fd7a:115c:a1e0::3/128" + ], + "SrcCaps": null, + "Dsts": [{"Net": "10.40.1.0/24", "Ports": {"First": 0, "Last": 65535}}], + "Caps": [] + }, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 6327930576193749, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "Hostinfo": { + "Hostname": "r-exit", + "RoutableIPs": ["0.0.0.0/0", "::/0", "10.40.7.0/24"], + "RequestTags": ["tag:exit"], + "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ] + }, + "Created": "2026-10-17T16:44:12.478205794Z", + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "MachineKey": "mkey:7452982dc03c5685ec1ac5b4565bf699b4db3349f5fc371cda2ea216125be65b", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": [ + "100.64.0.1/32", + "100.64.0.2/32", + "100.64.0.3/32", + "fd7a:115c:a1e0::1/128", + "fd7a:115c:a1e0::2/128", + "fd7a:115c:a1e0::3/128" + ], + "SrcCaps": null, + "Dsts": [{"Net": "10.40.1.0/24", "Ports": {"First": 0, "Last": 65535}}], + "Caps": [] + }, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": [ + "100.64.0.1", + "100.64.0.2", + "100.64.0.3", + "fd7a:115c:a1e0::1", + "fd7a:115c:a1e0::2", + "fd7a:115c:a1e0::3" + ], + "DstPorts": [{"IP": "10.40.1.0/24", "Ports": {"First": 0, "Last": 65535}}] + }, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "6327930576193749": { + "ID": 6327930576193749, + "LoginName": "r-exit.tail78f774.ts.net", + "DisplayName": "r-exit" + }} + }}, "r-multi": {"packet_filter_rules": [{ + "SrcIPs": [ + "100.64.0.1", + "100.64.0.2", + "100.64.0.3", + "fd7a:115c:a1e0::1", + "fd7a:115c:a1e0::2", + "fd7a:115c:a1e0::3" + ], + "DstPorts": [{"IP": "10.40.1.0/24", "Ports": {"First": 0, "Last": 65535}}] + }, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": [ + "100.64.0.1/32", + "100.64.0.2/32", + "100.64.0.3/32", + "fd7a:115c:a1e0::1/128", + "fd7a:115c:a1e0::2/128", + "fd7a:115c:a1e0::3/128" + ], + "SrcCaps": null, + "Dsts": [{"Net": "10.40.1.0/24", "Ports": {"First": 0, "Last": 65535}}], + "Caps": [] + }, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 4573020226594765, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "Hostinfo": {"Hostname": "r-multi", "RoutableIPs": [ + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64", + "10.42.0.0/24" + ], "RequestTags": ["tag:router"], "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "MachineKey": "mkey:e71c3e50112d04bd566757901e89599ef98c07e3703dac12397aed6230c05b6a", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": [ + "100.64.0.1/32", + "100.64.0.2/32", + "100.64.0.3/32", + "fd7a:115c:a1e0::1/128", + "fd7a:115c:a1e0::2/128", + "fd7a:115c:a1e0::3/128" + ], + "SrcCaps": null, + "Dsts": [{"Net": "10.40.1.0/24", "Ports": {"First": 0, "Last": 65535}}], + "Caps": [] + }, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": [ + "100.64.0.1", + "100.64.0.2", + "100.64.0.3", + "fd7a:115c:a1e0::1", + "fd7a:115c:a1e0::2", + "fd7a:115c:a1e0::3" + ], + "DstPorts": [{"IP": "10.40.1.0/24", "Ports": {"First": 0, "Last": 65535}}] + }, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }, "4573020226594765": { + "ID": 4573020226594765, + "LoginName": "r-multi.tail78f774.ts.net", + "DisplayName": "r-multi" + }} + }}, "srv": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 3530479444222049, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "Hostinfo": {"Hostname": "srv", "RequestTags": ["tag:server"], "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Tags": ["tag:server"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "MachineKey": "mkey:248be9eace9253c09dba3b2fb5bf2713fb0e34628ebb8cb1c0ede784c0242a28", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "3530479444222049": { + "ID": 3530479444222049, + "LoginName": "srv.tail78f774.ts.net", + "DisplayName": "srv" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}} +} diff --git a/hscontrol/policy/v2/testdata/routes_results/routes-m3-subnet-route-as-src.hujson b/hscontrol/policy/v2/testdata/routes_results/routes-m3-subnet-route-as-src.hujson new file mode 100644 index 000000000..600be3b24 --- /dev/null +++ b/hscontrol/policy/v2/testdata/routes_results/routes-m3-subnet-route-as-src.hujson @@ -0,0 +1,7062 @@ +// routes-m3-subnet-route-as-src +// +// routes multi, subnet route as src +// +// Nodes with filter rules: 7 of 7 +// Captured at: 2026-10-17T16:45:19Z +// tool version: tscap/dev +// schema version: 1 +{ + "schema_version": 1, + "test_id": "routes-m3-subnet-route-as-src", + "description": "routes multi, subnet route as src", + "category": "routes", + "captured_at": "2026-10-17T16:45:19.808301014Z", + "tool_version": "tscap/dev", + "tailnet": "odin@example.com", + "input": { + "api_response_code": 200, + "tailnet": { + "dns": {"magic_dns": false, "nameservers": [], "search_paths": [], "split_dns": {}}, + "settings": {} + }, + "scenario_hujson": " \n \n \n \n{\n\t\"id\": \"routes-m3-subnet-route-as-src\",\n\t\"category\": \"routes\",\n\t\"description\": \"routes multi, subnet route as src\",\n\t\"topology\": \"../_topologies/routes-multi.hujson\",\n\t\"tailnet\": {\n\t\t\"dns\": {\"magic_dns\": false, \"nameservers\": [], \"search_paths\": [], \"split_dns\": {}},\n\t\t\"settings\": {}\n\t},\n\t\"policy\": {\"tagOwners\": {\n\t\t\"tag:exit\": [\"odin@example.com\"],\n\t\t\"tag:prod\": [\"odin@example.com\"],\n\t\t\"tag:router\": [\"odin@example.com\"],\n\t\t\"tag:server\": [\"odin@example.com\"]\n\t}, \"autoApprovers\": {\"exitNode\": [\"tag:exit\"], \"routes\": {\n\t\t\"10.40.0.0/16\": [\"tag:router\"],\n\t\t\"10.40.7.0/24\": [\"tag:exit\"],\n\t\t\"fd00:40::/48\": [\"tag:router\"]\n\t}}, \"acls\": [\n\t\t{\"action\": \"accept\", \"src\": [\"10.40.3.0/24\"], \"dst\": [\"tag:server:*\"]},\n\t\t{\"action\": \"accept\", \"src\": [\"tag:prod\"], \"dst\": [\"*:*\"]}\n\t]}\n}\n", + "scenario_path": "scenarios/routes-multi/routes-m3-subnet-route-as-src.hujson", + "full_policy": {"acls": [ + {"action": "accept", "dst": ["tag:server:*"], "src": ["10.40.3.0/24"]}, + {"action": "accept", "dst": ["*:*"], "src": ["tag:prod"]} + ], "autoApprovers": {"exitNode": ["tag:exit"], "routes": { + "10.40.0.0/16": ["tag:router"], + "10.40.7.0/24": ["tag:exit"], + "fd00:40::/48": ["tag:router"] + }}, "tagOwners": { + "tag:exit": ["odin@example.com"], + "tag:prod": ["odin@example.com"], + "tag:router": ["odin@example.com"], + "tag:server": ["odin@example.com"] + }} + }, + "topology": {"users": [ + {"id": 1, "name": "odin", "email": "odin@example.com"}, + {"id": 2, "name": "thor", "email": "thor@example.org"} + ], "nodes": {"m-odin1": { + "hostname": "m-odin1", + "tags": [], + "ipv4": "100.64.0.1", + "ipv6": "fd7a:115c:a1e0::1", + "user": "odin", + "routable_ips": [], + "approved_routes": [] + }, "m-odin2": { + "hostname": "m-odin2", + "tags": [], + "ipv4": "100.64.0.2", + "ipv6": "fd7a:115c:a1e0::2", + "user": "odin", + "routable_ips": [], + "approved_routes": [] + }, "m-thor": { + "hostname": "m-thor", + "tags": [], + "ipv4": "100.64.0.3", + "ipv6": "fd7a:115c:a1e0::3", + "user": "thor", + "routable_ips": [], + "approved_routes": [] + }, "prod": { + "hostname": "prod", + "tags": ["tag:prod"], + "ipv4": "100.64.0.4", + "ipv6": "fd7a:115c:a1e0::4", + "routable_ips": [], + "approved_routes": [] + }, "r-exit": { + "hostname": "r-exit", + "tags": ["tag:exit"], + "ipv4": "100.64.0.5", + "ipv6": "fd7a:115c:a1e0::5", + "routable_ips": ["0.0.0.0/0", "::/0", "10.40.7.0/24"], + "approved_routes": ["0.0.0.0/0", "10.40.7.0/24", "::/0"] + }, "r-multi": { + "hostname": "r-multi", + "tags": ["tag:router"], + "ipv4": "100.64.0.6", + "ipv6": "fd7a:115c:a1e0::6", + "routable_ips": [ + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64", + "10.42.0.0/24" + ], + "approved_routes": [ + "10.40.1.0/24", + "10.40.3.0/24", + "10.40.1.0/25", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ] + }, "srv": { + "hostname": "srv", + "tags": ["tag:server"], + "ipv4": "100.64.0.7", + "ipv6": "fd7a:115c:a1e0::7", + "routable_ips": [], + "approved_routes": [] + }}}, + "captures": { + "m-odin1": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "Hostinfo": {"Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "MachineKey": "mkey:9af7099f480dca9442026b80e553a565230d54fd332794a6bdcc8189827f0251", + "Peers": [{ + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, + "m-odin2": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "Hostinfo": {"Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "MachineKey": "mkey:7a2a32a09046dd6b182646fd5c6afe1b9d70adc3da28e8914b15c9763a1d0247", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, + "m-thor": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "Hostinfo": {"Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "MachineKey": "mkey:b370bf06f7ad82c1bcd791691ebcc67ae896cae6ef1bd46768003015cef45428", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, + "prod": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 3103494431633216, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "Hostinfo": {"Hostname": "prod", "RequestTags": ["tag:prod"], "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Tags": ["tag:prod"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "MachineKey": "mkey:ad3fa6da1dedd424ffb1373e0e2fab33466e389a5ddf46258436fc5a41876e07", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-exit", "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053} + ]}, + "Created": "2026-10-17T16:44:12.478205794Z", + "Cap": 142, + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "Online": true, + "CapMap": {"suggest-exit-node": null}, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "3103494431633216": { + "ID": 3103494431633216, + "LoginName": "prod.tail78f774.ts.net", + "DisplayName": "prod" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, + "r-exit": {"packet_filter_rules": [{"SrcIPs": ["10.40.3.0/24"], "DstPorts": [ + {"IP": "100.64.0.7", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "fd7a:115c:a1e0::7", "Ports": {"First": 0, "Last": 65535}} + ]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["10.40.3.0/24"], + "SrcCaps": null, + "Dsts": [ + {"Net": "100.64.0.7/32", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "fd7a:115c:a1e0::7/128", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 6327930576193749, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "Hostinfo": { + "Hostname": "r-exit", + "RoutableIPs": ["0.0.0.0/0", "::/0", "10.40.7.0/24"], + "RequestTags": ["tag:exit"], + "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ] + }, + "Created": "2026-10-17T16:44:12.478205794Z", + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "MachineKey": "mkey:7452982dc03c5685ec1ac5b4565bf699b4db3349f5fc371cda2ea216125be65b", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["10.40.3.0/24"], + "SrcCaps": null, + "Dsts": [ + {"Net": "100.64.0.7/32", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "fd7a:115c:a1e0::7/128", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{"SrcIPs": ["10.40.3.0/24"], "DstPorts": [ + {"IP": "100.64.0.7", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "fd7a:115c:a1e0::7", "Ports": {"First": 0, "Last": 65535}} + ]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "6327930576193749": { + "ID": 6327930576193749, + "LoginName": "r-exit.tail78f774.ts.net", + "DisplayName": "r-exit" + }} + }}, + "r-multi": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 4573020226594765, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "Hostinfo": {"Hostname": "r-multi", "RoutableIPs": [ + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64", + "10.42.0.0/24" + ], "RequestTags": ["tag:router"], "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "MachineKey": "mkey:e71c3e50112d04bd566757901e89599ef98c07e3703dac12397aed6230c05b6a", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4573020226594765": { + "ID": 4573020226594765, + "LoginName": "r-multi.tail78f774.ts.net", + "DisplayName": "r-multi" + }} + }}, + "srv": {"packet_filter_rules": [{"SrcIPs": ["10.40.3.0/24"], "DstPorts": [ + {"IP": "100.64.0.7", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "fd7a:115c:a1e0::7", "Ports": {"First": 0, "Last": 65535}} + ]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["10.40.3.0/24"], + "SrcCaps": null, + "Dsts": [ + {"Net": "100.64.0.7/32", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "fd7a:115c:a1e0::7/128", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 3530479444222049, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "Hostinfo": {"Hostname": "srv", "RequestTags": ["tag:server"], "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Tags": ["tag:server"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "MachineKey": "mkey:248be9eace9253c09dba3b2fb5bf2713fb0e34628ebb8cb1c0ede784c0242a28", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128", "10.40.3.0/24"], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": ["10.40.3.0/24"], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["10.40.3.0/24"], + "SrcCaps": null, + "Dsts": [ + {"Net": "100.64.0.7/32", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "fd7a:115c:a1e0::7/128", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{"SrcIPs": ["10.40.3.0/24"], "DstPorts": [ + {"IP": "100.64.0.7", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "fd7a:115c:a1e0::7", "Ports": {"First": 0, "Last": 65535}} + ]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "3530479444222049": { + "ID": 3530479444222049, + "LoginName": "srv.tail78f774.ts.net", + "DisplayName": "srv" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }} + } +} diff --git a/hscontrol/policy/v2/testdata/routes_results/routes-m4-member-self.hujson b/hscontrol/policy/v2/testdata/routes_results/routes-m4-member-self.hujson new file mode 100644 index 000000000..40a4c4416 --- /dev/null +++ b/hscontrol/policy/v2/testdata/routes_results/routes-m4-member-self.hujson @@ -0,0 +1,7102 @@ +// routes-m4-member-self +// +// routes multi, member self +// +// Nodes with filter rules: 7 of 7 +// Captured at: 2026-10-17T16:45:51Z +// tool version: tscap/dev +// schema version: 1 +{ + "schema_version": 1, + "test_id": "routes-m4-member-self", + "description": "routes multi, member self", + "category": "routes", + "captured_at": "2026-10-17T16:45:51.767876246Z", + "tool_version": "tscap/dev", + "tailnet": "odin@example.com", + "input": { + "api_response_code": 200, + "tailnet": { + "dns": {"magic_dns": false, "nameservers": [], "search_paths": [], "split_dns": {}}, + "settings": {} + }, + "scenario_hujson": " \n \n \n \n{\n\t\"id\": \"routes-m4-member-self\",\n\t\"category\": \"routes\",\n\t\"description\": \"routes multi, member self\",\n\t\"topology\": \"../_topologies/routes-multi.hujson\",\n\t\"tailnet\": {\n\t\t\"dns\": {\"magic_dns\": false, \"nameservers\": [], \"search_paths\": [], \"split_dns\": {}},\n\t\t\"settings\": {}\n\t},\n\t\"policy\": {\"tagOwners\": {\n\t\t\"tag:exit\": [\"odin@example.com\"],\n\t\t\"tag:prod\": [\"odin@example.com\"],\n\t\t\"tag:router\": [\"odin@example.com\"],\n\t\t\"tag:server\": [\"odin@example.com\"]\n\t}, \"autoApprovers\": {\"exitNode\": [\"tag:exit\"], \"routes\": {\n\t\t\"10.40.0.0/16\": [\"tag:router\"],\n\t\t\"10.40.7.0/24\": [\"tag:exit\"],\n\t\t\"fd00:40::/48\": [\"tag:router\"]\n\t}}, \"acls\": [{\n\t\t\"action\": \"accept\",\n\t\t\"src\": [\"autogroup:member\"],\n\t\t\"dst\": [\"autogroup:self:*\"]\n\t}, {\"action\": \"accept\", \"src\": [\"tag:prod\"], \"dst\": [\"*:*\"]}]}\n}\n", + "scenario_path": "scenarios/routes-multi/routes-m4-member-self.hujson", + "full_policy": { + "acls": [{ + "action": "accept", + "dst": ["autogroup:self:*"], + "src": ["autogroup:member"] + }, {"action": "accept", "dst": ["*:*"], "src": ["tag:prod"]}], + "autoApprovers": {"exitNode": ["tag:exit"], "routes": { + "10.40.0.0/16": ["tag:router"], + "10.40.7.0/24": ["tag:exit"], + "fd00:40::/48": ["tag:router"] + }}, + "tagOwners": { + "tag:exit": ["odin@example.com"], + "tag:prod": ["odin@example.com"], + "tag:router": ["odin@example.com"], + "tag:server": ["odin@example.com"] + } + } + }, + "topology": {"users": [ + {"id": 1, "name": "odin", "email": "odin@example.com"}, + {"id": 2, "name": "thor", "email": "thor@example.org"} + ], "nodes": {"m-odin1": { + "hostname": "m-odin1", + "tags": [], + "ipv4": "100.64.0.1", + "ipv6": "fd7a:115c:a1e0::1", + "user": "odin", + "routable_ips": [], + "approved_routes": [] + }, "m-odin2": { + "hostname": "m-odin2", + "tags": [], + "ipv4": "100.64.0.2", + "ipv6": "fd7a:115c:a1e0::2", + "user": "odin", + "routable_ips": [], + "approved_routes": [] + }, "m-thor": { + "hostname": "m-thor", + "tags": [], + "ipv4": "100.64.0.3", + "ipv6": "fd7a:115c:a1e0::3", + "user": "thor", + "routable_ips": [], + "approved_routes": [] + }, "prod": { + "hostname": "prod", + "tags": ["tag:prod"], + "ipv4": "100.64.0.4", + "ipv6": "fd7a:115c:a1e0::4", + "routable_ips": [], + "approved_routes": [] + }, "r-exit": { + "hostname": "r-exit", + "tags": ["tag:exit"], + "ipv4": "100.64.0.5", + "ipv6": "fd7a:115c:a1e0::5", + "routable_ips": ["0.0.0.0/0", "::/0", "10.40.7.0/24"], + "approved_routes": ["0.0.0.0/0", "10.40.7.0/24", "::/0"] + }, "r-multi": { + "hostname": "r-multi", + "tags": ["tag:router"], + "ipv4": "100.64.0.6", + "ipv6": "fd7a:115c:a1e0::6", + "routable_ips": [ + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64", + "10.42.0.0/24" + ], + "approved_routes": [ + "10.40.1.0/24", + "10.40.3.0/24", + "10.40.1.0/25", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ] + }, "srv": { + "hostname": "srv", + "tags": ["tag:server"], + "ipv4": "100.64.0.7", + "ipv6": "fd7a:115c:a1e0::7", + "routable_ips": [], + "approved_routes": [] + }}}, + "captures": {"m-odin1": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.1", "100.64.0.2", "fd7a:115c:a1e0::1", "fd7a:115c:a1e0::2"], + "DstPorts": [ + {"IP": "100.64.0.1", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "fd7a:115c:a1e0::1", "Ports": {"First": 0, "Last": 65535}} + ] + }, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "100.64.0.1/32", + "100.64.0.2/32", + "fd7a:115c:a1e0::1/128", + "fd7a:115c:a1e0::2/128" + ], "SrcCaps": null, "Dsts": [ + {"Net": "100.64.0.1/32", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "fd7a:115c:a1e0::1/128", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "Hostinfo": {"Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "MachineKey": "mkey:9af7099f480dca9442026b80e553a565230d54fd332794a6bdcc8189827f0251", + "Peers": [{ + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "100.64.0.1/32", + "100.64.0.2/32", + "fd7a:115c:a1e0::1/128", + "fd7a:115c:a1e0::2/128" + ], "SrcCaps": null, "Dsts": [ + {"Net": "100.64.0.1/32", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "fd7a:115c:a1e0::1/128", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.1", "100.64.0.2", "fd7a:115c:a1e0::1", "fd7a:115c:a1e0::2"], + "DstPorts": [ + {"IP": "100.64.0.1", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "fd7a:115c:a1e0::1", "Ports": {"First": 0, "Last": 65535}} + ] + }, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "m-odin2": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.1", "100.64.0.2", "fd7a:115c:a1e0::1", "fd7a:115c:a1e0::2"], + "DstPorts": [ + {"IP": "100.64.0.2", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "fd7a:115c:a1e0::2", "Ports": {"First": 0, "Last": 65535}} + ] + }, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "100.64.0.1/32", + "100.64.0.2/32", + "fd7a:115c:a1e0::1/128", + "fd7a:115c:a1e0::2/128" + ], "SrcCaps": null, "Dsts": [ + {"Net": "100.64.0.2/32", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "fd7a:115c:a1e0::2/128", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "Hostinfo": {"Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "MachineKey": "mkey:7a2a32a09046dd6b182646fd5c6afe1b9d70adc3da28e8914b15c9763a1d0247", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "100.64.0.1/32", + "100.64.0.2/32", + "fd7a:115c:a1e0::1/128", + "fd7a:115c:a1e0::2/128" + ], "SrcCaps": null, "Dsts": [ + {"Net": "100.64.0.2/32", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "fd7a:115c:a1e0::2/128", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.1", "100.64.0.2", "fd7a:115c:a1e0::1", "fd7a:115c:a1e0::2"], + "DstPorts": [ + {"IP": "100.64.0.2", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "fd7a:115c:a1e0::2", "Ports": {"First": 0, "Last": 65535}} + ] + }, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "m-thor": { + "packet_filter_rules": [{"SrcIPs": ["100.64.0.3", "fd7a:115c:a1e0::3"], "DstPorts": [ + {"IP": "100.64.0.3", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "fd7a:115c:a1e0::3", "Ports": {"First": 0, "Last": 65535}} + ]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "100.64.0.3/32", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "fd7a:115c:a1e0::3/128", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "netmap": { + "Cached": false, + "SelfNode": { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "Hostinfo": {"Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "MachineKey": "mkey:b370bf06f7ad82c1bcd791691ebcc67ae896cae6ef1bd46768003015cef45428", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "100.64.0.3/32", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "fd7a:115c:a1e0::3/128", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{"SrcIPs": ["100.64.0.3", "fd7a:115c:a1e0::3"], "DstPorts": [ + {"IP": "100.64.0.3", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "fd7a:115c:a1e0::3", "Ports": {"First": 0, "Last": 65535}} + ]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + } + }, "prod": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 3103494431633216, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "Hostinfo": {"Hostname": "prod", "RequestTags": ["tag:prod"], "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Tags": ["tag:prod"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "MachineKey": "mkey:ad3fa6da1dedd424ffb1373e0e2fab33466e389a5ddf46258436fc5a41876e07", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-exit", "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053} + ]}, + "Created": "2026-10-17T16:44:12.478205794Z", + "Cap": 142, + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "Online": true, + "CapMap": {"suggest-exit-node": null}, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "3103494431633216": { + "ID": 3103494431633216, + "LoginName": "prod.tail78f774.ts.net", + "DisplayName": "prod" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "r-exit": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.1", "100.64.0.2", "fd7a:115c:a1e0::1", "fd7a:115c:a1e0::2"], + "DstPorts": [ + {"IP": "100.64.0.1", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "100.64.0.2", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "fd7a:115c:a1e0::1", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "fd7a:115c:a1e0::2", "Ports": {"First": 0, "Last": 65535}} + ] + }, {"SrcIPs": ["100.64.0.3", "fd7a:115c:a1e0::3"], "DstPorts": [ + {"IP": "100.64.0.3", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "fd7a:115c:a1e0::3", "Ports": {"First": 0, "Last": 65535}} + ]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "100.64.0.1/32", + "100.64.0.2/32", + "fd7a:115c:a1e0::1/128", + "fd7a:115c:a1e0::2/128" + ], "SrcCaps": null, "Dsts": [ + {"Net": "100.64.0.1/32", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "100.64.0.2/32", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "fd7a:115c:a1e0::1/128", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "fd7a:115c:a1e0::2/128", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "100.64.0.3/32", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "fd7a:115c:a1e0::3/128", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 6327930576193749, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "Hostinfo": { + "Hostname": "r-exit", + "RoutableIPs": ["0.0.0.0/0", "::/0", "10.40.7.0/24"], + "RequestTags": ["tag:exit"], + "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ] + }, + "Created": "2026-10-17T16:44:12.478205794Z", + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "MachineKey": "mkey:7452982dc03c5685ec1ac5b4565bf699b4db3349f5fc371cda2ea216125be65b", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "100.64.0.1/32", + "100.64.0.2/32", + "fd7a:115c:a1e0::1/128", + "fd7a:115c:a1e0::2/128" + ], "SrcCaps": null, "Dsts": [ + {"Net": "100.64.0.1/32", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "100.64.0.2/32", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "fd7a:115c:a1e0::1/128", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "fd7a:115c:a1e0::2/128", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "100.64.0.3/32", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "fd7a:115c:a1e0::3/128", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.1", "100.64.0.2", "fd7a:115c:a1e0::1", "fd7a:115c:a1e0::2"], + "DstPorts": [ + {"IP": "100.64.0.1", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "100.64.0.2", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "fd7a:115c:a1e0::1", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "fd7a:115c:a1e0::2", "Ports": {"First": 0, "Last": 65535}} + ] + }, {"SrcIPs": ["100.64.0.3", "fd7a:115c:a1e0::3"], "DstPorts": [ + {"IP": "100.64.0.3", "Ports": {"First": 0, "Last": 65535}}, + {"IP": "fd7a:115c:a1e0::3", "Ports": {"First": 0, "Last": 65535}} + ]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "6327930576193749": { + "ID": 6327930576193749, + "LoginName": "r-exit.tail78f774.ts.net", + "DisplayName": "r-exit" + }} + }}, "r-multi": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 4573020226594765, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "Hostinfo": {"Hostname": "r-multi", "RoutableIPs": [ + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64", + "10.42.0.0/24" + ], "RequestTags": ["tag:router"], "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "MachineKey": "mkey:e71c3e50112d04bd566757901e89599ef98c07e3703dac12397aed6230c05b6a", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4573020226594765": { + "ID": 4573020226594765, + "LoginName": "r-multi.tail78f774.ts.net", + "DisplayName": "r-multi" + }} + }}, "srv": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 3530479444222049, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "Hostinfo": {"Hostname": "srv", "RequestTags": ["tag:server"], "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Tags": ["tag:server"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "MachineKey": "mkey:248be9eace9253c09dba3b2fb5bf2713fb0e34628ebb8cb1c0ede784c0242a28", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "3530479444222049": { + "ID": 3530479444222049, + "LoginName": "srv.tail78f774.ts.net", + "DisplayName": "srv" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}} +} diff --git a/hscontrol/policy/v2/testdata/routes_results/routes-m5-wildcard-all.hujson b/hscontrol/policy/v2/testdata/routes_results/routes-m5-wildcard-all.hujson new file mode 100644 index 000000000..0cca9554b --- /dev/null +++ b/hscontrol/policy/v2/testdata/routes_results/routes-m5-wildcard-all.hujson @@ -0,0 +1,8326 @@ +// routes-m5-wildcard-all +// +// routes multi, wildcard all +// +// Nodes with filter rules: 7 of 7 +// Captured at: 2026-10-17T16:46:23Z +// tool version: tscap/dev +// schema version: 1 +{ + "schema_version": 1, + "test_id": "routes-m5-wildcard-all", + "description": "routes multi, wildcard all", + "category": "routes", + "captured_at": "2026-10-17T16:46:23.772614287Z", + "tool_version": "tscap/dev", + "tailnet": "odin@example.com", + "input": { + "api_response_code": 200, + "tailnet": { + "dns": {"magic_dns": false, "nameservers": [], "search_paths": [], "split_dns": {}}, + "settings": {} + }, + "scenario_hujson": " \n \n \n \n{\n\t\"id\": \"routes-m5-wildcard-all\",\n\t\"category\": \"routes\",\n\t\"description\": \"routes multi, wildcard all\",\n\t\"topology\": \"../_topologies/routes-multi.hujson\",\n\t\"tailnet\": {\n\t\t\"dns\": {\"magic_dns\": false, \"nameservers\": [], \"search_paths\": [], \"split_dns\": {}},\n\t\t\"settings\": {}\n\t},\n\t\"policy\": {\"tagOwners\": {\n\t\t\"tag:exit\": [\"odin@example.com\"],\n\t\t\"tag:prod\": [\"odin@example.com\"],\n\t\t\"tag:router\": [\"odin@example.com\"],\n\t\t\"tag:server\": [\"odin@example.com\"]\n\t}, \"autoApprovers\": {\"exitNode\": [\"tag:exit\"], \"routes\": {\n\t\t\"10.40.0.0/16\": [\"tag:router\"],\n\t\t\"10.40.7.0/24\": [\"tag:exit\"],\n\t\t\"fd00:40::/48\": [\"tag:router\"]\n\t}}, \"acls\": [\n\t\t{\"action\": \"accept\", \"src\": [\"*\"], \"dst\": [\"*:*\"]},\n\t\t{\"action\": \"accept\", \"src\": [\"tag:prod\"], \"dst\": [\"*:*\"]}\n\t]}\n}\n", + "scenario_path": "scenarios/routes-multi/routes-m5-wildcard-all.hujson", + "full_policy": {"acls": [ + {"action": "accept", "dst": ["*:*"], "src": ["*"]}, + {"action": "accept", "dst": ["*:*"], "src": ["tag:prod"]} + ], "autoApprovers": {"exitNode": ["tag:exit"], "routes": { + "10.40.0.0/16": ["tag:router"], + "10.40.7.0/24": ["tag:exit"], + "fd00:40::/48": ["tag:router"] + }}, "tagOwners": { + "tag:exit": ["odin@example.com"], + "tag:prod": ["odin@example.com"], + "tag:router": ["odin@example.com"], + "tag:server": ["odin@example.com"] + }} + }, + "topology": {"users": [ + {"id": 1, "name": "odin", "email": "odin@example.com"}, + {"id": 2, "name": "thor", "email": "thor@example.org"} + ], "nodes": {"m-odin1": { + "hostname": "m-odin1", + "tags": [], + "ipv4": "100.64.0.1", + "ipv6": "fd7a:115c:a1e0::1", + "user": "odin", + "routable_ips": [], + "approved_routes": [] + }, "m-odin2": { + "hostname": "m-odin2", + "tags": [], + "ipv4": "100.64.0.2", + "ipv6": "fd7a:115c:a1e0::2", + "user": "odin", + "routable_ips": [], + "approved_routes": [] + }, "m-thor": { + "hostname": "m-thor", + "tags": [], + "ipv4": "100.64.0.3", + "ipv6": "fd7a:115c:a1e0::3", + "user": "thor", + "routable_ips": [], + "approved_routes": [] + }, "prod": { + "hostname": "prod", + "tags": ["tag:prod"], + "ipv4": "100.64.0.4", + "ipv6": "fd7a:115c:a1e0::4", + "routable_ips": [], + "approved_routes": [] + }, "r-exit": { + "hostname": "r-exit", + "tags": ["tag:exit"], + "ipv4": "100.64.0.5", + "ipv6": "fd7a:115c:a1e0::5", + "routable_ips": ["0.0.0.0/0", "::/0", "10.40.7.0/24"], + "approved_routes": ["0.0.0.0/0", "10.40.7.0/24", "::/0"] + }, "r-multi": { + "hostname": "r-multi", + "tags": ["tag:router"], + "ipv4": "100.64.0.6", + "ipv6": "fd7a:115c:a1e0::6", + "routable_ips": [ + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64", + "10.42.0.0/24" + ], + "approved_routes": [ + "10.40.1.0/24", + "10.40.3.0/24", + "10.40.1.0/25", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ] + }, "srv": { + "hostname": "srv", + "tags": ["tag:server"], + "ipv4": "100.64.0.7", + "ipv6": "fd7a:115c:a1e0::7", + "routable_ips": [], + "approved_routes": [] + }}}, + "captures": {"m-odin1": {"packet_filter_rules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "Hostinfo": {"Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "MachineKey": "mkey:9af7099f480dca9442026b80e553a565230d54fd332794a6bdcc8189827f0251", + "Peers": [{ + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-exit", "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053} + ]}, + "Created": "2026-10-17T16:44:12.478205794Z", + "Cap": 142, + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "Online": true, + "CapMap": {"suggest-exit-node": null}, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "m-odin2": {"packet_filter_rules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "Hostinfo": {"Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "MachineKey": "mkey:7a2a32a09046dd6b182646fd5c6afe1b9d70adc3da28e8914b15c9763a1d0247", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-exit", "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053} + ]}, + "Created": "2026-10-17T16:44:12.478205794Z", + "Cap": 142, + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "Online": true, + "CapMap": {"suggest-exit-node": null}, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "m-thor": {"packet_filter_rules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "Hostinfo": {"Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "MachineKey": "mkey:b370bf06f7ad82c1bcd791691ebcc67ae896cae6ef1bd46768003015cef45428", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-exit", "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053} + ]}, + "Created": "2026-10-17T16:44:12.478205794Z", + "Cap": 142, + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "Online": true, + "CapMap": {"suggest-exit-node": null}, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "prod": {"packet_filter_rules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 3103494431633216, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "Hostinfo": {"Hostname": "prod", "RequestTags": ["tag:prod"], "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Tags": ["tag:prod"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "MachineKey": "mkey:ad3fa6da1dedd424ffb1373e0e2fab33466e389a5ddf46258436fc5a41876e07", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-exit", "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053} + ]}, + "Created": "2026-10-17T16:44:12.478205794Z", + "Cap": 142, + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "Online": true, + "CapMap": {"suggest-exit-node": null}, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "3103494431633216": { + "ID": 3103494431633216, + "LoginName": "prod.tail78f774.ts.net", + "DisplayName": "prod" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "r-exit": {"packet_filter_rules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 6327930576193749, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "Hostinfo": { + "Hostname": "r-exit", + "RoutableIPs": ["0.0.0.0/0", "::/0", "10.40.7.0/24"], + "RequestTags": ["tag:exit"], + "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ] + }, + "Created": "2026-10-17T16:44:12.478205794Z", + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "MachineKey": "mkey:7452982dc03c5685ec1ac5b4565bf699b4db3349f5fc371cda2ea216125be65b", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }, "6327930576193749": { + "ID": 6327930576193749, + "LoginName": "r-exit.tail78f774.ts.net", + "DisplayName": "r-exit" + }} + }}, "r-multi": {"packet_filter_rules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 4573020226594765, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "Hostinfo": {"Hostname": "r-multi", "RoutableIPs": [ + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64", + "10.42.0.0/24" + ], "RequestTags": ["tag:router"], "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "MachineKey": "mkey:e71c3e50112d04bd566757901e89599ef98c07e3703dac12397aed6230c05b6a", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-exit", "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053} + ]}, + "Created": "2026-10-17T16:44:12.478205794Z", + "Cap": 142, + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "Online": true, + "CapMap": {"suggest-exit-node": null}, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }, "4573020226594765": { + "ID": 4573020226594765, + "LoginName": "r-multi.tail78f774.ts.net", + "DisplayName": "r-multi" + }} + }}, "srv": {"packet_filter_rules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 3530479444222049, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "Hostinfo": {"Hostname": "srv", "RequestTags": ["tag:server"], "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Tags": ["tag:server"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "MachineKey": "mkey:248be9eace9253c09dba3b2fb5bf2713fb0e34628ebb8cb1c0ede784c0242a28", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-exit", "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053} + ]}, + "Created": "2026-10-17T16:44:12.478205794Z", + "Cap": 142, + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "Online": true, + "CapMap": {"suggest-exit-node": null}, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{"IPProto": [6, 17, 1, 58], "Srcs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0/23", + "100.115.96.0/19", + "100.115.128.0/17", + "100.116.0.0/14", + "100.120.0.0/13", + "100.64.0.0/11", + "100.96.0.0/12", + "100.112.0.0/15", + "100.114.0.0/16", + "100.115.0.0/18", + "100.115.64.0/20", + "100.115.80.0/21", + "100.115.88.0/22", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "SrcCaps": null, "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], "Caps": []}, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{"SrcIPs": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.7.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "100.115.94.0-100.127.255.255", + "100.64.0.0-100.115.91.255", + "fd00:40::/64", + "fd7a:115c:a1e0::/48" + ], "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}]}, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "3530479444222049": { + "ID": 3530479444222049, + "LoginName": "srv.tail78f774.ts.net", + "DisplayName": "srv" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}} +} diff --git a/hscontrol/policy/v2/testdata/routes_results/routes-m6-subnet-to-subnet-multi-route.hujson b/hscontrol/policy/v2/testdata/routes_results/routes-m6-subnet-to-subnet-multi-route.hujson new file mode 100644 index 000000000..f93987a97 --- /dev/null +++ b/hscontrol/policy/v2/testdata/routes_results/routes-m6-subnet-to-subnet-multi-route.hujson @@ -0,0 +1,7026 @@ +// routes-m6-subnet-to-subnet-multi-route +// +// routes multi, subnet to subnet multi route +// +// Nodes with filter rules: 7 of 7 +// Captured at: 2026-10-17T16:46:55Z +// tool version: tscap/dev +// schema version: 1 +{ + "schema_version": 1, + "test_id": "routes-m6-subnet-to-subnet-multi-route", + "description": "routes multi, subnet to subnet multi route", + "category": "routes", + "captured_at": "2026-10-17T16:46:55.791527388Z", + "tool_version": "tscap/dev", + "tailnet": "odin@example.com", + "input": { + "api_response_code": 200, + "tailnet": { + "dns": {"magic_dns": false, "nameservers": [], "search_paths": [], "split_dns": {}}, + "settings": {} + }, + "scenario_hujson": " \n \n \n \n{\n\t\"id\": \"routes-m6-subnet-to-subnet-multi-route\",\n\t\"category\": \"routes\",\n\t\"description\": \"routes multi, subnet to subnet multi route\",\n\t\"topology\": \"../_topologies/routes-multi.hujson\",\n\t\"tailnet\": {\n\t\t\"dns\": {\"magic_dns\": false, \"nameservers\": [], \"search_paths\": [], \"split_dns\": {}},\n\t\t\"settings\": {}\n\t},\n\t\"policy\": {\"tagOwners\": {\n\t\t\"tag:exit\": [\"odin@example.com\"],\n\t\t\"tag:prod\": [\"odin@example.com\"],\n\t\t\"tag:router\": [\"odin@example.com\"],\n\t\t\"tag:server\": [\"odin@example.com\"]\n\t}, \"autoApprovers\": {\"exitNode\": [\"tag:exit\"], \"routes\": {\n\t\t\"10.40.0.0/16\": [\"tag:router\"],\n\t\t\"10.40.7.0/24\": [\"tag:exit\"],\n\t\t\"fd00:40::/48\": [\"tag:router\"]\n\t}}, \"acls\": [\n\t\t{\"action\": \"accept\", \"src\": [\"10.40.3.0/24\"], \"dst\": [\"10.40.7.0/24:*\"]},\n\t\t{\"action\": \"accept\", \"src\": [\"tag:prod\"], \"dst\": [\"*:*\"]}\n\t]}\n}\n", + "scenario_path": "scenarios/routes-multi/routes-m6-subnet-to-subnet-multi-route.hujson", + "full_policy": {"acls": [ + {"action": "accept", "dst": ["10.40.7.0/24:*"], "src": ["10.40.3.0/24"]}, + {"action": "accept", "dst": ["*:*"], "src": ["tag:prod"]} + ], "autoApprovers": {"exitNode": ["tag:exit"], "routes": { + "10.40.0.0/16": ["tag:router"], + "10.40.7.0/24": ["tag:exit"], + "fd00:40::/48": ["tag:router"] + }}, "tagOwners": { + "tag:exit": ["odin@example.com"], + "tag:prod": ["odin@example.com"], + "tag:router": ["odin@example.com"], + "tag:server": ["odin@example.com"] + }} + }, + "topology": {"users": [ + {"id": 1, "name": "odin", "email": "odin@example.com"}, + {"id": 2, "name": "thor", "email": "thor@example.org"} + ], "nodes": {"m-odin1": { + "hostname": "m-odin1", + "tags": [], + "ipv4": "100.64.0.1", + "ipv6": "fd7a:115c:a1e0::1", + "user": "odin", + "routable_ips": [], + "approved_routes": [] + }, "m-odin2": { + "hostname": "m-odin2", + "tags": [], + "ipv4": "100.64.0.2", + "ipv6": "fd7a:115c:a1e0::2", + "user": "odin", + "routable_ips": [], + "approved_routes": [] + }, "m-thor": { + "hostname": "m-thor", + "tags": [], + "ipv4": "100.64.0.3", + "ipv6": "fd7a:115c:a1e0::3", + "user": "thor", + "routable_ips": [], + "approved_routes": [] + }, "prod": { + "hostname": "prod", + "tags": ["tag:prod"], + "ipv4": "100.64.0.4", + "ipv6": "fd7a:115c:a1e0::4", + "routable_ips": [], + "approved_routes": [] + }, "r-exit": { + "hostname": "r-exit", + "tags": ["tag:exit"], + "ipv4": "100.64.0.5", + "ipv6": "fd7a:115c:a1e0::5", + "routable_ips": ["0.0.0.0/0", "::/0", "10.40.7.0/24"], + "approved_routes": ["0.0.0.0/0", "10.40.7.0/24", "::/0"] + }, "r-multi": { + "hostname": "r-multi", + "tags": ["tag:router"], + "ipv4": "100.64.0.6", + "ipv6": "fd7a:115c:a1e0::6", + "routable_ips": [ + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64", + "10.42.0.0/24" + ], + "approved_routes": [ + "10.40.1.0/24", + "10.40.3.0/24", + "10.40.1.0/25", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ] + }, "srv": { + "hostname": "srv", + "tags": ["tag:server"], + "ipv4": "100.64.0.7", + "ipv6": "fd7a:115c:a1e0::7", + "routable_ips": [], + "approved_routes": [] + }}}, + "captures": {"m-odin1": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "Hostinfo": {"Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "MachineKey": "mkey:9af7099f480dca9442026b80e553a565230d54fd332794a6bdcc8189827f0251", + "Peers": [{ + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "m-odin2": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "Hostinfo": {"Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "MachineKey": "mkey:7a2a32a09046dd6b182646fd5c6afe1b9d70adc3da28e8914b15c9763a1d0247", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "m-thor": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "Hostinfo": {"Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-admin": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-admin", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "MachineKey": "mkey:b370bf06f7ad82c1bcd791691ebcc67ae896cae6ef1bd46768003015cef45428", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "prod": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 3103494431633216, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "Hostinfo": {"Hostname": "prod", "RequestTags": ["tag:prod"], "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Tags": ["tag:prod"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "MachineKey": "mkey:ad3fa6da1dedd424ffb1373e0e2fab33466e389a5ddf46258436fc5a41876e07", + "Peers": [{ + "ID": 8165746343955729, + "StableID": "nEda8yJHm621CNTRL", + "Name": "m-odin1.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:e6c397531c7ed3ae6c5e7330d4143e6eb3ef102950ca99259f26e13dd973a03a", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:8de5e9963c6345870c5e123439949f1ea45066551d4170b076a5ecec312ff535", + "Addresses": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "AllowedIPs": ["100.64.0.1/32", "fd7a:115c:a1e0::1/128"], + "Endpoints": [ + "192.0.2.1:33256", + "198.51.100.1:33256", + "198.51.100.2:33256", + "198.51.100.3:33256" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin1", "Services": [ + {"Proto": "peerapi4", "Port": 58436}, + {"Proto": "peerapi6", "Port": 58436} + ]}, + "Created": "2026-10-17T16:44:10.247703717Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin1", + "ComputedNameWithHost": "m-odin1" + }, { + "ID": 2548501760745816, + "StableID": "nHjSfYpDuL11CNTRL", + "Name": "m-odin2.tail78f774.ts.net.", + "User": 4156223528223174, + "Key": "nodekey:ef0ee2f87251bef1fd40ed4c79c0df768a39afb4c66a34a704f1fac5ddfd2051", + "KeyExpiry": "2027-04-15T16:44:10Z", + "DiscoKey": "discokey:4b9bcc9e8d17ab3fd3e16bfe38eb9d7d267120381f0824ee30f4ead036259915", + "Addresses": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "AllowedIPs": ["100.64.0.2/32", "fd7a:115c:a1e0::2/128"], + "Endpoints": [ + "192.0.2.1:45910", + "198.51.100.1:45910", + "198.51.100.2:45910", + "198.51.100.3:45910" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-odin2", "Services": [ + {"Proto": "peerapi4", "Port": 46590}, + {"Proto": "peerapi6", "Port": 46590} + ]}, + "Created": "2026-10-17T16:44:10.801263111Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-odin2", + "ComputedNameWithHost": "m-odin2" + }, { + "ID": 8003945547446361, + "StableID": "nJVdoU51W521CNTRL", + "Name": "m-thor.tail78f774.ts.net.", + "User": 4538565228176803, + "Key": "nodekey:d872d4a9352b64505625376b27434e46bdc4cbf087b2e7cf8733eb66eb49c146", + "KeyExpiry": "2027-04-15T16:44:11Z", + "DiscoKey": "discokey:128af54b1e568e27176803e2a12ffc431e80a51120024de6e1ac7523aed9e35d", + "Addresses": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "AllowedIPs": ["100.64.0.3/32", "fd7a:115c:a1e0::3/128"], + "Endpoints": [ + "192.0.2.1:52008", + "198.51.100.1:52008", + "198.51.100.2:52008", + "198.51.100.3:52008" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "m-thor", "Services": [ + {"Proto": "peerapi4", "Port": 34152}, + {"Proto": "peerapi6", "Port": 34152} + ]}, + "Created": "2026-10-17T16:44:11.354975975Z", + "Cap": 142, + "Online": true, + "ComputedName": "m-thor", + "ComputedNameWithHost": "m-thor" + }, { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-exit", "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053} + ]}, + "Created": "2026-10-17T16:44:12.478205794Z", + "Cap": 142, + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "Online": true, + "CapMap": {"suggest-exit-node": null}, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }, { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "srv", "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Cap": 142, + "Tags": ["tag:server"], + "Online": true, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "3103494431633216": { + "ID": 3103494431633216, + "LoginName": "prod.tail78f774.ts.net", + "DisplayName": "prod" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}, "r-exit": {"packet_filter_rules": [{ + "SrcIPs": ["10.40.3.0/24"], + "DstPorts": [{"IP": "10.40.7.0/24", "Ports": {"First": 0, "Last": 65535}}] + }, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["10.40.3.0/24"], + "SrcCaps": null, + "Dsts": [{"Net": "10.40.7.0/24", "Ports": {"First": 0, "Last": 65535}}], + "Caps": [] + }, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 6327930576193749, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": [ + "100.64.0.5/32", + "fd7a:115c:a1e0::5/128", + "0.0.0.0/0", + "::/0", + "10.40.7.0/24" + ], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "Hostinfo": { + "Hostname": "r-exit", + "RoutableIPs": ["0.0.0.0/0", "::/0", "10.40.7.0/24"], + "RequestTags": ["tag:exit"], + "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ] + }, + "Created": "2026-10-17T16:44:12.478205794Z", + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "MachineKey": "mkey:7452982dc03c5685ec1ac5b4565bf699b4db3349f5fc371cda2ea216125be65b", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128", "10.40.3.0/24"], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-multi", "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Cap": 142, + "Tags": ["tag:router"], + "PrimaryRoutes": ["10.40.3.0/24"], + "Online": true, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["10.40.3.0/24"], + "SrcCaps": null, + "Dsts": [{"Net": "10.40.7.0/24", "Ports": {"First": 0, "Last": 65535}}], + "Caps": [] + }, { + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["10.40.3.0/24"], + "DstPorts": [{"IP": "10.40.7.0/24", "Ports": {"First": 0, "Last": 65535}}] + }, { + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "6327930576193749": { + "ID": 6327930576193749, + "LoginName": "r-exit.tail78f774.ts.net", + "DisplayName": "r-exit" + }} + }}, "r-multi": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 4573020226594765, + "StableID": "nQURrEV8ic11CNTRL", + "Name": "r-multi.tail78f774.ts.net.", + "User": 4573020226594765, + "Key": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "DiscoKey": "discokey:131ec5724e97462dfe1ce66af270e7c37d3a236291ae60ac7a04149d042d9b47", + "Addresses": ["100.64.0.6/32", "fd7a:115c:a1e0::6/128"], + "AllowedIPs": [ + "100.64.0.6/32", + "fd7a:115c:a1e0::6/128", + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64" + ], + "Endpoints": [ + "192.0.2.1:58800", + "198.51.100.1:58800", + "198.51.100.2:58800", + "198.51.100.3:58800" + ], + "Hostinfo": {"Hostname": "r-multi", "RoutableIPs": [ + "10.40.3.0/24", + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.9.77/32", + "10.40.9.5/32", + "fd00:40::/64", + "10.42.0.0/24" + ], "RequestTags": ["tag:router"], "Services": [ + {"Proto": "peerapi4", "Port": 61927}, + {"Proto": "peerapi6", "Port": 61927}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:13.022430686Z", + "Tags": ["tag:router"], + "PrimaryRoutes": [ + "10.40.1.0/24", + "10.40.1.0/25", + "10.40.3.0/24", + "10.40.9.5/32", + "10.40.9.77/32", + "fd00:40::/64" + ], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "r-multi", + "ComputedNameWithHost": "r-multi" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:06707938186b0dbd05be81492fd7c6e0a385d679d066961029e5497f543b6306", + "MachineKey": "mkey:e71c3e50112d04bd566757901e89599ef98c07e3703dac12397aed6230c05b6a", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }, { + "ID": 6327930576193749, + "StableID": "nLpC3M1wQr11CNTRL", + "Name": "r-exit.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:8b3d05d19cfa2fc0560a7bc0b56fa1250107b3a1cfcf2465a2ece17882f56e06", + "DiscoKey": "discokey:45242bd018157640535e070834dbcb2b90ade22d15fbf7911362e1e288bc465d", + "Addresses": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128"], + "AllowedIPs": ["100.64.0.5/32", "fd7a:115c:a1e0::5/128", "10.40.7.0/24"], + "Endpoints": [ + "192.0.2.1:33136", + "198.51.100.1:33136", + "198.51.100.2:33136", + "198.51.100.3:33136" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "r-exit", "Services": [ + {"Proto": "peerapi4", "Port": 41053}, + {"Proto": "peerapi6", "Port": 41053} + ]}, + "Created": "2026-10-17T16:44:12.478205794Z", + "Cap": 142, + "Tags": ["tag:exit"], + "PrimaryRoutes": ["10.40.7.0/24"], + "Online": true, + "CapMap": {"suggest-exit-node": null}, + "ComputedName": "r-exit", + "ComputedNameWithHost": "r-exit" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "4573020226594765": { + "ID": 4573020226594765, + "LoginName": "r-multi.tail78f774.ts.net", + "DisplayName": "r-multi" + }} + }}, "srv": {"packet_filter_rules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], "packet_filter_matches": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], "netmap": { + "Cached": false, + "SelfNode": { + "ID": 3530479444222049, + "StableID": "nkUmv5ixZU11CNTRL", + "Name": "srv.tail78f774.ts.net.", + "User": 3530479444222049, + "Key": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "DiscoKey": "discokey:308a91f415335791379bcfb4017c63be220e4422eb41432315176f6d34a3cb31", + "Addresses": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "AllowedIPs": ["100.64.0.7/32", "fd7a:115c:a1e0::7/128"], + "Endpoints": [ + "192.0.2.1:42117", + "198.51.100.1:42117", + "198.51.100.2:42117", + "198.51.100.3:42117" + ], + "Hostinfo": {"Hostname": "srv", "RequestTags": ["tag:server"], "Services": [ + {"Proto": "peerapi4", "Port": 49521}, + {"Proto": "peerapi6", "Port": 49521}, + {"Proto": "peerapi-dns-proxy", "Port": 1} + ]}, + "Created": "2026-10-17T16:44:13.568685622Z", + "Tags": ["tag:server"], + "MachineAuthorized": true, + "CapMap": { + "default-auto-update": [false], + "https://tailscale.com/cap/file-sharing": null, + "https://tailscale.com/cap/is-owner": null, + "https://tailscale.com/cap/ssh": null, + "https://tailscale.com/cap/tailnet-lock": null, + "probe-udp-lifetime": null, + "ssh-behavior-v1": null, + "ssh-env-vars": null, + "store-appc-routes": null, + "tailnet-display-name": ["odin@example.com"] + }, + "ComputedName": "srv", + "ComputedNameWithHost": "srv" + }, + "AllCaps": [ + "default-auto-update", + "https://tailscale.com/cap/file-sharing", + "https://tailscale.com/cap/is-owner", + "https://tailscale.com/cap/ssh", + "https://tailscale.com/cap/tailnet-lock", + "probe-udp-lifetime", + "ssh-behavior-v1", + "ssh-env-vars", + "store-appc-routes", + "tailnet-display-name" + ], + "NodeKey": "nodekey:638a5a63ab72246ae5844b420f9afa8fca3874c88c440c3981abc27d4ab4631a", + "MachineKey": "mkey:248be9eace9253c09dba3b2fb5bf2713fb0e34628ebb8cb1c0ede784c0242a28", + "Peers": [{ + "ID": 3103494431633216, + "StableID": "nKGMW6YaER11CNTRL", + "Name": "prod.tail78f774.ts.net.", + "User": 1260082990019555, + "Key": "nodekey:a4be1101637af4e2f5b550274a1c82553cedf6c2e03c10a084527c3b1bd58f58", + "DiscoKey": "discokey:4ef65dda10939b5519018ed7cf6b2eedf1d27664e27e4c51bae2d6d70411cd46", + "Addresses": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "AllowedIPs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "Endpoints": [ + "192.0.2.1:48994", + "198.51.100.1:48994", + "198.51.100.2:48994", + "198.51.100.3:48994" + ], + "HomeDERP": 14, + "Hostinfo": {"OS": "linux", "Hostname": "prod", "Services": [ + {"Proto": "peerapi4", "Port": 37067}, + {"Proto": "peerapi6", "Port": 37067} + ]}, + "Created": "2026-10-17T16:44:11.906901864Z", + "Cap": 142, + "Tags": ["tag:prod"], + "Online": true, + "ComputedName": "prod", + "ComputedNameWithHost": "prod" + }], + "DNS": {"ExitNodeFilteredSet": [".ts.net", ".tailscale.net"]}, + "PacketFilter": [{ + "IPProto": [6, 17, 1, 58], + "Srcs": ["100.64.0.4/32", "fd7a:115c:a1e0::4/128"], + "SrcCaps": null, + "Dsts": [ + {"Net": "0.0.0.0/0", "Ports": {"First": 0, "Last": 65535}}, + {"Net": "::/0", "Ports": {"First": 0, "Last": 65535}} + ], + "Caps": [] + }], + "PacketFilterRules": [{ + "SrcIPs": ["100.64.0.4", "fd7a:115c:a1e0::4"], + "DstPorts": [{"IP": "*", "Ports": {"First": 0, "Last": 65535}}] + }], + "SSHPolicy": {"rules": []}, + "CollectServices": false, + "DERPMap": {"Regions": {"1": { + "RegionID": 1, + "RegionCode": "nyc", + "RegionName": "New York City", + "Latitude": 40.7128, + "Longitude": -74.006, + "Nodes": [{ + "Name": "1h", + "RegionID": 1, + "HostName": "derp1h.tailscale.com", + "IPv4": "199.38.181.93", + "IPv6": "2607:f740:f::afd", + "CanPort80": true + }, { + "Name": "1g", + "RegionID": 1, + "HostName": "derp1g.tailscale.com", + "IPv4": "209.177.145.120", + "IPv6": "2607:f740:f::3eb", + "CanPort80": true + }, { + "Name": "1i", + "RegionID": 1, + "HostName": "derp1i.tailscale.com", + "IPv4": "199.38.181.103", + "IPv6": "2607:f740:f::e19", + "CanPort80": true + }, { + "Name": "1f", + "RegionID": 1, + "HostName": "derp1f.tailscale.com", + "IPv4": "199.38.181.104", + "IPv6": "2607:f740:f::bc", + "CanPort80": true + }] + }, "10": { + "RegionID": 10, + "RegionCode": "sea", + "RegionName": "Seattle", + "Latitude": 47.609722, + "Longitude": -122.333056, + "Nodes": [{ + "Name": "10c", + "RegionID": 10, + "HostName": "derp10c.tailscale.com", + "IPv4": "192.73.240.121", + "IPv6": "2607:f740:14::40c", + "CanPort80": true + }, { + "Name": "10d", + "RegionID": 10, + "HostName": "derp10d.tailscale.com", + "IPv4": "192.73.240.132", + "IPv6": "2607:f740:14::500", + "CanPort80": true + }, { + "Name": "10b", + "RegionID": 10, + "HostName": "derp10b.tailscale.com", + "IPv4": "192.73.240.161", + "IPv6": "2607:f740:14::61c", + "CanPort80": true + }] + }, "11": { + "RegionID": 11, + "RegionCode": "sao", + "RegionName": "São Paulo", + "Latitude": -23.55, + "Longitude": -46.633333, + "Nodes": [{ + "Name": "11f", + "RegionID": 11, + "HostName": "derp11f.tailscale.com", + "IPv4": "172.237.61.197", + "IPv6": "2600:3c0d::2000:3bff:fe44:6166", + "CanPort80": true + }, { + "Name": "11g", + "RegionID": 11, + "HostName": "derp11g.tailscale.com", + "IPv4": "172.237.61.190", + "IPv6": "2600:3c0d::2000:62ff:febe:2e67", + "CanPort80": true + }, { + "Name": "11e", + "RegionID": 11, + "HostName": "derp11e.tailscale.com", + "IPv4": "172.237.61.194", + "IPv6": "2600:3c0d::2000:d2ff:fe43:1790", + "CanPort80": true + }] + }, "12": { + "RegionID": 12, + "RegionCode": "ord", + "RegionName": "Chicago", + "Latitude": 41.881944, + "Longitude": -87.627778, + "Nodes": [{ + "Name": "12e", + "RegionID": 12, + "HostName": "derp12e.tailscale.com", + "IPv4": "209.177.158.15", + "IPv6": "2607:f740:e::b17", + "CanPort80": true + }, { + "Name": "12f", + "RegionID": 12, + "HostName": "derp12f.tailscale.com", + "IPv4": "199.38.182.118", + "IPv6": "2607:f740:e::4c8", + "CanPort80": true + }, { + "Name": "12d", + "RegionID": 12, + "HostName": "derp12d.tailscale.com", + "IPv4": "209.177.158.246", + "IPv6": "2607:f740:e::811", + "CanPort80": true + }] + }, "13": { + "RegionID": 13, + "RegionCode": "den", + "RegionName": "Denver", + "Latitude": 39.7392, + "Longitude": -104.9849, + "Nodes": [{ + "Name": "13c", + "RegionID": 13, + "HostName": "derp13c.tailscale.com", + "IPv4": "192.73.242.28", + "IPv6": "2607:f740:16::5c", + "CanPort80": true + }, { + "Name": "13d", + "RegionID": 13, + "HostName": "derp13d.tailscale.com", + "IPv4": "192.73.242.204", + "IPv6": "2607:f740:16::c23", + "CanPort80": true + }, { + "Name": "13b", + "RegionID": 13, + "HostName": "derp13b.tailscale.com", + "IPv4": "192.73.242.187", + "IPv6": "2607:f740:16::640", + "CanPort80": true + }] + }, "14": { + "RegionID": 14, + "RegionCode": "ams", + "RegionName": "Amsterdam", + "Latitude": 52.372778, + "Longitude": 4.893611, + "Nodes": [{ + "Name": "14c", + "RegionID": 14, + "HostName": "derp14c.tailscale.com", + "IPv4": "176.58.93.147", + "IPv6": "2a00:dd80:3c::b09", + "CanPort80": true + }, { + "Name": "14d", + "RegionID": 14, + "HostName": "derp14d.tailscale.com", + "IPv4": "176.58.93.154", + "IPv6": "2a00:dd80:3c::3d5", + "CanPort80": true + }, { + "Name": "14b", + "RegionID": 14, + "HostName": "derp14b.tailscale.com", + "IPv4": "176.58.93.248", + "IPv6": "2a00:dd80:3c::807", + "CanPort80": true + }] + }, "15": { + "RegionID": 15, + "RegionCode": "jnb", + "RegionName": "Johannesburg", + "Latitude": -26.204444, + "Longitude": 28.045556, + "Nodes": [{ + "Name": "15c", + "RegionID": 15, + "HostName": "derp15c.tailscale.com", + "IPv4": "102.67.165.185", + "IPv6": "2c0f:edb0:0:10::b59", + "CanPort80": true + }, { + "Name": "15d", + "RegionID": 15, + "HostName": "derp15d.tailscale.com", + "IPv4": "102.67.165.36", + "IPv6": "2c0f:edb0:0:10::599", + "CanPort80": true + }, { + "Name": "15b", + "RegionID": 15, + "HostName": "derp15b.tailscale.com", + "IPv4": "102.67.165.90", + "IPv6": "2c0f:edb0:0:10::963", + "CanPort80": true + }] + }, "16": { + "RegionID": 16, + "RegionCode": "mia", + "RegionName": "Miami", + "Latitude": 25.78, + "Longitude": -80.21, + "Nodes": [{ + "Name": "16c", + "RegionID": 16, + "HostName": "derp16c.tailscale.com", + "IPv4": "192.73.243.229", + "IPv6": "2607:f740:17::4e4", + "CanPort80": true + }, { + "Name": "16d", + "RegionID": 16, + "HostName": "derp16d.tailscale.com", + "IPv4": "192.73.243.141", + "IPv6": "2607:f740:17::475", + "CanPort80": true + }, { + "Name": "16b", + "RegionID": 16, + "HostName": "derp16b.tailscale.com", + "IPv4": "192.73.243.135", + "IPv6": "2607:f740:17::476", + "CanPort80": true + }] + }, "17": { + "RegionID": 17, + "RegionCode": "lax", + "RegionName": "Los Angeles", + "Latitude": 34.05, + "Longitude": -118.25, + "Nodes": [{ + "Name": "17c", + "RegionID": 17, + "HostName": "derp17c.tailscale.com", + "IPv4": "208.111.40.12", + "IPv6": "2607:f740:c::10", + "CanPort80": true + }, { + "Name": "17d", + "RegionID": 17, + "HostName": "derp17d.tailscale.com", + "IPv4": "208.111.40.216", + "IPv6": "2607:f740:c::e1b", + "CanPort80": true + }, { + "Name": "17b", + "RegionID": 17, + "HostName": "derp17b.tailscale.com", + "IPv4": "192.73.244.245", + "IPv6": "2607:f740:c::646", + "CanPort80": true + }] + }, "18": { + "RegionID": 18, + "RegionCode": "par", + "RegionName": "Paris", + "Latitude": 48.856667, + "Longitude": 2.352222, + "Nodes": [{ + "Name": "18c", + "RegionID": 18, + "HostName": "derp18c.tailscale.com", + "IPv4": "176.58.90.207", + "IPv6": "2a00:dd80:3e::c19", + "CanPort80": true + }, { + "Name": "18d", + "RegionID": 18, + "HostName": "derp18d.tailscale.com", + "IPv4": "176.58.90.104", + "IPv6": "2a00:dd80:3e::f2e", + "CanPort80": true + }, { + "Name": "18b", + "RegionID": 18, + "HostName": "derp18b.tailscale.com", + "IPv4": "176.58.90.147", + "IPv6": "2a00:dd80:3e::363", + "CanPort80": true + }] + }, "19": { + "RegionID": 19, + "RegionCode": "mad", + "RegionName": "Madrid", + "Latitude": 40.416944, + "Longitude": -3.703333, + "Nodes": [{ + "Name": "19c", + "RegionID": 19, + "HostName": "derp19c.tailscale.com", + "IPv4": "45.159.97.61", + "IPv6": "2a00:dd80:14:10::20", + "CanPort80": true + }, { + "Name": "19d", + "RegionID": 19, + "HostName": "derp19d.tailscale.com", + "IPv4": "45.159.97.233", + "IPv6": "2a00:dd80:14:10::34a", + "CanPort80": true + }, { + "Name": "19b", + "RegionID": 19, + "HostName": "derp19b.tailscale.com", + "IPv4": "45.159.97.144", + "IPv6": "2a00:dd80:14:10::335", + "CanPort80": true + }] + }, "2": { + "RegionID": 2, + "RegionCode": "sfo", + "RegionName": "San Francisco", + "Latitude": 37.7775, + "Longitude": -122.416389, + "Nodes": [{ + "Name": "2e", + "RegionID": 2, + "HostName": "derp2e.tailscale.com", + "IPv4": "192.73.252.134", + "IPv6": "2607:f740:0:3f::44c", + "CanPort80": true + }, { + "Name": "2f", + "RegionID": 2, + "HostName": "derp2f.tailscale.com", + "IPv4": "208.111.34.178", + "IPv6": "2607:f740:0:3f::f4", + "CanPort80": true + }, { + "Name": "2d", + "RegionID": 2, + "HostName": "derp2d.tailscale.com", + "IPv4": "192.73.252.65", + "IPv6": "2607:f740:0:3f::287", + "CanPort80": true + }] + }, "20": { + "RegionID": 20, + "RegionCode": "hkg", + "RegionName": "Hong Kong", + "Latitude": 22.3193, + "Longitude": 114.1694, + "Nodes": [{ + "Name": "20c", + "RegionID": 20, + "HostName": "derp20c.tailscale.com", + "IPv4": "205.147.105.30", + "IPv6": "2403:2500:8000:1::5fb", + "CanPort80": true + }, { + "Name": "20d", + "RegionID": 20, + "HostName": "derp20d.tailscale.com", + "IPv4": "205.147.105.78", + "IPv6": "2403:2500:8000:1::e9a", + "CanPort80": true + }, { + "Name": "20b", + "RegionID": 20, + "HostName": "derp20b.tailscale.com", + "IPv4": "103.6.84.152", + "IPv6": "2403:2500:8000:1::ef6", + "CanPort80": true + }] + }, "21": { + "RegionID": 21, + "RegionCode": "tor", + "RegionName": "Toronto", + "Latitude": 43.741667, + "Longitude": -79.373333, + "Nodes": [{ + "Name": "21c", + "RegionID": 21, + "HostName": "derp21c.tailscale.com", + "IPv4": "162.248.221.215", + "IPv6": "2607:f740:50::f10", + "CanPort80": true + }, { + "Name": "21d", + "RegionID": 21, + "HostName": "derp21d.tailscale.com", + "IPv4": "162.248.221.248", + "IPv6": "2607:f740:50::ca4", + "CanPort80": true + }, { + "Name": "21b", + "RegionID": 21, + "HostName": "derp21b.tailscale.com", + "IPv4": "162.248.221.199", + "IPv6": "2607:f740:50::1d1", + "CanPort80": true + }] + }, "22": { + "RegionID": 22, + "RegionCode": "waw", + "RegionName": "Warsaw", + "Latitude": 52.23, + "Longitude": 21.011111, + "Nodes": [{ + "Name": "22c", + "RegionID": 22, + "HostName": "derp22c.tailscale.com", + "IPv4": "45.159.98.253", + "IPv6": "2a00:dd80:40:100::3f", + "CanPort80": true + }, { + "Name": "22d", + "RegionID": 22, + "HostName": "derp22d.tailscale.com", + "IPv4": "45.159.98.145", + "IPv6": "2a00:dd80:40:100::211", + "CanPort80": true + }, { + "Name": "22b", + "RegionID": 22, + "HostName": "derp22b.tailscale.com", + "IPv4": "45.159.98.196", + "IPv6": "2a00:dd80:40:100::316", + "CanPort80": true + }] + }, "23": { + "RegionID": 23, + "RegionCode": "dbi", + "RegionName": "Dubai", + "Latitude": 25.263056, + "Longitude": 55.297222, + "Nodes": [{ + "Name": "23c", + "RegionID": 23, + "HostName": "derp23c.tailscale.com", + "IPv4": "185.34.3.207", + "IPv6": "2a00:dd80:3f:100::a50", + "CanPort80": true + }, { + "Name": "23d", + "RegionID": 23, + "HostName": "derp23d.tailscale.com", + "IPv4": "185.34.3.75", + "IPv6": "2a00:dd80:3f:100::97e", + "CanPort80": true + }, { + "Name": "23b", + "RegionID": 23, + "HostName": "derp23b.tailscale.com", + "IPv4": "185.34.3.232", + "IPv6": "2a00:dd80:3f:100::76f", + "CanPort80": true + }] + }, "24": { + "RegionID": 24, + "RegionCode": "hnl", + "RegionName": "Honolulu", + "Latitude": 21.306944, + "Longitude": -157.858333, + "Nodes": [{ + "Name": "24c", + "RegionID": 24, + "HostName": "derp24c.tailscale.com", + "IPv4": "208.83.233.233", + "IPv6": "2001:19f0:c000:c591:5400:04ff:fe26:2c5f", + "CanPort80": true + }, { + "Name": "24d", + "RegionID": 24, + "HostName": "derp24d.tailscale.com", + "IPv4": "208.72.155.133", + "IPv6": "2001:19f0:c000:c564:5400:04ff:fe26:2ba8", + "CanPort80": true + }, { + "Name": "24b", + "RegionID": 24, + "HostName": "derp24b.tailscale.com", + "IPv4": "208.83.234.151", + "IPv6": "2001:19f0:c000:c586:5400:04ff:fe26:2ba6", + "CanPort80": true + }] + }, "25": { + "RegionID": 25, + "RegionCode": "nai", + "RegionName": "Nairobi", + "Latitude": -1.286389, + "Longitude": 36.817222, + "Nodes": [{ + "Name": "25c", + "RegionID": 25, + "HostName": "derp25c.tailscale.com", + "IPv4": "102.67.167.37", + "IPv6": "2c0f:edb0:2000:1::2c7", + "CanPort80": true + }, { + "Name": "25d", + "RegionID": 25, + "HostName": "derp25d.tailscale.com", + "IPv4": "102.67.167.188", + "IPv6": "2c0f:edb0:2000:1::188", + "CanPort80": true + }, { + "Name": "25b", + "RegionID": 25, + "HostName": "derp25b.tailscale.com", + "IPv4": "102.67.167.245", + "IPv6": "2c0f:edb0:2000:1::2e9", + "CanPort80": true + }] + }, "26": { + "RegionID": 26, + "RegionCode": "nue", + "RegionName": "Nuremberg", + "Latitude": 49.453889, + "Longitude": 11.0775, + "Nodes": [{ + "Name": "26c", + "RegionID": 26, + "HostName": "derp26c.tailscale.com", + "IPv4": "49.12.193.137", + "IPv6": "2a01:4f8:1c1c:5c70::1", + "CanPort80": true + }, { + "Name": "26d", + "RegionID": 26, + "HostName": "derp26d.tailscale.com", + "IPv4": "49.13.204.141", + "IPv6": "2a01:4f8:1c0c:7d06::1", + "CanPort80": true + }, { + "Name": "26b", + "RegionID": 26, + "HostName": "derp26b.tailscale.com", + "IPv4": "167.235.72.200", + "IPv6": "2a01:4f8:1c1c:47b6::1", + "CanPort80": true + }] + }, "27": { + "RegionID": 27, + "RegionCode": "iad", + "RegionName": "Ashburn", + "Latitude": 39.03, + "Longitude": -77.471111, + "Nodes": [{ + "Name": "27d", + "RegionID": 27, + "HostName": "derp27d.tailscale.com", + "IPv4": "178.156.152.106", + "IPv6": "2a01:4ff:f0:3c8e::1", + "CanPort80": true + }, { + "Name": "27c", + "RegionID": 27, + "HostName": "derp27c.tailscale.com", + "IPv4": "178.156.152.91", + "IPv6": "2a01:4ff:f0:3913::1", + "CanPort80": true + }, { + "Name": "27e", + "RegionID": 27, + "HostName": "derp27e.tailscale.com", + "IPv4": "178.156.134.232", + "IPv6": "2a01:4ff:f0:28d4::1", + "CanPort80": true + }, { + "Name": "27b", + "RegionID": 27, + "HostName": "derp27b.tailscale.com", + "IPv4": "5.161.218.233", + "IPv6": "2a01:4ff:f0:3db9::1", + "CanPort80": true + }] + }, "28": { + "RegionID": 28, + "RegionCode": "hel", + "RegionName": "Helsinki", + "Latitude": 60.170833, + "Longitude": 24.9375, + "Nodes": [{ + "Name": "28c", + "RegionID": 28, + "HostName": "derp28c.tailscale.com", + "IPv4": "95.217.2.165", + "IPv6": "2a01:4f9:c012:cd74::1", + "CanPort80": true + }, { + "Name": "28d", + "RegionID": 28, + "HostName": "derp28d.tailscale.com", + "IPv4": "157.180.28.32", + "IPv6": "2a01:4f9:c012:2e5b::1", + "CanPort80": true + }, { + "Name": "28b", + "RegionID": 28, + "HostName": "derp28b.tailscale.com", + "IPv4": "65.109.143.62", + "IPv6": "2a01:4f9:c012:d55c::1", + "CanPort80": true + }] + }, "3": { + "RegionID": 3, + "RegionCode": "sin", + "RegionName": "Singapore", + "Latitude": 1.3521, + "Longitude": 103.8198, + "Nodes": [{ + "Name": "3g", + "RegionID": 3, + "HostName": "derp3g.tailscale.com", + "IPv4": "172.237.72.79", + "IPv6": "2600:3c15::2000:adff:fe08:6fab", + "CanPort80": true + }, { + "Name": "3f", + "RegionID": 3, + "HostName": "derp3f.tailscale.com", + "IPv4": "172.237.72.8", + "IPv6": "2600:3c15::2000:53ff:fe48:a668", + "CanPort80": true + }, { + "Name": "3h", + "RegionID": 3, + "HostName": "derp3h.tailscale.com", + "IPv4": "172.237.66.30", + "IPv6": "2600:3c15::2000:3dff:fe44:50aa", + "CanPort80": true + }, { + "Name": "3e", + "RegionID": 3, + "HostName": "derp3e.tailscale.com", + "IPv4": "172.237.72.43", + "IPv6": "2600:3c15::2000:6cff:fee4:d799", + "CanPort80": true + }] + }, "4": { + "RegionID": 4, + "RegionCode": "fra", + "RegionName": "Frankfurt", + "Latitude": 50.1109, + "Longitude": 8.6821, + "Nodes": [{ + "Name": "4h", + "RegionID": 4, + "HostName": "derp4h.tailscale.com", + "IPv4": "185.40.234.77", + "IPv6": "2a00:dd80:20::bcf", + "CanPort80": true + }, { + "Name": "4i", + "RegionID": 4, + "HostName": "derp4i.tailscale.com", + "IPv4": "185.40.234.53", + "IPv6": "2a00:dd80:20::8a6", + "CanPort80": true + }, { + "Name": "4g", + "RegionID": 4, + "HostName": "derp4g.tailscale.com", + "IPv4": "185.40.234.113", + "IPv6": "2a00:dd80:20::8f", + "CanPort80": true + }, { + "Name": "4j", + "RegionID": 4, + "HostName": "derp4j.tailscale.com", + "IPv4": "185.40.234.176", + "IPv6": "2a00:dd80:20::e67", + "CanPort80": true + }, { + "Name": "4f", + "RegionID": 4, + "HostName": "derp4f.tailscale.com", + "IPv4": "185.40.234.219", + "IPv6": "2a00:dd80:20::a25", + "CanPort80": true + }] + }, "5": { + "RegionID": 5, + "RegionCode": "syd", + "RegionName": "Sydney", + "Latitude": -33.867778, + "Longitude": 151.21, + "Nodes": [{ + "Name": "5f", + "RegionID": 5, + "HostName": "derp5f.tailscale.com", + "IPv4": "172.105.166.103", + "IPv6": "2400:8907::2000:ccff:fe1f:80da", + "CanPort80": true + }, { + "Name": "5g", + "RegionID": 5, + "HostName": "derp5g.tailscale.com", + "IPv4": "172.105.169.57", + "IPv6": "2400:8907::2000:2fff:fea7:57f4", + "CanPort80": true + }, { + "Name": "5e", + "RegionID": 5, + "HostName": "derp5e.tailscale.com", + "IPv4": "172.105.179.230", + "IPv6": "2400:8907::2000:ceff:fe8d:4f4e", + "CanPort80": true + }] + }, "6": { + "RegionID": 6, + "RegionCode": "blr", + "RegionName": "Bengaluru", + "Latitude": 12.9716, + "Longitude": 77.5946, + "Nodes": [{ + "Name": "6a", + "RegionID": 6, + "HostName": "derp6.tailscale.com", + "IPv4": "68.183.90.120", + "IPv6": "2400:6180:100:d0::982:d001", + "CanPort80": true + }] + }, "7": { + "RegionID": 7, + "RegionCode": "tok", + "RegionName": "Tokyo", + "Latitude": 35.6764, + "Longitude": 139.65, + "Nodes": [{ + "Name": "7g", + "RegionID": 7, + "HostName": "derp7g.tailscale.com", + "IPv4": "172.238.6.179", + "IPv6": "2600:3c18::2000:3fff:fe80:3ebd", + "CanPort80": true + }, { + "Name": "7f", + "RegionID": 7, + "HostName": "derp7f.tailscale.com", + "IPv4": "172.238.6.34", + "IPv6": "2600:3c18::2000:acff:fe8e:3ed5", + "CanPort80": true + }, { + "Name": "7h", + "RegionID": 7, + "HostName": "derp7h.tailscale.com", + "IPv4": "172.237.28.183", + "IPv6": "2600:3c18::2000:b1ff:fea9:4560", + "CanPort80": true + }, { + "Name": "7e", + "RegionID": 7, + "HostName": "derp7e.tailscale.com", + "IPv4": "172.238.6.180", + "IPv6": "2600:3c18::2000:60ff:fe0f:6e83", + "STUNOnly": true, + "CanPort80": true + }] + }, "8": { + "RegionID": 8, + "RegionCode": "lhr", + "RegionName": "London", + "Latitude": 51.5072, + "Longitude": 0.1276, + "Nodes": [{ + "Name": "8f", + "RegionID": 8, + "HostName": "derp8f.tailscale.com", + "IPv4": "176.58.88.183", + "IPv6": "2a00:dd80:3a::dfa", + "CanPort80": true + }, { + "Name": "8g", + "RegionID": 8, + "HostName": "derp8g.tailscale.com", + "IPv4": "176.58.92.254", + "IPv6": "2a00:dd80:3a::ed", + "CanPort80": true + }, { + "Name": "8e", + "RegionID": 8, + "HostName": "derp8e.tailscale.com", + "IPv4": "176.58.92.144", + "IPv6": "2a00:dd80:3a::b33", + "CanPort80": true + }] + }, "9": { + "RegionID": 9, + "RegionCode": "dfw", + "RegionName": "Dallas", + "Latitude": 32.779167, + "Longitude": -96.808889, + "Nodes": [{ + "Name": "9e", + "RegionID": 9, + "HostName": "derp9e.tailscale.com", + "IPv4": "192.73.248.83", + "IPv6": "2607:f740:100::359", + "CanPort80": true + }, { + "Name": "9f", + "RegionID": 9, + "HostName": "derp9f.tailscale.com", + "IPv4": "209.177.156.197", + "IPv6": "2607:f740:100::cad", + "CanPort80": true + }, { + "Name": "9d", + "RegionID": 9, + "HostName": "derp9d.tailscale.com", + "IPv4": "209.177.156.94", + "IPv6": "2607:f740:100::c05", + "CanPort80": true + }] + }}}, + "DisplayMessages": null, + "TKAEnabled": false, + "TKAHead": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Domain": "odin@example.com", + "DomainAuditLogID": "", + "UserProfiles": {"1260082990019555": { + "ID": 1260082990019555, + "LoginName": "tagged-devices", + "DisplayName": "Tagged Devices" + }, "3530479444222049": { + "ID": 3530479444222049, + "LoginName": "srv.tail78f774.ts.net", + "DisplayName": "srv" + }, "4156223528223174": { + "ID": 4156223528223174, + "LoginName": "odin@example.com", + "DisplayName": "odin" + }, "4538565228176803": { + "ID": 4538565228176803, + "LoginName": "thor@example.org", + "DisplayName": "thor" + }} + }}} +} diff --git a/hscontrol/servertest/via_compat_test.go b/hscontrol/servertest/via_compat_test.go index 9f39f4c82..08d5284ab 100644 --- a/hscontrol/servertest/via_compat_test.go +++ b/hscontrol/servertest/via_compat_test.go @@ -92,6 +92,12 @@ var routesMapCompatTests = []struct { {"routes-f3-wildcard-src-specific-dst", "ACL to one port of a subnet"}, {"routes-h1-wildcard-srcips-format", "wildcard source to tagged routers"}, {"routes-pa1-partial-route-approval", "router with an unapproved route"}, + {"routes-m1-wildcard-src-multi-range", "wildcard source to a tagged port, multi-route router"}, + {"routes-m2-member-partial-subnet", "members to one route of a multi-route router"}, + {"routes-m3-subnet-route-as-src", "one route of a multi-route router as source"}, + {"routes-m4-member-self", "members to autogroup:self beside a multi-route router"}, + {"routes-m5-wildcard-all", "allow-all with a multi-route router and an exit node"}, + {"routes-m6-subnet-to-subnet-multi-route", "subnet of a multi-route router to a subnet of an exit node"}, } // viaCompatSkipReasons lists checks where headscale differs from SaaS, keyed @@ -151,6 +157,16 @@ var viaCompatSkipReasons = map[string]string{ "routes-h1-wildcard-srcips-format/butterfree/self-routes": selfRoutesReduced, "routes-h1-wildcard-srcips-format/metapod/self-routes": selfRoutesReduced, "routes-pa1-partial-route-approval/butterfree/self-routes": selfRoutesReduced, + "routes-m1-wildcard-src-multi-range/r-exit/self-routes": selfRoutesReduced, + "routes-m1-wildcard-src-multi-range/r-multi/self-routes": selfRoutesReduced, + "routes-m2-member-partial-subnet/r-exit/self-routes": selfRoutesReduced, + "routes-m2-member-partial-subnet/r-multi/self-routes": selfRoutesReduced, + "routes-m3-subnet-route-as-src/r-exit/self-routes": selfRoutesReduced, + "routes-m3-subnet-route-as-src/r-multi/self-routes": selfRoutesReduced, + "routes-m4-member-self/r-exit/self-routes": selfRoutesReduced, + "routes-m4-member-self/r-multi/self-routes": selfRoutesReduced, + "routes-m6-subnet-to-subnet-multi-route/r-exit/self-routes": selfRoutesReduced, + "routes-m6-subnet-to-subnet-multi-route/r-multi/self-routes": selfRoutesReduced, "via-grant-v14/blastoise/self-routes": selfRoutesReduced, "via-grant-v14/fearow/self-routes": selfRoutesReduced, @@ -232,10 +248,26 @@ var viaCompatSkipReasons = map[string]string{ "via-grant-v66/squirtle/self-routes": selfRoutesReduced, "via-grant-v67/blastoise/self-routes": selfRoutesReduced, "via-grant-v67/squirtle/self-routes": selfRoutesReduced, + + "routes-m1-wildcard-src-multi-range/srv/peers": exitRoutesOnOverlap, + "routes-m6-subnet-to-subnet-multi-route/r-multi/peers": exitRoutesOnOverlap, + + "routes-m1-wildcard-src-multi-range/m-odin1/peers": sameUserPeers, + "routes-m1-wildcard-src-multi-range/m-odin2/peers": sameUserPeers, + "routes-m2-member-partial-subnet/m-odin1/peers": sameUserPeers, + "routes-m2-member-partial-subnet/m-odin2/peers": sameUserPeers, + "routes-m3-subnet-route-as-src/m-odin1/peers": sameUserPeers, + "routes-m3-subnet-route-as-src/m-odin2/peers": sameUserPeers, + "routes-m6-subnet-to-subnet-multi-route/m-odin1/peers": sameUserPeers, + "routes-m6-subnet-to-subnet-multi-route/m-odin2/peers": sameUserPeers, } const viaSourceLossNotSent = "VIA_SOURCE_LOSS_NOT_SENT: a user change that leaves a via grant without sources does not reach open streams" +const exitRoutesOnOverlap = "EXIT_ROUTES_ON_OVERLAP: headscale offers a peer's exit routes to a viewer whose rules reach only nodes or subnets; SaaS leaves them out" + +const sameUserPeers = "SAME_USER_PEERS: SaaS lists a user's own devices as each other's peers with no rule linking them; headscale peers only what the policy links" + const selfRoutesReduced = "SELF_ROUTES_REDUCED: headscale sends a router only the primary routes its policy lets it reach" // TestRoutesMapCompat replays routesMapCompatTests through @@ -407,12 +439,17 @@ func startViaMapCompat( srv, clients := startCaptureClients(t, c, true) // Wait for peers based on golden [netmap.NetworkMap] expected counts. + // A viewer whose peers are a listed difference never reaches them. for viewerName, cl := range clients { capture := c.Captures[viewerName] if capture.Netmap == nil { continue } + if _, listed := viaCompatSkipReasons[c.TestID+"/"+viewerName+"/peers"]; listed { + continue + } + expected := 0 for _, peer := range capture.Netmap.Peers { @@ -744,7 +781,15 @@ func compareNetmap( h.Helper() } - comparePeers(t, got, want, clients) + peers := func(tt require.TestingT) { comparePeers(tt, got, want, clients) } + if reason, listed := viaCompatSkipReasons[key+"/peers"]; listed { + if passesOnce(peers) { + t.Errorf("peers match SaaS; delete viaCompatSkipReasons[%q] (%s)", key+"/peers", reason) + } + } else { + peers(t) + } + comparePacketFilter(t, got, want, clients, saasAddrs, key+"/packet-filter", viaCompatSkipReasons) compareUserProfiles(t, got, want.Netmap, clients) } @@ -894,8 +939,9 @@ func comparePeers( } // compareUserProfiles compares the profile the viewer holds for itself and -// for each peer in clients. Profile IDs differ between SaaS and headscale, so -// a profile is its login, with SaaS emails mapped to user names, and its +// for each peer in clients that both sides list; a peer on one side only is +// the peers check's. Profile IDs differ between SaaS and headscale, so a +// profile is its login, with SaaS emails mapped to user names, and its // display name. func compareUserProfiles( t require.TestingT, @@ -909,6 +955,10 @@ func compareUserProfiles( gotProfiles := nodeProfiles(got, clients) for name, wantProfile := range nodeProfiles(want, clients) { + if _, ok := gotProfiles[name]; !ok { + continue + } + check := "peer" if name == "" { check = "self"