When can we expect Tailscale suppot on Beryl MT1300?
We don’t have plans to support tailscale on Beryl MT1300 yet, maybe we will put tailscale in plug-ins.
Is this because of QSDK?
Some already backported tailscale
to OpenWrt 19.07, if it helps:
thank you, helpful to know, but I am hoping for native UI integration in 4.x
I tried to DIY it by updating to 4.x and installing the opkgs and I could authenticate and connect to the tailscale network, however I lost connection to my beryl and my network lost internet. I power-cycled the beryl and then I could re-connect but none of the subnet routing worked.
Ok so I got it working, however it is unstable, it disconnects/re-connects on a approx 30 second cycle.
Steps (Install Glinet version 4.3.6, OpenWrt 22.03.4 r20123-38ccc47687 / LuCI openwrt-22.03 branch git-23.093.57104-ce20b4a)
- Applications → Plugins → search tailscale
- Install
gl-sdk4-tailscale
- It should auto-install the other 3 search results
- Reboot router
- Applications → Enable Tailscale
- You will get a link to bind device, this didn’t work for me
- SSH into the router then run
tailscale status
, the binding link should appear, copy and paste it and authenticate - Connection should now be working!
Mine cycles between connecting and connected every 5 seconds. I can ping exposed subnets over my tailnet.
Buuuuut I have 80% packet loss
@dengxinfa I would be interesting in your thoughts. Any idea what is causing the cyclical close and opening of the tailscale connection?
Running tailscale status
repeatedly returns either a healthy list of peers or
root@GL-MT1300:~# tailscale status
# Health check:
# - not in map poll
unexpected state: NoState
Logs during one of these cycles:
Wed Jul 19 18:19:12 2023 daemon.notice netifd: Network device 'tailscale0' link is down
Wed Jul 19 18:19:12 2023 daemon.notice netifd: Interface 'tailscale' has link connectivity loss
Wed Jul 19 18:19:12 2023 daemon.err tailscaled[8920]: 2023/07/19 17:19:12 monitor: ip rule deleted: {Family:2 DstLength:0 SrcLength:0 Tos:0 Table:254 Protocol:0 Scope:0 Type:1 Flags:0 Attributes:{Dst:<nil> Src:<nil> Gateway:<nil> OutIface:0 Priority:1310 Table:254 Mark:16711680 Pref:<nil> Expires:<nil> Metrics:<nil> Multipath:[]}}
Wed Jul 19 18:19:12 2023 daemon.err tailscaled[8920]: 2023/07/19 17:19:12 monitor: ip rule deleted: {Family:2 DstLength:0 SrcLength:0 Tos:0 Table:253 Protocol:0 Scope:0 Type:1 Flags:0 Attributes:{Dst:<nil> Src:<nil> Gateway:<nil> OutIface:0 Priority:1330 Table:253 Mark:16711680 Pref:<nil> Expires:<nil> Metrics:<nil> Multipath:[]}}
Wed Jul 19 18:19:12 2023 daemon.err tailscaled[8920]: 2023/07/19 17:19:12 monitor: ip rule deleted: {Family:2 DstLength:0 SrcLength:0 Tos:0 Table:0 Protocol:0 Scope:0 Type:7 Flags:0 Attributes:{Dst:<nil> Src:<nil> Gateway:<nil> OutIface:0 Priority:1350 Table:0 Mark:16711680 Pref:<nil> Expires:<nil> Metrics:<nil> Multipath:[]}}
Wed Jul 19 18:19:12 2023 daemon.err tailscaled[8920]: 2023/07/19 17:19:12 monitor: ip rule deleted: {Family:2 DstLength:0 SrcLength:0 Tos:0 Table:52 Protocol:0 Scope:0 Type:1 Flags:0 Attributes:{Dst:<nil> Src:<nil> Gateway:<nil> OutIface:0 Priority:1370 Table:52 Mark:0 Pref:<nil> Expires:<nil> Metrics:<nil> Multipath:[]}}
Wed Jul 19 18:19:12 2023 daemon.notice netifd: Interface 'tailscale' is now down
Wed Jul 19 18:19:12 2023 daemon.err tailscaled[8920]: 2023/07/19 17:19:12 flushing log.
Wed Jul 19 18:19:12 2023 daemon.err tailscaled[8920]: 2023/07/19 17:19:12 logger closing down
Wed Jul 19 18:19:13 2023 daemon.notice netifd: Interface 'tailscale' is disabled
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 logtail started
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 Program starting: v1.32.3-1 (OpenWrt), Go 1.19.9: []string{"/usr/sbin/tailscaled", "--port", "41641", "--state", "/etc/tailscale/tailscaled.state"}
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 LogID: d0f0b52f46ed2d6cdf8fdf0361700c381f333778a6c43992d13e80436e66191c
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 logpolicy: using system state directory "/var/lib/tailscale"
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 wgengine.NewUserspaceEngine(tun "tailscale0") ...
Wed Jul 19 18:19:14 2023 daemon.notice netifd: Interface 'tailscale' is enabled
Wed Jul 19 18:19:14 2023 daemon.notice netifd: Interface 'tailscale' is setting up now
Wed Jul 19 18:19:14 2023 daemon.notice netifd: Interface 'tailscale' is now up
Wed Jul 19 18:19:14 2023 daemon.notice netifd: Network device 'tailscale0' link is up
Wed Jul 19 18:19:14 2023 daemon.notice netifd: Interface 'tailscale' has link connectivity
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 router: disabling tunneled IPv6 due to system IPv6 config: disable_ipv6 is set
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 router: mwan3 on openWRT detected, switching policy base priority to 1300
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 dns: [rc=unknown ret=direct]
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 dns: using *dns.directManager
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 link state: interfaces.State{defaultRoute=wan ifs={br-lan:[192.168.0.1/24] wan:[82.15.178.77/23]} v4=true v6=false}
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 magicsock: disco key = d:bd17980cecabe117
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 Creating WireGuard device...
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 Bringing WireGuard device up...
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 Bringing router up...
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 external route: up
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 Clearing router settings...
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 Starting link monitor...
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 Engine created.
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 monitor: RTM_NEWROUTE: src=, dst=82.15.178.0/23, gw=, outif=5, table=255
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 Start
Wed Jul 19 18:19:14 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:14 using backend prefs for "_daemon": Prefs{ra=true dns=true want=true routes=[192.168.0.0/24] snat=true nf=on Persist{lm=, o=, n=[QimaN] u="HarvsG"}}
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 Backend: logs: be:d0f0b52f46ed2d6cdf8fdf0361700c381f333778a6c43992d13e80436e66191c fe:
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 control: client.Login(false, 0)
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 control: doLogin(regen=false, hasUrl=false)
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 health("overall"): error: not in map poll
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 ipnserver: conn2: connection from userid 0; root has access
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 Start
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 control: client.Shutdown()
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 control: client.Shutdown: inSendStatus=0
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 control: mapRoutine: quit
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 control: Client.Shutdown done.
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 using backend prefs for "_daemon": Prefs{ra=true dns=true want=true routes=[192.168.0.0/24] snat=true nf=on Persist{lm=, o=, n=[QimaN] u="HarvsG"}}
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 Backend: logs: be:d0f0b52f46ed2d6cdf8fdf0361700c381f333778a6c43992d13e80436e66191c fe:
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 control: client.Login(false, 0)
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 control: doLogin(regen=false, hasUrl=false)
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 control: control server key from https://controlplane.tailscale.com: ts2021=[fSeS+], legacy=[nlFWp]
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 control: RegisterReq: onode= node=[QimaN] fup=false
Wed Jul 19 18:19:15 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:15 control: creating new noise client
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 control: RegisterReq: got response; nodeKeyExpired=false, machineAuthorized=true; authURL=false
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 control: netmap: got new dial plan from control
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 active login: HarvsG@github
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 Switching ipn state NoState -> Starting (WantRunning=0xbf1b24, nm=true)
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 magicsock: SetPrivateKey called (init)
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 wgengine: Reconfig: configuring userspace WireGuard config (with 2/7 peers)
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 wgengine: Reconfig: configuring router
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 magicsock: home is now derp-8 (lhr)
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 magicsock: endpoints changed: 82.15.178.77:41641 (stun), 192.168.0.1:41641 (local)
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 magicsock: adding connection to derp-8 for home-keep-alive
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 magicsock: 1 active derp conns: derp-8=cr0s,wr0s
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 control: NetInfo: NetInfo{varies=false hairpin=true ipv6=false udp=true icmpv4=false derp=#8 portmap= link=""}
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 derphttp.Client.Connect: connecting to derp-8 (lhr)
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 magicsock: derp-8 connected; connGen=1
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 health("overall"): ok
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 monitor: RTM_NEWROUTE: src=, dst=10.10.0.0/24, gw=, outif=39, table=52
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 monitor: RTM_NEWROUTE: src=, dst=192.168.0.0/24, gw=, outif=39, table=52
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 monitor: RTM_NEWROUTE: src=, dst=192.168.1.0/24, gw=, outif=39, table=52
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 wgengine: Reconfig: configuring DNS
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 dns: Set: {DefaultResolvers:[10.10.0.1 192.168.0.28] Routes:{hippo-banjo.ts.net.:[] ts.net.:[199.247.155.53 2620:111:8007::53]}+65arpa SearchDomains:[hippo-banjo.ts.net.] Hosts:8}
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 dns: Resolvercfg: {Routes:{.:[10.10.0.1 192.168.0.28] ts.net.:[199.247.155.53 2620:111:8007::53]} Hosts:8 LocalDomains:[hippo-banjo.ts.net.]+65arpa}
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 dns: OScfg: {Nameservers:[100.100.100.100] SearchDomains:[hippo-banjo.ts.net.] MatchDomains:[] Hosts:[]}
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 Switching ipn state Starting -> Running (WantRunning=0xbf1b24, nm=true)
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 wgengine: Reconfig: configuring userspace WireGuard config (with 3/7 peers)
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 peerapi: serving on http://100.92.1.135:43268
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 peerapi: failed to do peerAPI listen, harmless (netstack available) but error was: listen tcp6 [fd7a:115c:a1e0:ab12:4843:cd96:625c:187]:0: bind: cannot assign requested address
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 peerapi: serving on http://[fd7a:115c:a1e0:ab12:4843:cd96:625c:187]:1
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 ipnserver: conn2: ReadMsg: read unix /var/run/tailscale/tailscaled.sock->@: read: connection reset by peer
Wed Jul 19 18:19:16 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:16 Accept: ICMPv4{100.92.1.135:0 > 100.107.99.123:0} 84 ok out
Wed Jul 19 18:19:17 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:17 control: netmap: got new dial plan from control
Wed Jul 19 18:19:17 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:17 tstun: [unexpected] received self disco out packet over tstun; dropping
Wed Jul 19 18:19:17 2023 user.notice firewall: Reloading firewall due to ifup of tailscale (tailscale0)
Wed Jul 19 18:19:17 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:17 Accept: ICMPv4{100.92.1.135:0 > 100.107.99.123:0} 84 ok out
Wed Jul 19 18:19:18 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:18 Accept: ICMPv4{100.92.1.135:0 > 100.107.99.123:0} 84 ok out
Wed Jul 19 18:19:19 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:19 monitor: RTM_DELROUTE: src=82.15.178.77/0, dst=, gw=82.15.178.1, outif=5, table=52
Wed Jul 19 18:19:19 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:19 [RATELIMIT] format("monitor: %s: src=%v, dst=%v, gw=%v, outif=%v, table=%v")
Wed Jul 19 18:19:20 2023 user.notice mwan3[10937]: Execute ifup event on interface tailscale (tailscale0)
Wed Jul 19 18:19:20 2023 daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(br-lan) 192.168.0.114 e4:f0:42:22:b8:24
Wed Jul 19 18:19:20 2023 daemon.info dnsmasq-dhcp[1]: DHCPACK(br-lan) 192.168.0.114 e4:f0:42:22:b8:24 Google-Home-Mini
Wed Jul 19 18:19:20 2023 user.notice mwan3[10937]: Starting tracker on interface tailscale (tailscale0)
Wed Jul 19 18:19:22 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:22 magicsock: disco: node [rTK7t] d:4075b15ea236c745 now using 140.238.65.88:41641
Wed Jul 19 18:19:23 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:23 magicsock: disco: node [uuiIl] d:eb8384b75d4ac2d7 now using 132.145.77.190:41641
Wed Jul 19 18:19:24 2023 user.info mwan3rtmon[4483]: Detect rtchange event.
Wed Jul 19 18:19:26 2023 daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(br-lan) 192.168.0.114 e4:f0:42:22:b8:24
Wed Jul 19 18:19:26 2023 daemon.info dnsmasq-dhcp[1]: DHCPACK(br-lan) 192.168.0.114 e4:f0:42:22:b8:24 Google-Home-Mini
Wed Jul 19 18:19:26 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:26 tailscaled got signal terminated; shutting down
Wed Jul 19 18:19:26 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:26 control: client.Shutdown()
Wed Jul 19 18:19:26 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:26 control: client.Shutdown: inSendStatus=0
Wed Jul 19 18:19:26 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:26 control: mapRoutine: quit
Wed Jul 19 18:19:26 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:26 control: Client.Shutdown done.
Wed Jul 19 18:19:26 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:26 magicsock: closing connection to derp-8 (conn-close), age 10s
Wed Jul 19 18:19:26 2023 daemon.err tailscaled[10264]: 2023/07/19 17:19:26 magicsock: 0 active derp conns
Wed Jul 19 18:19:26 2023 daemon.notice netifd: Network device 'tailscale0' link is down
Running ps | grep tail
repeatedly:
root@GL-MT1300:~# ps | grep tail
12661 root 667m S /usr/sbin/tailscaled --port 41641 --state /etc/tailscale/tailscaled.state
13822 root 1316 S grep tail
As it stops working:
root@GL-MT1300:~# ps | grep tail
12661 root 667m S /usr/sbin/tailscaled --port 41641 --state /etc/tailscale/tailscaled.state
13839 root 1336 S {gl_tailscale} /bin/sh /usr/bin/gl_tailscale restart
13841 root 1512 S {tailscale} /bin/sh /etc/rc.common /etc/init.d/tailscale restart
13888 root 666m R /usr/sbin/tailscaled --cleanup
13920 root 1316 S grep tail
Either appropriately or inappropriately something is calling /bin/sh /usr/bin/gl_tailscale restart
So the cycling issue was due to a conflicting interface I had set up when I tried to do tailscale manually. Now im having this problem: Tailscale cannot reach subnets on other devices - #7 by jsr