Nodes keep flipping between their name and a suffixed name

I’m having a hard time understanding what’s going on here. Some of these are netboot clients (but with persistence), but carbon is just my new laptop (that does have a weird sleep mode but is otherwise a standard run-of-the-mill nixos+zfs deployment).

As you can see though, they keep coming back with a suffixed version of their normal name. This breaks a number of scripts where I have tailscale ip --6 {target} hardcoded:

cole@slynux ~/code/nixcfg main* ⇡
❯ ssh cole@$(tailscale ip --6 carbon)

error looking up IP of "carbon": lookup carbon on 127.0.0.53:53: server misbehaving
ssh: Could not resolve hostname : Name or service not known

This happened with a single host earlier and has gotten worse. Am I holding it wrong? Is there maybe something else going on?

100.112.137.125 slynux               cole.mickens@ linux   -
100.122.12.36   carbon.cole-mickens.gmail.com cole.mickens@ linux   offline
100.110.10.88   carbwin              cole.mickens@ windows offline
100.103.91.27   jeffhyper            cole.mickens@ linux   -
100.117.128.6   pelinore             cole.mickens@ windows offline
100.119.47.29   pelinux              cole.mickens@ linux   offline
100.83.93.42    pixcole-3            cole.mickens@ android -
100.92.252.95   raisin               cole.mickens@ linux   -
100.84.178.79   raiswin              cole.mickens@ windows offline
100.78.63.112   rpifour1.cole-mickens.gmail.com cole.mickens@ linux   offline
100.102.177.120 rpifour2.cole-mickens.gmail.com cole.mickens@ linux   offline
100.75.185.106  rpithreebp1.cole-mickens.gmail.com cole.mickens@ linux   offline
100.98.10.14    rpizero1             cole.mickens@ linux   offline
100.101.86.65   rpizero2.cole-mickens.gmail.com cole.mickens@ linux   offline
100.91.79.15    rpizerotwo1          cole.mickens@ linux   -
100.92.119.59   rpizerotwo2.cole-mickens.gmail.com cole.mickens@ linux   offline
100.98.62.107   rpizerotwo3          cole.mickens@ linux   -
100.71.20.50    slywin.cole-mickens.gmail.com cole.mickens@ windows active; direct [2604:4080:1368:8040:4512:d7c8:ecd:bd80]:41641; offline, tx 1041204584 rx 49949048
100.72.11.62    xeep                 cole.mickens@ linux   idle; offers exit node

EDIT: It kinda looks like this coincides with 1.26.1 hitting, but it also seems to sorta resolve itself?

I don’t quite see why it thinks some of these nodes are down.

I can see my peers when I run tailscale status on rpifour2 for example.

And:

[cole@rpifour2:~]$ sudo systemctl status tailscaled
● tailscaled.service - Tailscale node agent
     Loaded: loaded (/etc/systemd/system/tailscaled.service; enabled; vendor preset: enabled)
    Drop-In: /nix/store/wm9wknxqi4crk3airv88xkm7iqa9qkvf-system-units/tailscaled.service.d
             └─overrides.conf
     Active: active (running) since Wed 2022-06-22 03:41:04 PDT; 13min ago
       Docs: https://tailscale.com/kb/
    Process: 736 ExecStartPre=/nix/store/5jdchv4hgn6sk7cwv0ljn9l3yxb1wax7-tailscale-1.26.1/bin/tailscaled --cleanup (code=exited, status=0/SUCCESS)
   Main PID: 750 (.tailscaled-wra)
     Status: "Connected; cole.mickens@gmail.com; 100.102.177.120 fd7a:115c:a1e0:ab12:4843:cd96:6266:b178"
         IP: 106.2K in, 69.3K out
         IO: 0B read, 0B written
      Tasks: 11 (limit: 3882)
     Memory: 26.4M
        CPU: 2.446s
     CGroup: /system.slice/tailscaled.service
             └─750 /nix/store/5jdchv4hgn6sk7cwv0ljn9l3yxb1wax7-tailscale-1.26.1/bin/tailscaled --state=/var/lib/tailscale/tailscaled.state --socket=/run/tailscale/tailscaled.sock --port 41641 --tun tailscale0

Jun 22 03:44:11 rpifour2 tailscaled[750]: wgengine: Reconfig: configuring DNS
Jun 22 03:44:11 rpifour2 tailscaled[750]: dns: Set: {DefaultResolvers:[] Routes:{} SearchDomains:[] Hosts:17}
[cole@rpifour2:~]$ tailscale status
100.112.137.125 slynux               cole.mickens@ linux   -

but from tailscale status on slynux:

100.102.177.120 rpifour2.cole-mickens.gmail.com cole.mickens@ linux   offline

It’s really odd, I just don’t feel like I’ve seen behavior like this before.

They also appear online in the dashboard :confused:

~/code/nixcfg main* ⇡ 7s
❯ tailscale status
100.122.12.36   carbon               cole.mickens@ linux   -
100.110.10.88   carbwin              cole.mickens@ windows offline
100.103.91.27   jeffhyper            cole.mickens@ linux   -
100.83.93.42    pixcole-3            cole.mickens@ android -
100.92.252.95   raisin               cole.mickens@ linux   -
100.84.178.79   raiswin              cole.mickens@ windows offline
100.78.63.112   rpifour1             cole.mickens@ linux   -
100.102.177.120 rpifour2             cole.mickens@ linux   -
100.75.185.106  rpithreebp1          cole.mickens@ linux   -
100.98.10.14    rpizero1             cole.mickens@ linux   -
100.101.86.65   rpizero2             cole.mickens@ linux   -
100.91.79.15    rpizerotwo1          cole.mickens@ linux   -
100.92.119.59   rpizerotwo2          cole.mickens@ linux   -
100.98.62.107   rpizerotwo3          cole.mickens@ linux   -
100.112.137.125 slynux               cole.mickens@ linux   -
100.71.20.50    slywin               cole.mickens@ windows offline
100.72.11.62    xeep                 cole.mickens@ linux   idle; offers exit node

~/code/nixcfg main* ⇡
❯ gssh sylnux
error looking up IP of "sylnux": lookup sylnux on 127.0.0.53:53: server misbehaving

slynux is most certainly online:

ssh 100.112.137.125
# logs in just fine

Sigh, please, please, please stop messing with my DNS. Or doing anything with DNS. I don’t want it. I don’t need it. Why does looking up a peer require that I’ve left Tailscale muck with my DNS?