Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Add IPv6 Route #157

Closed
wants to merge 3 commits into from
Closed

feat: Add IPv6 Route #157

wants to merge 3 commits into from

Conversation

arkxfly
Copy link

@arkxfly arkxfly commented Oct 26, 2023

#154

@arkxfly

This comment was marked as off-topic.

@stevejohnson7
Copy link
Collaborator

这个签名的密码是啥?我写完这个功能,装到手机上,说是签名不一样,只得先卸载,卸载了原来的配置又没了😔

非常抱歉。不过密码不可以对外透露的😥不然就可以随便伪造发布官方的版本了
可以@叫member或者collaborator帮忙跑actions
感谢你的贡献,请稍等一下我改一下issue,把编译产物放到actions的artificts里面,这样可以供外界下载

@arkxfly
Copy link
Author

arkxfly commented Oct 26, 2023

那有什么办法避免这种情况吗?要先卸载导致原先配置没了,比较麻烦。

@xishang0128
Copy link

@arkxfly 统一使用三方软件重签名即可

@arkxfly
Copy link
Author

arkxfly commented Oct 26, 2023

@arkxfly 统一使用三方软件重签名即可

没明白,能否给个链接学习一下

@lolion1y
Copy link

@arkxfly mt管理器 apk签名功能

@xishang0128
Copy link

@arkxfly 比如mt管理器的签名功能

@arkxfly
Copy link
Author

arkxfly commented Oct 26, 2023

@arkxfly 比如mt管理器的签名功能

谢谢,明白了。

@arkxfly
Copy link
Author

arkxfly commented Oct 26, 2023

@stevejohnson7 如果能通过给这个仓库提交 PR,自动签名,build 一个版本出来就好了,然后在 PR 这可以直接下载试用

@stevejohnson7
Copy link
Collaborator

stevejohnson7 commented Oct 26, 2023

搞定了。现在approve之后,运行的actions执行完会带上签名过的Aritfacts在下面
like https://github.com/MetaCubeX/ClashMetaForAndroid/actions/runs/6654728583

@arkxfly
Copy link
Author

arkxfly commented Oct 26, 2023

貌似不能自动构建,需要维护者手工 Approving

@stevejohnson7
Copy link
Collaborator

stevejohnson7 commented Oct 26, 2023

前面看错了。后来查了一下文档,github现在要求第一次对此仓库发起PR的贡献者需要approve才能执行workflow。这个强制要求暂时无法更改。
在这个PR成功合并之后以后就不需要再每次approve了

https://docs.github.com/zh/actions/managing-workflow-runs/approving-workflow-runs-from-public-forks
https://github.blog/changelog/2021-04-22-github-actions-maintainers-must-approve-first-time-contributor-workflow-runs/

@arkxfly
Copy link
Author

arkxfly commented Oct 26, 2023

嗯,不过我发起的 PR ,Action 拿不到环境变量里的密码,还是打包不了。

@wwqgtxx
Copy link

wwqgtxx commented Oct 26, 2023

你这改了这么多都没涉及到golang部分,肯定是不会生效的

@wwqgtxx wwqgtxx closed this Oct 26, 2023
@arkxfly
Copy link
Author

arkxfly commented Oct 26, 2023

@wwqgtxx ?我测试了的,可以的。这跟 golang 没关系,就是没有创建 tun 设备的 ipv6 地址和网关。

@arkxfly
Copy link
Author

arkxfly commented Oct 26, 2023

我去,你这也太武断了吧,直接把这个 PR 关闭了🥲

@wwqgtxx
Copy link

wwqgtxx commented Oct 26, 2023

golang那边的tun都没处理ipv6你是怎么测试出来能正常工作的

@arkxfly
Copy link
Author

arkxfly commented Oct 26, 2023

一个是访问用 ip.gs 测试的。另一个是在 termux 里 ip adde 里面的 ip 网关。

@wwqgtxx
Copy link

wwqgtxx commented Oct 26, 2023

ip addr只是说明网卡有这个ip,但是golang那边的tun根本就没注册也没处理ipv6的数据包

@arkxfly
Copy link
Author

arkxfly commented Oct 26, 2023

这貌似没有用 golang 的 tun,就这块代码,是android 提供的接口,只是把流量接入 clash 。你仔细看看代码,这代码是参考 sagernet 改的,就是因为之前用 sagernet 能用 ipv6,切到 clash meta for android 就没了。通过这个 PR,这个 ipv6 的问题解决了。

@arkxfly
Copy link
Author

arkxfly commented Oct 26, 2023

你有安卓手机吗?拿手机测试下就知道了。或者打包一个apk 出来,找电报群友测试一下就知道了。不管用我也不会提 PR

@wwqgtxx
Copy link

wwqgtxx commented Oct 26, 2023

你要明白,你在TunModule.kt加的gateway6dns6是要传递到golang那边的

func startTun(fd C.int, gateway, portal, dns C.c_string, callback unsafe.Pointer) C.int {

@arkxfly
Copy link
Author

arkxfly commented Oct 26, 2023

那这个删了?,我在代码上找引用也没找到,看着没什么用,我还奇怪呢。。。关键代码是下面这个

image

@wwqgtxx
Copy link

wwqgtxx commented Oct 26, 2023

所以说这里只是增加了地址也增加了路由,但是golang部分根本没有处理这送进来的ipv6包

@arkxfly
Copy link
Author

arkxfly commented Oct 26, 2023

不可能没处理,我这都代理成功了。设置界面,可以设置是否启用 ipv6 路由的。关了,整个手机都访问不了 ipv6 地址,开了之后,ip.gs 就显示了代理的 ipv6 地址。

@MetaCubeX MetaCubeX locked as off-topic and limited conversation to collaborators Oct 26, 2023
@Skyxim
Copy link

Skyxim commented Oct 26, 2023

@arkxfly http://[2400:3200:baba::1] 打开这个网站看看,环境关闭系统代理使用纯 tun 模式

@MetaCubeX MetaCubeX unlocked this conversation Oct 26, 2023
@arkxfly
Copy link
Author

arkxfly commented Oct 26, 2023

@arkxfly http://[2400:3200:baba::1] 打开这个网站看看,环境关闭系统代理使用纯 tun 模式

空白页面?

@Skyxim
Copy link

Skyxim commented Oct 26, 2023

@arkxfly 日志记录

@arkxfly
Copy link
Author

arkxfly commented Oct 26, 2023

Screenshot_2023-10-26-23-01-52-86_c09219dfd10e7f2c59cb30cbda5bcba6

没找到你说的那个地址的日志,这是 ip.gs

@Skyxim
Copy link

Skyxim commented Oct 26, 2023

@arkxfly 没有说明根本没有 IPv6 进入啊

@Skyxim
Copy link

Skyxim commented Oct 26, 2023

@arkxfly 你这个代表软件可以使用 v6 和 TUN 劫持 v6 毫无关系

@arkxfly
Copy link
Author

arkxfly commented Oct 26, 2023

发现了,只是这个 ip.gs 可以显示代理的 ipv6 地址,但 termux 里却 ping 不通其他 ipv6 地址。

它这是通过怎样的路径实现的?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants