mac 有办法裸 mihomo 内核使用 TUN 模式吗 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lymanbernadette6
V2EX    macOS

mac 有办法裸 mihomo 内核使用 TUN 模式吗

  •  
  •   lymanbernadette6 331 天前 4177 次点击
    这是一个创建于 331 天前的主题,其中的信息可能已经有所发展或是发生改变。
    ```
    tun:
    enable: false
    stack: gvisor
    dns-hijack:
    - any:53
    - tcp://any:53
    auto-route: true
    auto-redirect: true
    auto-detect-interface: true
    ```
    使用./mihomo -f xx.yml 启动。在 WebUI 上开启 TUN 模式,就断网了。
    一堆的报错无法连接 DNS
    第 1 条附言    328 天前
    根据后面大佬的提示, 确认是 alpha 版本的问题。 更换 release 版本后解决了。
    20 条回复    2024-12-14 17:50:58 +08:00
    yuanxiaosong
        1
    yuanxiaosong  
       331 天前
    第一步: https://wiki.metacubex.one/config/inbound/tun/

    第二步: https://github.com/MetaCubeX/mihomo/issues?q=macos+tun+dns

    第三部:以上两步解决不了,换个软件
    lymanbernadette6
        2
    lymanbernadette6  
    OP
       331 天前
    补充一下, 配置在 win 和 Linux 下是没问题的。
    Mac 我看到 issue 中有位大佬提到需要手动指定网卡的 DNS 192.18.0.2 不过尝试并没有效果。
    lymanbernadette6
        3
    lymanbernadette6  
    OP
       331 天前
    @lymanbernadette6 #2 继续补充一下, 是用 sudo 启动的,因为 Mac 下普通用户无法启动 Tun 网卡。
    lymanbernadette6
        4
    lymanbernadette6  
    OP
       331 天前
    @yuanxiaosong #1 您要不自己尝试一下再说看 issue 看文档?

    issue 跟这些关键词有关的提到的方式都尝试过(而且大家似乎很少直接用内核在 Mac 下用 Tun , 其中有一个用了的,说是 DNS 需要手动指向 192.18.0.2 , 这种方式已经尝试过 不然也不会发帖子了
    jianzhao123
        5
    jianzhao123  
       331 天前
    歪路子,Mac 搞个虚拟机装个 mihomo 试试行不行
    xyz8899
        6
    xyz8899  
       331 天前
    为什么要裸跑,Mihomo Party 不香吗
    ostrichb
        7
    ostrichb  
       331 天前   1
    我就是使用裸核心 TUN 全平(除 OpenWRT )不使用 GUI 的。我遇到,TUN 和 DNS 相的部分你可以考下:
    tun:
    enable: true
    macOS-auto-route: true
    stack: gvisor
    dns-hijack:
    - any:53
    auto-route: true

    dns:
    enable: true
    listen: 0.0.0.0:53
    default-nameserver:
    - 223.5.5.5
    enhanced-mode: fake-ip # or fake-ip
    fake-ip-range: 198.18.0.0/16
    nameserver:
    - https://public.dns.iij.jp/dns-query
    - 207.68.222.222
    - 207.68.220.220
    - 101.101.101.101
    - 101.102.103.104

    nameserver-policy:
    "geosite:microsoft": ['223.5.5.5', '223.6.6.6', '119.29.29.29']
    "geosite:cn": ['223.5.5.5', '223.6.6.6', '119.29.29.29']
    "www.baidu.com": ['223.5.5.5', '223.6.6.6', '119.29.29.29']
    "geosite:icloud": ['223.5.5.5', '223.6.6.6', '119.29.29.29']
    "geosite:itunes": ['223.5.5.5', '223.6.6.6', '119.29.29.29']

    之前有劫持不了 DNS 的,可以去路定那手定一 DNS Server ,劫持就正常了
    ostrichb
        8
    ostrichb  
       331 天前
    @ostrichb :我的 TUN 模式一般保持常不
    anto17
        9
    anto17  
       330 天前
    mac 上 netstat -rn -f inet 命令看下你的路由表(不会看可以问 gpt 帮助理解),有可能是路由表错乱了。把你的网卡禁用后重新开启,会重建默认路由表。然后再开启 tun 模式
    lymanbernadette6
        10
    lymanbernadette6  
    OP
       330 天前
    @ostrichb #7 感谢回复, 目前看我的配置缺少了一个 macOS-auto-route: true 不过刚看了一下官方的配置文件里似乎没有这个字段: https://github.com/MetaCubeX/mihomo/blob/Meta/docs/config.yaml

    > 之前有劫持不了 DNS 的,可以去路定那手定一 DNS Server
    这个是似乎不是个例: https://github.com/MetaCubeX/mihomo/issues/895#issuecomment-1855902064
    内核在 Mac 下 TUN 不会修改 DNS 指向。

    我在 Windows 下使用一模一样的配置,一切正常,不需要其他任何配置。
    lymanbernadette6
        11
    lymanbernadette6  
    OP
       330 天前
    @anto17 #9 是的 大佬说的没错,的确是路由表错乱,通过多次'sudo route -n flush' 刷新路由表后能恢复。 不过开启 TUN 依然会出现相同的问题。
    lymanbernadette6
        12
    lymanbernadette6  
    OP
       330 天前
    @jianzhao123 #5 这肯定是不行的,Tun 模式原理是启动一个虚拟网卡接管主机流量。
    lymanbernadette6
        13
    lymanbernadette6  
    OP
       330 天前
    @xyz8899 #6 香,不过这里探讨的是跑裸内核本身的问题。
    ostrichb
        14
    ostrichb  
       330 天前
    @lymanbernadette6 字段是我不知道那抄的,之前的 ClashPremium 一路用到 meta 再到在的 mihomo ,可能是之中某一加去的(反正能用就不要他嘛 owo )
    anto17
        15
    anto17  
       330 天前   1
    @lymanbernadette6 #11 不要用 alpha 试试
    lymanbernadette6
        16
    lymanbernadette6  
    OP
       328 天前
    @anto17 #15 牛逼! 大佬雀氏牛逼, 不是配置问题,是 alpha 的问题。 换 release 的二进制就好了。
    okampfer
        17
    okampfer  
       324 天前
    @ostrichb #7
    请问一下,按照这个配置启动 mihomo 之后会自动修改路由表是吗?然后关闭的时候(crtl + c)路由表会被重置是吗?
    ostrichb
        18
    ostrichb  
       324 天前
    @okampfer 是的
    BottleKing
        19
    BottleKing  
       302 天前 via Android
    我在 linux 遇到和你相似的问题。
    具体表现为 proxy 规则的域名全部解析成 ip ,然后 ip 全部 match 然后直连了。而且 webUI 链接那里只显示 ip 不显示域名。
    我是关闭了 auto-redirect 之后就正常了。我觉得可能是我内核没开转发或者这个选项是给路由用的
    lymanbernadette6
        20
    lymanbernadette6  
    OP
       300 天前
    @BottleKing #19 不确定, 我在发帖时换成正式版后没问题了。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2458 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 15:32 PVG 23:32 LAX 08:32 JFK 11:32
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86