mirror of
https://github.com/juanfont/headscale.git
synced 2026-01-12 04:10:32 +01:00
[Bug] Can't always connect to Heascale through data (lte/4g) without passing via wifi first #720
Closed
opened 2025-12-29 02:22:49 +01:00 by adam
·
9 comments
No Branch/Tag Specified
main
update_flake_lock_action
gh-pages
kradalby/release-v0.27.2
dependabot/go_modules/golang.org/x/crypto-0.45.0
dependabot/go_modules/github.com/opencontainers/runc-1.3.3
copilot/investigate-headscale-issue-2788
copilot/investigate-visibility-issue-2788
copilot/investigate-issue-2833
copilot/debug-issue-2846
copilot/fix-issue-2847
dependabot/go_modules/github.com/go-viper/mapstructure/v2-2.4.0
dependabot/go_modules/github.com/docker/docker-28.3.3incompatible
kradalby/cli-experiement3
doc/0.26.1
doc/0.25.1
doc/0.25.0
doc/0.24.3
doc/0.24.2
doc/0.24.1
doc/0.24.0
kradalby/build-docker-on-pr
topic/docu-versioning
topic/docker-kos
juanfont/fix-crash-node-id
juanfont/better-disclaimer
update-contributors
topic/prettier
revert-1893-add-test-stage-to-docs
add-test-stage-to-docs
remove-node-check-interval
fix-empty-prefix
fix-ephemeral-reusable
bug_report-debuginfo
autogroups
logs-to-stderr
revert-1414-topic/fix_unix_socket
rename-machine-node
port-embedded-derp-tests-v2
port-derp-tests
duplicate-word-linter
update-tailscale-1.36
warn-against-apache
ko-fi-link
more-acl-tests
fix-typo-standalone
parallel-nolint
tparallel-fix
rerouting
ssh-changelog-docs
oidc-cleanup
web-auth-flow-tests
kradalby-gh-runner
fix-proto-lint
remove-funding-links
go-1.19
enable-1.30-in-tests
0.16.x
cosmetic-changes-integration
tmp-fix-integration-docker
fix-integration-docker
configurable-update-interval
show-nodes-online
hs2021
acl-syntax-fixes
ts2021-implementation
fix-spurious-updates
unstable-integration-tests
mandatory-stun
embedded-derp
prtemplate-fix
v0.28.0-beta.1
v0.27.2-rc.1
v0.27.1
v0.27.0
v0.27.0-beta.2
v0.27.0-beta.1
v0.26.1
v0.26.0
v0.26.0-beta.2
v0.26.0-beta.1
v0.25.1
v0.25.0
v0.25.0-beta.2
v0.24.3
v0.25.0-beta.1
v0.24.2
v0.24.1
v0.24.0
v0.24.0-beta.2
v0.24.0-beta.1
v0.23.0
v0.23.0-rc.1
v0.23.0-beta.5
v0.23.0-beta.4
v0.23.0-beta3
v0.23.0-beta2
v0.23.0-beta1
v0.23.0-alpha12
v0.23.0-alpha11
v0.23.0-alpha10
v0.23.0-alpha9
v0.23.0-alpha8
v0.23.0-alpha7
v0.23.0-alpha6
v0.23.0-alpha5
v0.23.0-alpha4
v0.23.0-alpha4-docker-ko-test9
v0.23.0-alpha4-docker-ko-test8
v0.23.0-alpha4-docker-ko-test7
v0.23.0-alpha4-docker-ko-test6
v0.23.0-alpha4-docker-ko-test5
v0.23.0-alpha-docker-release-test-debug2
v0.23.0-alpha-docker-release-test-debug
v0.23.0-alpha4-docker-ko-test4
v0.23.0-alpha4-docker-ko-test3
v0.23.0-alpha4-docker-ko-test2
v0.23.0-alpha4-docker-ko-test
v0.23.0-alpha3
v0.23.0-alpha2
v0.23.0-alpha1
v0.22.3
v0.22.2
v0.23.0-alpha-docker-release-test
v0.22.1
v0.22.0
v0.22.0-alpha3
v0.22.0-alpha2
v0.22.0-alpha1
v0.22.0-nfpmtest
v0.21.0
v0.20.0
v0.19.0
v0.19.0-beta2
v0.19.0-beta1
v0.18.0
v0.18.0-beta4
v0.18.0-beta3
v0.18.0-beta2
v0.18.0-beta1
v0.17.1
v0.17.0
v0.17.0-beta5
v0.17.0-beta4
v0.17.0-beta3
v0.17.0-beta2
v0.17.0-beta1
v0.17.0-alpha4
v0.17.0-alpha3
v0.17.0-alpha2
v0.17.0-alpha1
v0.16.4
v0.16.3
v0.16.2
v0.16.1
v0.16.0
v0.16.0-beta7
v0.16.0-beta6
v0.16.0-beta5
v0.16.0-beta4
v0.16.0-beta3
v0.16.0-beta2
v0.16.0-beta1
v0.15.0
v0.15.0-beta6
v0.15.0-beta5
v0.15.0-beta4
v0.15.0-beta3
v0.15.0-beta2
v0.15.0-beta1
v0.14.0
v0.14.0-beta2
v0.14.0-beta1
v0.13.0
v0.13.0-beta3
v0.13.0-beta2
v0.13.0-beta1
upstream/v0.12.4
v0.12.4
v0.12.3
v0.12.2
v0.12.2-beta1
v0.12.1
v0.12.0-beta2
v0.12.0-beta1
v0.11.0
v0.10.8
v0.10.7
v0.10.6
v0.10.5
v0.10.4
v0.10.3
v0.10.2
v0.10.1
v0.10.0
v0.9.3
v0.9.2
v0.9.1
v0.9.0
v0.8.1
v0.8.0
v0.7.1
v0.7.0
v0.6.1
v0.6.0
v0.5.2
v0.5.1
v0.5.0
v0.4.0
v0.3.6
v0.3.5
v0.3.4
v0.3.3
v0.3.2
v0.3.1
v0.3.0
v0.2.2
v0.2.1
v0.2.0
v0.1.1
v0.1.0
Labels
Clear labels
CLI
DERP
DNS
Nix
OIDC
SSH
bug
database
documentation
duplicate
enhancement
faq
good first issue
grants
help wanted
might-come
needs design doc
needs investigation
no-stale-bot
out of scope
performance
policy 📝
pull-request
question
regression
routes
stale
tags
tailscale-feature-gap
well described ❤️
wontfix
Mirrored from GitHub Pull Request
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/headscale#720
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @markcst on GitHub (May 31, 2024).
Is this a support request?
Is there an existing issue for this?
Current Behavior
Probably it's me and I can't figure out how Headscale (btw nice piece of sw) works but this is what happens and idk if it's normal:
*(I'm not sure if this it's always the case when rebooting the phone)
Currently, these are my nodes

And these are my routes

Idk if this too is normal but: when I paired my devices, none of them automatically appaired in the routes list, and I had to add them with the advertise command. I did this with my Linux PC (
srv) and my Android phone (rn7-mrk) with the "Run as exit node" on this one. Off course I can't do this on iOS as the Tailscale doc says.Idk if I have to at least advertise all nodes in the Headscale net to make it function properly and to avoid the problem above
Expected Behavior
I expect to be able to connect to the Headscale mesh network even using only the data connection, even after a disconnection from it through the toggle in the Tailscale app
Steps To Reproduce
Environment
Runtime environment
Anything else?
No response
@kradalby commented on GitHub (Jun 3, 2024):
did you have this issues with the prior stable version (0.22.3)?
@timmyb824 commented on GitHub (Jun 6, 2024):
Just wanted to mention that I recently began configuring headscale as a transition from tailscale. I experimented with this specific situation using my iPhone and encountered the same problem. It didn't connect over cellular, so I had to turn on wifi again for it to connect. Once connected, I can turn off wifi and it seems to work fine over cellular. I'm running headscale (v0.22.3) in a Proxmox LXC. iPhone Tailscale client version is 1.66.3.
@github-actions[bot] commented on GitHub (Sep 5, 2024):
This issue is stale because it has been open for 90 days with no activity.
@github-actions[bot] commented on GitHub (Sep 12, 2024):
This issue was closed because it has been inactive for 14 days since being marked as stale.
@Egleyser commented on GitHub (Sep 24, 2024):
Hi guys, I implemented the latest headscale with the latest client for iOS on an iPhone and iPad and the same thing happened on both. As mentioned by @timmyb824 enabling the VPN while on wifi and then turning it off makes the device connect to the advertised nodes and subnets.
@markcst commented on GitHub (Dec 9, 2024):
No one else has this issue? What I'm doing wrong?
I simply disconnect the phone from the wifi, then use 4G data with the Tailscale (Headscale) VPN enabled and everything seems fine. Device appears as
onlinein the nodes list. Then I turn off mobile data and VPN, I turn them back on after a while - in this whole time I didn't reconnect to the wifi - so I can't reconnect to the Headscale server.In the Tailscale app, it shows that the device is connected, but it is not. Indeed looking at nodes list on the server it shows the device as
offline. After a few seconds/minutes it shows that I'm disconnected on the Tailscale app too.I'm on a Pixel 7a with Android 15, but same happens on other Android phones, and even on iPhone. @kradalby, any help?
@topshelf510 commented on GitHub (Feb 15, 2025):
Same exact issue, I thought headscale was not worth the hassle at all but now I'm thinking it might be the way I'm setting it up. Have yet to see any kind of documentation to help me with this either 😔
@krofek commented on GitHub (Jun 23, 2025):
Hello, was trying out a few thing. Now seems to be working through mobile as it should.
It turns out the node is visible, because it is connected through Hs or ts network. But you cannot connect with mobile network because the local dns is not working correctly. That's why it works after connecting locally through wifi and then changing to movile. Locally the router routes internal routes and the setting stays on mobile and local node until disconnected.
So the fix is probably for most people with this problem the same. Fixing the node's dns service.
Issue url: https://tailscale.com/kb/1188/linux-dns
Tl;dr fix:
Don't know which symlink is the right one, dont have enough time to check out if it's the binary or config location. So I just used both, haha.
@FinMc commented on GitHub (Aug 12, 2025):
I'm also having this issue. Have headscale running on local server with internal local DNS routing with pihole and nginx. When i connect locally works fine. When disconnect from wifi to mobile data works as intended and able to access internal devices and pihole capabilites. But when i disconnect, close the app and relaunch I can no longer connect until I rejoin the wifi. Any tips would be great.
Not an android issue is it?