[Steam Deck][Linux] Tailscale stops working after a while

Versions
Tailscale version:

1.20.2
tailscale commit: 8e643357dc806ad10adbd833abbc5181c99ce305
go version: go1.17.6

Your operating system & version:
Steam OS 3.3.2 (build 20221005.1)

Info
I installed tailscale on my steam deck following the blog post, however unlike my Android phone and Macbook where things work automagically, tailscale causes the whole system to either not have any network access after a while, usually less than 10 seconds, though once I had it working for 2 whole minutes. And other times, it just doesn’t work at all.

The problem is, I am not quite sure why or how to fix it.

Ideally, the plan was to connect as follows
[Steam deck] ----> [Server running as exit node on tailscale network] ----> [Another server in the same LAN as the exit node]

In addition, I would also like to access the internet. This works just fine using my other devices.

I started tailscale with the command tailscale up --accept-dns --exit-node=TAILSCALE-IP-OF-EXIT-NODE --operator=deck

logs
The bug report is:
BUG-5287aec83be7e33717d2a1e08ed49a5499d58400d3a91bae6d03b57ccb09e304-20221208014238Z-8dbf0b6e0be07a47

There is also this from journalctl:

Dec 08 01:40:51 Pepe systemd-resolved[850]: tailscale0: Bus client set DNS server list to: 100.100.100.100
Dec 08 01:40:51 Pepe systemd-resolved[850]: tailscale0: Bus client set search domain list to: siren-celsius.ts.net., ~.
Dec 08 01:40:52 Pepe tailscaled[30893]: control: HostInfo: {"IPNVersion":"1.20.2","BackendLogID":"5287aec83be7e33717d2a1e08ed49a5499d58400d3a91bae6d03b57ccb
09e304","OS":"linux","OSVersion":"SteamOS; kernel=5.13.0-valve21.3-1-neptune","Hostname":"Pepe","GoArch":"amd64","Services":[{"Proto":"tcp","Port":53,"Descr
iption":"systemd-resolved"},{"Proto":"tcp","Port":1716,"Description":"kdeconnectd"},{"Proto":"tcp","Port":5355,"Description":"systemd-resolved"},{"Proto":"t
cp","Port":8085,"Description":"crankshaft"},{"Proto":"tcp","Port":27036,"Description":"steam"},{"Proto":"tcp","Port":41002,"Description":"tailscaled"},{"Pro
to":"peerapi4","Port":41002},{"Proto":"peerapi6","Port":41002},{"Proto":"peerapi-dns-proxy","Port":1}],"NetInfo":{"MappingVariesByDestIP":false,"HairPinning
":false,"WorkingIPv6":false,"WorkingUDP":true,"UPnP":false,"PMP":false,"PCP":false,"PreferredDERP":8,"DERPLatency":{"1-v4":0.123247179,"10-v4":0.190180631,"
11-v4":0.198204042,"12-v4":0.190096812,"14-v4":0.107433354,"15-v4":0.190032663,"16-v4":0.190042532,"17-v4":0.190028012,"18-v4":0.110609617,"19-v4":0.1232262
89,"20-v4":0.232699595,"21-v4":0.190107212,"22-v4":0.123221029,"23-v4":0.190033902,"24-v4":0.193167636,"3-v4":0.193265844,"4-v4":0.12307653,"6-v4":0.1900180
03,"8-v4":0.104191022,"9-v4":0.190181111}}}
Dec 08 01:43:03 Pepe systemd-resolved[850]: tailscale0: Bus client reset DNS server list.
Dec 08 01:43:03 Pepe systemd-resolved[850]: tailscale0: Bus client reset search domain list.

Earlier my log looked like this:

Dec 08 01:22:16 Pepe tailscaled[30893]: Accept: TCP{TAILSCALE-IP-OF-STEAM-DECK:36202 > TAILSCALE-IP-OF-EXIT-NODE:33627} 60 ok out
Dec 08 01:22:16 Pepe tailscaled[30893]: Accept: TCP{TAILSCALE-IP-OF-EXIT-NODE:33627 > TAILSCALE-IP-OF-STEAM-DECK:36202} 60 tcp non-syn
Dec 08 01:22:16 Pepe tailscaled[30893]: Accept: TCP{TAILSCALE-IP-OF-STEAM-DECK:36202 > TAILSCALE-IP-OF-EXIT-NODE:33627} 52 ok out
Dec 08 01:22:17 Pepe tailscaled[30893]: open-conn-track: flow TCP (TCP [fd7a:115c:a1e0:ab12:4843:cd96:6265:ff7d]:56958 => [2602:fd3f:0:ff06::111]:443) got RST by peer
Dec 08 01:22:17 Pepe tailscaled[30893]: open-conn-track: flow TCP (TCP [fd7a:115c:a1e0:ab12:4843:cd96:6265:ff7d]:38754 => [2a00:1450:400c:c0b::bc]:5228) got RST by peer
Dec 08 01:22:17 Pepe tailscaled[30893]: open-conn-track: flow TCP (TCP [fd7a:115c:a1e0:ab12:4843:cd96:6265:ff7d]:56960 => [2602:fd3f:0:ff06::111]:443) got RST by peer
Dec 08 01:22:24 Pepe tailscaled[30893]: [RATELIMIT] format("open-conn-track: timeout opening %v to node %v; online=%v, lastRecv=%v") (5 dropped)
Dec 08 01:22:24 Pepe tailscaled[30893]: open-conn-track: timeout opening (TCP [fd7a:115c:a1e0:ab12:4843:cd96:6265:ff7d]:56962 => [2602:fd3f:0:ff06::111]:443) to node [nQfJA]; online=yes, lastRecv=9s
Dec 08 01:22:24 Pepe tailscaled[30893]: open-conn-track: timeout opening (TCP TAILSCALE-IP-OF-STEAM-DECK:55038 => 64.62.250.111:443) to node [nQfJA]; online=yes, lastRecv=9s
Dec 08 01:22:25 Pepe tailscaled[30893]: open-conn-track: timeout opening (TCP TAILSCALE-IP-OF-STEAM-DECK:39724 => 192.168.2.10:80) to node [nQfJA]; online=yes, lastRecv=10s
Dec 08 01:22:25 Pepe tailscaled[30893]: open-conn-track: timeout opening (TCP TAILSCALE-IP-OF-STEAM-DECK:39726 => 192.168.2.10:80) to node [nQfJA]; online=yes, lastRecv=10s
Dec 08 01:22:26 Pepe tailscaled[30893]: Accept: TCP{TAILSCALE-IP-OF-STEAM-DECK:36212 > TAILSCALE-IP-OF-EXIT-NODE:33627} 283 ok out
Dec 08 01:22:27 Pepe tailscaled[30893]: open-conn-track: timeout opening (TCP [fd7a:115c:a1e0:ab12:4843:cd96:6265:ff7d]:56962 => [2602:fd3f:0:ff06::111]:443) to node [nQfJA]; online=yes, lastRecv=12s
Dec 08 01:22:27 Pepe tailscaled[30893]: [RATELIMIT] format("open-conn-track: timeout opening %v to node %v; online=%v, lastRecv=%v")
Dec 08 01:22:27 Pepe tailscaled[30893]: [RATELIMIT] format("dns: error: %v") (12 dropped)
Dec 08 01:22:27 Pepe tailscaled[30893]: dns: error: context deadline exceeded
Dec 08 01:22:27 Pepe tailscaled[30893]: dns: error: context deadline exceeded
Dec 08 01:22:32 Pepe tailscaled[30893]: dns: error: context deadline exceeded
Dec 08 01:22:32 Pepe tailscaled[30893]: dns: error: context deadline exceeded
Dec 08 01:22:34 Pepe tailscaled[30893]: dns: error: context deadline exceeded
Dec 08 01:22:34 Pepe tailscaled[30893]: dns: error: context deadline exceeded
Dec 08 01:22:34 Pepe tailscaled[30893]: [RATELIMIT] format("dns: error: %v")
Dec 08 01:22:34 Pepe tailscaled[30893]: [RATELIMIT] format("open-conn-track: timeout opening %v to node %v; online=%v, lastRecv=%v") (5 dropped)
Dec 08 01:22:34 Pepe tailscaled[30893]: open-conn-track: timeout opening (TCP TAILSCALE-IP-OF-STEAM-DECK:36220 => TAILSCALE-IP-OF-EXIT-NODE:33627) to node [nQfJA]; online=yes, lastRecv=3s
Dec 08 01:22:34 Pepe tailscaled[30893]: open-conn-track: timeout opening (TCP TAILSCALE-IP-OF-STEAM-DECK:36222 => TAILSCALE-IP-OF-EXIT-NODE:33627) to node [nQfJA]; online=yes, lastRecv=3s
Dec 08 01:22:34 Pepe tailscaled[30893]: [RATELIMIT] format("open-conn-track: timeout opening %v to node %v; online=%v, lastRecv=%v")
Dec 08 01:22:37 Pepe tailscaled[30893]: Accept: TCP{TAILSCALE-IP-OF-STEAM-DECK:36236 > TAILSCALE-IP-OF-EXIT-NODE:33627} 60 ok out

notes
I redacted the IP addresses of the devices