• 请不要在回答技术问题时复制粘贴 AI 生成的内容
MoGeJiEr
V2EX  ›  程序员

mihomo 接入 tailscale

  •  4
     
  •   MoGeJiEr · 2 days ago · 8236 views

    自己改了下 mihomo 内核,支持接入 tailscale 网络了,链接:https://github.com/cyenxchen/mihomo

    如果你用的安卓可以使用我改过的 clashmi,这样就可以同时翻墙+访问家里网络了,链接:https://github.com/cyenxchen/clashmi

    我个人自用了几天,没发现什么大问题,当然有问题了也欢迎带日志反馈.

    配置示例:

    proxies:
      - name: ts-mihomo
        type: tailscale
        auth-key: tskey-auth-xxxxx
        hostname: ts-mihomo
        control-url: https://controlplane.tailscale.com
        ephemeral: true # 是否是临时节点
        state-dir: "./tailscale"  # 连接上 tailscale 网络之后会有一些数据持久化,该选项是就指定保存这些数据的目录
        exit-node: "" # 可选,不需要出口节点就不填
        accept-routes: true # 可选,默认 true ,用于接受 subnet routes
    
    rules:
      # 将你家里的内网流量打到 tailscale 中
      - IP-CIDR,192.168.1.0/24,ts-mihomo,no-resolve
    
    Supplement 1  ·  1 day ago
    已经提 pr 到官方了,官方管理也回复说了可以合并,但要做一些修改,其中最大的问题就是强兼 1.20 版本,这块等我有时间就去处理.
    Supplement 2  ·  12h 50m ago
    应该是官方接手了,pr 已经合并主干了,各位等后面更新吧.
    101 replies    2026-05-14 23:03:30 +08:00
    1  2  
    qinfengge
        1
    qinfengge  
       2 days ago
    这两个本来就可以同时开吧,只要 clash 不开 TUN 。我电脑上这两个都是开机启动的,没啥问题啊。手机端的话感觉这需求也太少见了吧
    MoGeJiEr
        2
    MoGeJiEr  
    OP
       2 days ago   ❤️ 2
    @qinfengge 主要就是为了满足移动端
    kdwycz
        3
    kdwycz  
       2 days ago
    移动设备只允许一个 vpn 。这个功能很棒!
    snachx
        4
    snachx  
       2 days ago
    可以考虑发 pr 给 mihomo 官方
    MoGeJiEr
        5
    MoGeJiEr  
    OP
       2 days ago
    @snachx 改动有点多,提 pr 怕 argue 来 argue 去的,我嫌麻烦,不过后面我尝试提一下
    loveshuyuan
        6
    loveshuyuan  
       2 days ago
    赞一个,做了我一直想做的事,建议发一个 PR 给官网,很多人有这个需求,https://github.com/MetaCubeX/mihomo/issues?q=tailscale
    zealotxxxx
        7
    zealotxxxx  
       2 days ago
    这种还挺危险的,不能随意暴露自己的 tskey
    zealotxxxx
        8
    zealotxxxx  
       2 days ago
    但是确实是需要的东西了
    MoGeJiEr
        9
    MoGeJiEr  
    OP
       2 days ago
    @zealotxxxx #7 危险点在哪里?你自用的配置不可能到处发吧
    zealotxxxx
        10
    zealotxxxx  
       2 days ago
    @MoGeJiEr 正常脑子是不能的。但是,有些人脑子缺根筋就会。(当然,这是个人自己的问题了)
    q1169989139
        11
    q1169989139  
       2 days ago
    我直接家里路由器开个小飞机服务端就行了,然后外面设备就可以同时回家和出国了,还能免流
    ychbest
        12
    ychbest  
       2 days ago
    不错,我每次手机连家里要自己切换 vpn ,很麻烦
    zealotxxxx
        13
    zealotxxxx  
       2 days ago
    @q1169989139 家里的场景主要是会受限于能否直连,非直连的情况下就极其吃 derp 服务器的带宽了。
    Quik
        14
    Quik  
       2 days ago
    好东西啊。如果能进 mihomo 主线一起更新就好了,移动端真的需要这玩意
    biu7
        15
    biu7  
       2 days ago
    赞,太需要了,收藏一下
    madtwilight
        16
    madtwilight  
       2 days ago
    之前看 iOS 上 Stash 增加了 tailscale 支持,就等 mihomo 了,能 pr 官方会更好
    shyrock2026
        17
    shyrock2026  
       2 days ago
    ios 能用吗?
    flyxq
        18
    flyxq  
       2 days ago
    @shyrock2026 Stash 测试版支持
    cutiechi
        19
    cutiechi  
       2 days ago
    赞,我现在的做法是,docker 里运行一个 tailscale 然后暴露 socks proxy ,再在 mihomo 里配置,有了这个之后 docker 可以直接去掉了
    Kinnice
        20
    Kinnice  
       2 days ago
    @loveshuyuan
    @snachx
    @MoGeJiEr #5 实现这个很简单了,之前也实现过 pr ,没通过,主要问题是怎么在 go1.20 workwell. 现在好像限制死了 go1.20
    WebKit
        21
    WebKit  
       2 days ago
    @q1169989139 #11 怎么操作?我家里路由器开了翻墙,但是好像访问外网不行啊。还是走的本地网络
    q1169989139
        22
    q1169989139  
       2 days ago
    @WebKit 可能你固件和插件的问题吧,我是大雕 op 加 ssrp 的插件,ssrp 里开的服务端
    MoGeJiEr
        23
    MoGeJiEr  
    OP
       2 days ago
    @Kinnice 确定限死 go1.20 吗?确定的话 pr 我也不提了算了
    xiaokanhongchen
        24
    xiaokanhongchen  
       2 days ago
    确实,官方要是能合并就最好了,很需要这样的功能。我现在用的 easytier 和 mihomo 在 root 手机上共存,要是这个能行的话,又能节约资源了
    xiaokanhongchen
        25
    xiaokanhongchen  
       2 days ago
    https://v2ex.com/t/1212048
    我这么实现的,不知道能不能和 easytier 也合并起来?
    Kinnice
        26
    Kinnice  
       2 days ago via Android
    @MoGeJiEr 看着历史是为了兼容性考虑
    evemoo
        27
    evemoo  
       2 days ago
    类似 singbox endpoint
    比家里开个 ss 回连更省事,手机还挺需要这个的
    kenX
        28
    kenX  
       2 days ago
    有类似需求,实现方案也很多。
    想讨论一个场景:
    移动端使用某个方案实现这个效果后,回到家里怎么自动切换为直接访问,避免再去外面绕圈?
    通过场景模式,回家自动切换代理场景吗?
    MoGeJiEr
        29
    MoGeJiEr  
    OP
       2 days ago
    @kenX ios 上有很多工具是支持连接指定 wifi 自动暂停的,安卓上我印象中也有一个工具有类似的功能,但是不支持多 proxy-provider 我就没深入了解,名字现在我也想不起来了🥲
    jfhufhf
        30
    jfhufhf  
       2 days ago
    很方便的功能,希望能合并到主线里面去
    KingFong
        31
    KingFong  
    PRO
       2 days ago
    太厉害了,v2 上神人还是多啊!🤙🤙🤙
    dddedd
        32
    dddedd  
       2 days ago
    @MoGeJiEr Loon QX 等都支持不同 WiFi 自动切换不同策略(节点,直连)
    CodeDrift
        33
    CodeDrift  
       2 days ago
    stash 还在测试,已经用上了。能合到主分支最好了
    zwlinc
        34
    zwlinc  
       2 days ago
    我很早之前就解决了, tailscale 是常驻, 手机上也不需要其他代理软件, 只需要把 fakeip range 用 tailscale 的 subnet router 路由到 ts 内的某个代理节点即可, 不过需要稍微配置一下 dns, 懂 fakeip 的应该能看懂我在说啥.
    xiaokanhongchen
        35
    xiaokanhongchen  
       2 days ago via Android
    mihomo 能否生成一个 android 的二进制文件?我用的 box4magisk
    cadl
        36
    cadl  
       2 days ago
    赞。请问 auth-key 有没有办法放到配置文件之外使用呢? auth-key 如果是非可重用的,这个配置在其他地方也不能用这个 auth-key 了。如果是可重用的 auth-key ,明文的配置总感觉不太踏实。
    要是能放到配置文件之外,在启动时传进去就好了
    gfreezy
        37
    gfreezy  
       2 days ago via iPhone
    手机连 tailscale 一般除了 ssh 还有什么场景
    tomclancy
        38
    tomclancy  
       2 days ago
    牛逼,配享太庙
    irrigate2554
        39
    irrigate2554  
       2 days ago
    有个骚操作,家里路由器配置个 ss 节点,使用 IPv6 + ss 回家,没有 ipv6 也可配合 frp
    MoGeJiEr
        40
    MoGeJiEr  
    OP
       2 days ago
    @cadl 可以的,只不过需要改代码,我一时也想不到什么更好的方式,你可以说说你的想法
    ifu25
        41
    ifu25  
       2 days ago
    厉害,前段时间正好在研究怎么实现移动端双开,发现搞不定,看到这个贴子真是喜出望外,等试试,支持。
    MoGeJiEr
        42
    MoGeJiEr  
    OP
       2 days ago
    @xiaokanhongchen #35 可以的,回头就加上
    MoGeJiEr
        43
    MoGeJiEr  
    OP
       2 days ago
    @zealotxxxx #10 你也可以说说你的想法,比如存放在哪会更好?
    milkv
        44
    milkv  
       2 days ago
    @q1169989139 #11 请教怎么免流
    xxyyang
        45
    xxyyang  
       2 days ago
    看起来不错。我现在用家里闲置机器开三个虚拟机,给 mihomo 、AdGuard Home 和 Tailscale 分配固定 IP 。通过开启 Exit Node 和 内网 DNS ,目前所有接入 TS 的设备都能直接享受到去广告和分流,5G 远程也能跑满家里 40M 的上行。
    coolfan
        46
    coolfan  
       2 days ago
    吊炸天
    abc8678
        47
    abc8678  
       2 days ago via Android
    zerotier 也希望有
    HangoX
        48
    HangoX  
       2 days ago
    我看到 stash 加了这个东西,没想到 mihomo 也能加,不错
    thet
        49
    thet  
       2 days ago
    @kenX stash 都能解决
    dejaldie
        50
    dejaldie  
       2 days ago
    牛的,有没有 shadowrocket 和 tailscale 同时跑的
    Oranjekop
        51
    Oranjekop  
       1 day ago
    直接搭一个 ss2022 不照样可以远程访问内网 IP
    bowencool
        52
    bowencool  
       1 day ago
    为什么这么多人非要钻牛角尖开两个 VPN ?为什么不想办法在家里的网络上搞定梯子呢?我一直都是把出口节点放在家里网络上,一举两得,没有很难
    oop12
        53
    oop12  
       1 day ago
    这和移动端用 tailscale 的出口节点不是一样嘛?有可以回家又可以上网
    cutiechi
        54
    cutiechi  
       1 day ago
    @bowencool 家里上传只有 50M
    Tink
        55
    Tink  
    PRO
       1 day ago
    我在用 clashmi ,楼主不考虑给上游提个 pr 吗
    maoqiucute
        56
    maoqiucute  
       1 day ago
    我现在家里内网子网中有一个 socks 端口的代理,我现在是本地开一个端口转发到该内网机器(经过 easyTier 、tailscale ),然后 clash 配置为

    - name: "Intranet Easytier"
    type: socks5
    tls: false
    server: 127.0.0.1

    类似 https://v2ex.com/t/1212048 这种实现方式

    除了这种方式,能更优雅吗?
    MoGeJiEr
        57
    MoGeJiEr  
    OP
       1 day ago
    @Tink 提不了 pr,只能提个 issue 建议作者开放自定义 mihomo 内核入口,clashmi 很关键的一个模块(桥接手机 vpn 那一块)是闭源的.
    xiaokanhongchen
        58
    xiaokanhongchen  
       1 day ago
    感谢,已测试了 mihomo 的 android 端,完美适配。手机测试速度很快。感谢感谢。
    xiaokanhongchen
        59
    xiaokanhongchen  
       1 day ago
    @bowencool 不觉得这样梯子怎么都得绕一下,延时更高了把
    yiranw09
        60
    yiranw09  
       1 day ago
    shadowrocket 不知道怎么弄
    MeiJiayun
        61
    MeiJiayun  
       1 day ago
    牛,很实用的功能,大佬可以帮提 mr 到 mihomo 么
    SakuraYuki
        62
    SakuraYuki  
       1 day ago
    ios 为了解决这个问题我直接买 surge 了
    w568w
        63
    w568w  
       1 day ago
    @bowencool 1. 家里上行带宽太低 2. 延迟高 3. 单点故障 4. 人在外出还可能要走中转,速度更慢、延迟更高
    amorphobia
        64
    amorphobia  
       1 day ago
    @dejaldie

    如果你有公网 IP 的话可以试试我的方法,家中服务器专门开一个 ssserver ,小火煎选择“场景”,连家里 wifi 时使用普通配置;另复制一份配置作为不连家里 wifi 时使用,在这份配置里添加家中局域网 ip 走 ss 流量
    nanyancc
        65
    nanyancc  
       1 day ago
    牛逼的,支持一下
    nanyancc
        66
    nanyancc  
       1 day ago
    在 GitHub 的 PR 里支持你了哈哈 https://github.com/MetaCubeX/mihomo/pull/2784
    chenkali
        67
    chenkali  
       1 day ago
    牛逼,专门登录账号进来点赞
    bkmi
        68
    bkmi  
       1 day ago via Android
    不错,为了在手机上用 Tailscale ,我都换 sing-box 了
    xxyangyoulin
        69
    xxyangyoulin  
       1 day ago
    太需要这个了,前几年开始用 tailscale 就一直想实现这个功能
    mofater
        70
    mofater  
       1 day ago
    好东西,没 root 前要是看到我就用了
    Cabana
        71
    Cabana  
       1 day ago
    赞一个~
    iphone stash 已经支持用起来了, 不要太爽~
    就等 OP 的 PR 合入 mihomo 主线,Android 备机也能用啦~
    zzxCNCZ
        72
    zzxCNCZ  
       1 day ago
    家里有代理网关的话,直接 wireguard 连回家,route 配置为家里的网关,又翻又能访问家里网络和 vpn 网络
    zx900930
        73
    zx900930  
       1 day ago
    @zzxCNCZ 这种方式和 tailscale 选家里软路由作为 exit node 一样,缺点是你的客户端的网络下行速度受制于你家 ISP 的上行带宽。
    WebKit
        74
    WebKit  
       1 day ago
    @q1169989139 #22 可以了。谢谢大佬,是 openwrt 上的插件不支持 exit-node 。在 NAS 上转个 docker 版本可以了
    ifu25
        75
    ifu25  
       1 day ago
    安装了 android 端,headscale 面板也显示在线了,但还是无法访问其它节点是什么情况。ACL 也配置了。其它节点可相互访问。
    q1169989139
        76
    q1169989139  
       1 day ago
    @milkv 免流要自己抓包的免流地址,比如什么欠费后充值页面,然混淆里加上,不过现在也不需要了吧,好多年没用过了
    koimas
        77
    koimas  
       1 day ago
    牛逼,mihomo 也支持 tailscale 了
    knva
        78
    knva  
       1 day ago
    tailscale 显示在线,为什么访问不了呢。
    knva
        79
    knva  
       1 day ago
    @knva 悟了,最后 rule 需要填写 tailscale 的内网 ip
    ifu25
        80
    ifu25  
       1 day ago via Android
    @knva 我咋连不上呢,最后的 rule 中的 ip 应该是 ts 分配的,10.100.*.* 吧
    bowencool
        81
    bowencool  
       1 day ago
    @w568w 了解了,但我感觉还好:

    1. 四五十兆的上行,IPv6 直连,日常上网、vibe coding 都没问题。我几乎不在外面看视频,所以只能说“理论上看视频也够用了”
    2. 这个确实是个问题。我在外面打游戏都是断开 VPN 的
    3. 单点故障?是指节点故障吗?这跟 tailscale 没关系吧,我的 tailscale 从来没有断过
    lingo
        82
    lingo  
       1 day ago
    牛。不管用不用这个必须顶一下。
    unb
        83
    unb  
       1 day ago via Android
    w568w
        84
    w568w  
       1 day ago
    @bowencool 「单点故障」主要是指「一个设备挂了,全网都断了」这种情况。

    比如为了避免单点故障,可能尽量把网络设施放在边缘(例如手机上),中心服务(比如路由器和服务器)只负责分发配置(比如梯子订阅)。这样哪怕家里停电了,也不会影响手机正常连 VPN 和上梯子
    jeck5001
        85
    jeck5001  
       1 day ago
    确实不错!
    MoGeJiEr
        86
    MoGeJiEr  
    OP
       1 day ago
    @ifu25 #80 IP-CIDR,10.100.0.0/16,ts-mihomo,no-resolve
    ifu25
        87
    ifu25  
       1 day ago via Android
    @MoGeJiEr 我确实是这么配的,10.100.0.0/24 ,不知为啥无法连接,日志显示连不上
    loveshuyuan
        88
    loveshuyuan  
       1 day ago
    不知道为啥我放到 openwrt 节点无法上线
    seewhy
        89
    seewhy  
       1 day ago
    挺好的,刚好前两天因为 clashmi 不支持 tailscale ,换到了 sing-box android 。 现在可以换回来了哈哈
    wweir
        90
    wweir  
       18h 47m ago
    家里配了 DNS 分流方案,tailscale 配置了自定义的 DNS 。
    现在客户端上除了 tailscale 不用安装任何工具,连上 tailscale 就是世界。
    工具变了,用的还是我几年前自研的方案:
    https://github.com/sower-proxy/sower#%E6%8E%A8%E8%8D%90%E7%94%A8%E6%B3%95%E4%B8%80tailscale--sower-%E8%8A%82%E7%82%B9
    MoGeJiEr
        91
    MoGeJiEr  
    OP
       17h 45m ago
    @ifu25 #87 先看 mihomo 日志是不是走了 tailscale 出口,如果是的话,看看 tailscale 那边的日志设置之类的
    bowencool
        92
    bowencool  
       16h 27m ago
    @w568w #84 啊,这个也是。我的每个设备上都有独立翻墙的能力,虽然都是备用,主力仍然是用 tailscale
    jqknono
        93
    jqknono  
       15h 16m ago
    很有用
    Cesaryuan
        94
    Cesaryuan  
       12h 55m ago
    mihomo 今天合并 PR ,支持 tailscale 出站 https://github.com/MetaCubeX/mihomo/pull/2786
    MoGeJiEr
        95
    MoGeJiEr  
    OP
       12h 15m ago
    @Cesaryuan 是这样,官方接手了,省的我改了
    qiuyue0
        96
    qiuyue0  
       10h 57m ago
    配享太庙!
    qiuyufeng
        97
    qiuyufeng  
       9h 3m ago
    不错不错
    nevinem
        98
    nevinem  
       7h 2m ago
    牛逼 最近就遇到这个问题,原来绕了好大一圈才解决,原生就可以支持可太舒服了。
    ifu25
        99
    ifu25  
       4h 28m ago
    @MoGeJiEr 我似乎发现,我用的 headscale + 自建 derp (非 443 端口),但下载了你的 android 端连接后日志显示是连接的 443 端口的 derp 。
    ifu25
        100
    ifu25  
       3h 55m ago
    1  2  
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1099 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 187ms · UTC 18:24 · PVG 02:24 · LAX 11:24 · JFK 14:24
    ♥ Do have faith in what you're doing.