Slate 7 travel route w/ tailscale. Can't access my devices on my tailnet

Hello! After reading Why the GL.iNet Beryl AX and Tailscale make for a great travel router i got the great idea that “The LAN subnet is the one you probably want, as it allows your trusted devices to access your tailnet through the router.”

This sounds really cool. basically. anyone connecting to my router, can now access my tailnet nodes. I enabled remote access LAN setting and followed the instructions here: Tailscale - GL.iNet Router Docs 4 but I can’t access my devices (trying via the 100. IP or the .ts.net address) any ideas if im missing some other setting?

bonus question: my tailscale dashboard says my tailscale is out of date on my slate 7. can i update it? or does it require a router update to get to latest tailscale?

Hi

Could you please confirm whether the routes for the Slate 7 have been approved in the Tailscale admin panel?

If they are approved but the device connected to the Slate 7 still cannot communicate with other Tailscale nodes, please help us check the following:

  1. The firmware version currently running on the Slate 7
  2. Screenshots of GL UI → Applications → Tailscale and the Tailscale admin panel, so we can review the configuration
  3. A route trace to help identify where the traffic is being blocked:
# Windows (CMD)
tracert <tailscale_ip>

# macOS / Linux
traceroute <tailscale_ip>

Additionally, the Slate 7 currently has an issue affecting download speeds. Please refer to this temporary workaround for resolution.

It is also approved in tailscale admin console, correct.

  1. 4.8.1 is the firmware
  2. Screenshots attached
  3. traceroute blah.macaroni-smoot.ts.net
    traceroute to blah.macaroni-smoot.ts.net (100.116.22.43), 64 hops max, 40 byte packets
     1  console.gl-inet.com (192.168.8.1)  5.141 ms  6.186 ms  3.931 ms
     2  * * *
    

Are you able to possibly produce a simple diagram showing your network topology with your local and remote routers and how you are planning to access your clients?

At home I have my server (“blah” in the screenshot above) with tailscale installed

then i have my glinet router with tailscale installed when im travelling (“gl-be3600” in the screenshot above)

when im travelling, when i connect my phone or laptop to my router… i expect to be able to ping my “blah” machine (either with the 100.x IP or the blah.my-animal.ts.net)

tailscale pretty much has all default settings. its a new TS account so i haven’t done anything crazy with acl rules or dns overriding or anything. saw the article about TS having support on glinet travel routers so that all clients connected to the router dont need to have TS installed, so i bought the router.

Your screenshot shows that you are advertising your subnet LAN routes on your Slate 7 when you would actually need to do that on your home server (and not needed on your travel router). Sorry if I misunderstood your topology.

I don’t believe that’s correct. blah is on my tailnet. glirouter is on my tailnet. They should be able to communicate with each other.

then i enable LAN subnet on the glinet router so that clients connected to my router, can now access “blah”.

the article here says

The LAN subnet is the one you probably want, as it allows your trusted devices to access your tailnet through the router.

but when you follow those instructions you can’t access it.

I believe that what you are describing falls under the site-to-site (as oppsed to client-to-server) feature of Tailscale but someone with more experties than I am will hopefully shed some more light on the matter.

i think site to site is when you have subnet to subnet.

The configuration looks well.

Could you share your device with us via GoodCloud for inspection following this tutorial?

Please send us the device's MAC address and WebUI login credentials via private message so we can access it remotely.

Found the solution hidden away in this youtube video (timestamped for convenience)

I wonder if this means that glinet router has a bug in it, or if docs should be updated

1 Like

The workaround shown in the video is based on firmware v4.6.9 and should not directly applicable to current firmware versions.

From firmware v4.8.x onward, Tailscale operates within its own firewall zone, and forwarding to LAN and WAN is handled automatically according to the router’s configuration. Therefore, manually assigning firewall zones is generally unnecessary.

One possible difference is that masquerading is enabled on the WAN firewall zone but not on the Tailscale zone.
This may help in some scenarios like remote Tailnet devices don't support routing, but please be aware that it will perform source NAT, meaning remote Tailnet devices will only see the Slate 7’s Tailscale IP instead of the original LAN client IP (192.168.8.x).

1 Like

hm. so im not sure what to do now. following the instructions in the video fixed my issue, but you said that it shouldn’t be needed.

I can DM you my mac address and you can investigate? I can set you up on my secondary WAN connection that’s isolated from my actual home network so I don’t have an issue with sharing if that will help you investigate.

Thanks

Yes, if you'd like us to continue investigating, you can share the device with us via GoodCloud for further examination.
Technical Support via GoodCloud - GL.iNet Router Docs 4

Don't forget to send us the device's MAC address and WebUI password via private message so we can access it.

Thank you for providing remote access.

We perform a detailed packet capture to pinpoint the cause of the connection issue.
Our analysis shows the following:

  1. Direct LAN Routing: When the router sends requests using the local LAN address as the source, the target server does not respond to the ICMP (ping) requests.

  2. Masquerading (SNAT): When we enable Masquerading in the tailscale0 firewall zone—which translates the LAN source address to the router's Tailscale IP—the target server responds successfully.

Based on this behavior, we confirmed our previous hypotheses:

  1. The Tailscale tunnel on your GL.iNet router is working normally.
  2. The issue lies on the target server's side. It is likely blocking traffic from "unknown" subnets (your LAN) via a firewall, or it lacks a return route to send data back to your specific LAN IP range.

We recommend:

  1. Enable Masquerading: You can enable Masquerading for the tailscale0 zone in the firewall settings. This is the simplest fix, though please note that the target server will see all traffic as coming from the router itself, rather than individual devices on your LAN.

  2. Adjust Target Server Configuration: If you need to identify individual devices, you should instead update the target server’s firewall to allow your LAN subnet or ensure its routing table correctly points back to your router for that subnet.

1 Like

Hm. I have to admit some of this is going over my head. but i ended up running tailscale status on my server and see an error of

root@my-vps:~# tailscale status
100.89.69.45   my-vps                coltonidle@  linux  -
100.86.214.73  gl-be3600             coltonidle@  linux  -

# Health check:
#     - Some peers are advertising routes but --accept-routes is false

so from the looks of it. in tailscales documentation. most tailscale clients by default have accept-routes = true. but linux machines running tailscale have it set to false. so after:

  • i enabled tailscale on glinet,
  • then turn on LAN subnet routing on glinet
  • accepting subnet routing on tailscale admin console

I need to go to my server and accept-routes there via tailscale set --accept-routes

then everything seems to work.

sorry for the confusion, but i think we should be good to go now. hopefully this also provides an answer to other folks. one thing i still want to do is try how this actually works between other nodes on my tailnet as this is a small example, but i will come back and ask if i have other specific issues.

thank you @will.qiu for the detailed support! i will continue to buy glinet products (im up to 6!!!)

2 Likes

We're glad to hear the issue has been resolved.
Thank you for your interest in GL.iNet products.

thanks. i will try to read more into this as im very curious why my first solution (from the 3rd party youtube video) did cause this to work lol