🐛 fix: avoid Tailscale socket on unsupported platforms - #23
Merged
Conversation
LittleSheep2Code
approved these changes
Aug 9, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
修复:不支持内置 Tailscale 的平台回退直连 tailnet 地址
问题
Android(以及 Windows/Web)不支持
package:tailscale的内置节点功能(tailscaleSupported仅 macOS/Linux 为true)。当连接目标地址位于 Tailscale CGNAT 网段(
100.64.0.0/10)时,SshConnectionManager._createClient会无条件尝试使用TailscaleSshSocket.connect,导致不支持平台触发:实际原因是当前平台不支持内置 Tailscale,而非用户未连接 Tailscale。
修改
修改
lib/servers/ssh_connection_manager.dart:tailscaleSupported判断。TailscaleSshSocket.connect。_LowLatencySshSocket.connect,保持普通 SSH 直连行为。import 'tailscale_service.dart'用于访问tailscaleSupported。isTailnetAddress判断逻辑保持不变,未影响其他连接流程。影响范围
✅ macOS/Linux
✅ Android/Windows/Web
测试
100.64.0.0/10地址时能够正常回退直连。Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.