Closed yqs112358 closed 1 month ago
本软件并未说明可以与VPN共存,如想寻找方法应该去discussion讨论,issues只接受功能请求/bug反馈
不是啊,我这里举的例子本来就不是普通vpn,是指的android vpn service,像AdGuard去广告、基于VPN Service的防火墙、防病毒软件等都有类似问题
刚翻了下代码,mihomo用的sing-tun在初始化的时候是把override-android-vpn打开的
,在面板上也可以看到mihono会自动把vpn service的tun0识别为出口网卡,那正常来说此功能不应该出问题的
我试过把dns改成redir,乃至关闭但是问题仍然存在,所以才怀疑可能是mihomo这边有哪里配置不当
找到方法了吗?
找到方法了吗?
目前找不到错误原因😬看过路由表似乎也没问题
找到方法了吗?
目前找不到错误原因😬看过路由表似乎也没问题
你域名设置的 "system:// 是获取设备从ISP自动获取的dns?还是mihomo自定义设置的dns?
找到方法了吗?
目前找不到错误原因😬看过路由表似乎也没问题
你域名设置的 "system:// 是获取设备从ISP自动获取的dns?还是mihomo自定义设置的dns?
这个是mihomo支持的设置项呀,自动获取网卡默认dns服务器的
emm而且就算这个无效应该也没事儿,还有其他几个公共dns🤔
找到方法了吗?
目前找不到错误原因😬看过路由表似乎也没问题
你域名设置的 "system:// 是获取设备从ISP自动获取的dns?还是mihomo自定义设置的dns?
这个是mihomo支持的设置项呀,自动获取网卡默认dns服务器的
emm而且就算这个无效应该也没事儿,还有其他几个公共dns🤔
我看日志无效吧,完全获取不到啊
我看日志无效吧,完全获取不到啊
emm应该不是system://
的问题,我试着把它移除,但是仍然有同样的问题
不知为何mihomo似乎把VPN APP设置的DNS服务器拿来进行解析了
我看日志无效吧,完全获取不到啊
emm应该不是
system://
的问题,我试着把它移除,但是仍然有同样的问题 目前在怀疑sing-tun的override-android-vpn,不知为何mihomo似乎把VPN APP设置的DNS服务器拿来进行解析了
我搜了一遍issues,我觉得安卓就无法获取到系统默认的dns,这些system或者是dhcp好像都是WINDOWS或者是linux用的。
我搜了一遍issues,我觉得安卓就无法获取到系统默认的dns,这些system或者是dhcp好像都是WINDOWS或者是linux用的。
嗯。。。现在问题应该不在system😂我去翻翻tun那边的源码
哥们也是碰到issue里的VPN冲突问题了嘛?
我搜了一遍issues,我觉得安卓就无法获取到系统默认的dns,这些system或者是dhcp好像都是WINDOWS或者是linux用的。
嗯。。。现在问题应该不在system😂我去翻翻tun那边的源码
哥们也是碰到issue里的VPN冲突问题了嘛?
我会搜索VPN就是因为我想要把vpnAPP(类似快连,shark之类的APP)导入进mihomo里面当成一个节点来使用。类似于把mihomo当成VPN APP的一个前置。 你知道怎么才能做到吗?目前的思路,APP应该是虚拟出了一个VPN的网卡,要在mihomo里面设置这个网卡,变成一个节点
我会搜索VPN就是因为我想要把vpnAPP(类似快连,shark之类的APP)导入进mihomo里面当成一个节点来使用。类似于把mihomo当成VPN APP的一个前置。 你知道怎么才能做到吗?目前的思路,APP应该是虚拟出了一个VPN的网卡,要在mihomo里面设置这个网卡,变成一个节点
这其实应该是设置mihomo的出口网卡(也就是配置里面的interface-name
),而不是代理节点。
我记得sing-tun的override-android-vpn会自动识别安卓VPN APP的tun0网卡并把它设置为上游,这个在面板里面可以看到是成功识别的
只是不知为啥目前DNS会出问题
我会搜索VPN就是因为我想要把vpnAPP(类似快连,shark之类的APP)导入进mihomo里面当成一个节点来使用。类似于把mihomo当成VPN APP的一个前置。 你知道怎么才能做到吗?目前的思路,APP应该是虚拟出了一个VPN的网卡,要在mihomo里面设置这个网卡,变成一个节点
这其实应该是设置mihomo的出口网卡(也就是配置里面的
interface-name
),而不是代理节点。我记得sing-tun的override-android-vpn会自动识别安卓VPN APP的tun0网卡并把它设置为上游,这个在面板里面可以看到是成功识别的
只是不知为啥目前DNS会出问题
如果这么设置的话,要怎么手动切换用自己ss ssr节点还是用外部VPN的interface?
@Lovefish 哦你的意思是要把其他家的梯子VPN拿来当成节点? 是不是这种
- name: "VPN-NAME"
type: direct
udp: true
interface-name: tun0
加一个以tun0为出口网卡的direct
@Lovefish 哦你的意思是要把其他家的梯子VPN拿来当成节点? 是不是这种
- name: "VPN-NAME" type: direct udp: true interface-name: tun0
加一个以tun0为出口网卡的direct
加在proxies:里吗? 那tun那里需要设置吗?
加在proxies:里吗? 那tun那里需要设置吗?
对。tun那边理论上不用改吧,你试试
加在proxies:里吗? 那tun那里需要设置吗?
对。tun那边理论上不用改吧,你试试
好的谢谢
加在proxies:里吗? 那tun那里需要设置吗?
对。tun那边理论上不用改吧,你试试
这已经开启mihomo的情况下,打开VPN连不上
这已经开启mihomo的情况下,打开VPN连不上
哥们要不开个单独的issue问问呗😂你和我这边场景不完全相同 现在我也暂时没搞清楚问题在哪
这已经开启mihomo的情况下,打开VPN连不上
哥们要不开个单独的issue问问呗😂你和我这边场景不完全相同 现在我也暂时没搞清楚问题在哪
好吧
wireshark抓了下包,看起来应用的dns查询都被android vpn劫持走了?
wireshark抓了下包,看起来应用的dns查询都被android vpn劫持走了?
你说的是内置的system?
system://
我删掉了,但是看起来dns解析仍然没有走mihomo配置中设定的那几个dns服务器
目前观察到在启动其他安卓vpn应用后,mihomo内核的fake-ip似乎会因为未知原因失效
安卓VPN的addRoute设置的是100.64.0.0/10
网段,且未使用builder.addDnsServer
添加自定义DNS服务器
启动前:
启动后:fake-ip失效,curl拿到的是真实的google服务器IP地址,但是无法连接到服务器
尝试切换到redir-host
,并使用nameserver-policy
指定geosite:google
使用tls://1.1.1.1#Proxy
解析,发现仍然无效,无法连接
只要杀掉VPN应用则立刻恢复正常
Verify steps
操作系统
Android
系统版本
HyperOS1.0.13.0 - Android14
Mihomo 版本
Mihomo Meta alpha-9fd63fe android arm64 with go1.23.2 Sun Oct 6 02:35:23 UTC 2024 Use tags: with_gvisor
配置文件
描述
起因是,发现mihomo在安卓上直接用tun模式跑内核时与Tailscale App不兼容。Tailscale VPN Service 启动之后,所有网站都无法访问,表现为无限加载,最后报错net::ERR_CONNECTION_TIMED_OUT。只要关闭Tailscale则立刻恢复正常。
但是,地址是IP的网站仍然可以访问,似乎只有域名访问不到,感觉可能是DNS上的问题。
后来找了个简单的 android vpn example(https://github.com/mightofcode/android-vpnservice-example ),把其中的
.addDnsServer
删了之后跑下试试,遇到和前面完全一样的问题,IP正常,域名无法访问。尝试过如下操作:
exclude-interface: tun0
,问题依旧route-exclude-address
排除Tailscale所在100.64.0.0/10网段,问题依旧auto-detect-interface
,用interface-name
强制设置出口网卡为wlan0。这样设置过后国内网站可以正常访问了,但是被墙的网站仍然无法访问重现方式
日志