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

WireGuard kernelTun: Check Capabilities instead of checking UID #3871

Merged
merged 2 commits into from
Oct 15, 2024

Conversation

chise0713
Copy link
Contributor

No description provided.

@RPRX
Copy link
Member

RPRX commented Oct 3, 2024

instead of checking

@RPRX
Copy link
Member

RPRX commented Oct 5, 2024

把相关的文档依据发上来

@Fangliding
Copy link
Member

控制interface需要CAP_NET_ADMIN没啥毛病吧(是不是只要这个就够了? 有待测试) 群里讨论觉得讨论觉得应该判断是否有cap而不是懒人直接检查是否是root 因为有时候不想给root权限

@RPRX
Copy link
Member

RPRX commented Oct 5, 2024

看代码只有 linux 支持 kernel tun?

@RPRX
Copy link
Member

RPRX commented Oct 5, 2024

有种 sb 不光没看这里在干嘛,还以为只有自己知道 ebpf

@Fangliding
Copy link
Member

Fangliding commented Oct 5, 2024

看代码只有 linux 支持 kernel tun?

这个很早以前就说过了是命名错误 kernel mode和wireguard kernel module是半毛钱关系都没有 用系统interface处理效率更高而已

@RPRX
Copy link
Member

RPRX commented Oct 5, 2024

看代码只有 linux 支持 kernel tun?

这个很早以前就说过了是命名错误 kernel mode和wireguard kernel module是半毛钱关系都没有 用系统interface处理效率更高而已

你在回复啥,怎么感觉是已读乱回

@RPRX
Copy link
Member

RPRX commented Oct 5, 2024

我问的是是不是只有 linux 有这种 interface,你说的是配置项命名歧义问题,不过既然提到了就把 kernelMode 改名 kernelTun 吧

@Fangliding 就在这个 pr 里改,一起合并,这个 breaking 应该没事,影响范围很小

@RPRX RPRX changed the title wireguard: Check Capabilities instead check UID WireGuard kernelTun: Check Capabilities instead of checking UID Oct 5, 2024
@RPRX
Copy link
Member

RPRX commented Oct 5, 2024

还有我查了下它叫 WireGuard 而不是 Wireguard,文档需改为大写,还有入站没写 kernelTun 这项 @Fangliding

@Fangliding
Copy link
Member

还有我查了下它叫 WireGuard 而不是 Wireguard,文档需改为大写,还有入站没写 kernelTun 这项 @Fangliding

学隔壁叫 systemInterface 吧 不然有人可能搞得以为xray支持tun了
入站没写因为我不确定它到底支不支持

@RPRX
Copy link
Member

RPRX commented Oct 8, 2024

学隔壁叫 systemInterface 吧 不然有人可能搞得以为xray支持tun了

就叫 kernelTun,毕竟 Xray 又不是不会支持 tun

入站没写因为我不确定它到底支不支持

看下代码

@Fangliding
Copy link
Member

Fangliding commented Oct 8, 2024

就叫 kernelTun,毕竟 Xray 又不是不会支持 tun

一码归一码 改名是为了防止误解 改一个新的会造成误解的名字不是南辕北辙了 xray以后会不会支持tun和这东西叫啥应该没关系

虽然这东西确实叫 TUN interface 但是也不该带kernel

看下代码

看得懂我就看了(

@RPRX
Copy link
Member

RPRX commented Oct 9, 2024

虽然这东西确实叫 TUN interface 但是也不该带kernel

然而它的确是 linux kernel 提供的,我觉得 kernelTun 这个名字没什么歧义

Xray 自身把代理协议和 wireguard 这样的 vpn 协议互转本身就有 tun2socks 的行为

@RPRX
Copy link
Member

RPRX commented Oct 11, 2024

我觉得 kernelTun 这个名字没什么歧义

就这个名字吧,@Fangliding 改一下然后我合了这个 PR

看得懂我就看了(

那晚些时候我看一下,那处文档与这个 PR 无关

@RPRX
Copy link
Member

RPRX commented Oct 13, 2024

@Fangliding 让我们先把这个 pr 解决

@RPRX
Copy link
Member

RPRX commented Oct 15, 2024

发现现存 .pb.go 文件中 protoc 版本号不一,我先合了这个 pr 再改吧

@RPRX
Copy link
Member

RPRX commented Oct 15, 2024

或者先加个 alias,v25 再 break

@RPRX
Copy link
Member

RPRX commented Oct 15, 2024

最近加了很多 alias,像 #3852 这种准备取代原名的就是放上面、改 log,像 75729ce 这种准备和原名共存的就是放下面、补 log

@RPRX RPRX merged commit 19f3f70 into XTLS:main Oct 15, 2024
36 checks passed
@RPRX
Copy link
Member

RPRX commented Oct 17, 2024

我看到 3X-UI 似乎把 kernelTun 误认为成一个新选项了,干脆直接删掉原名 kernelMode 吧,反正一般也没人设置这个

@RPRX
Copy link
Member

RPRX commented Oct 17, 2024

我又看到 Xray 代码中的逻辑是如果该选项缺省就默认检查并使用 kernelTun,那不如改为 noKernelTun,默认值为 false

(原 kernelMode/kernelTun 在 3X-UI 中的默认值为 false,与 Xray 的默认值 true 不符,毕竟 Xray 中几乎没有默认值为 true 的

@RPRX
Copy link
Member

RPRX commented Oct 17, 2024

改好了,@Fangliding 我看了下代码,出入站都有 kernelTun,改文档

@RPRX
Copy link
Member

RPRX commented Oct 18, 2024

9bdf72d 把配置解析处的代码移到了 createTun() 内,client 和 server 都会调用它

@Fangliding
Copy link
Member

改好了,@Fangliding 我看了下代码,出入站都有 kernelTun,改文档

看了一眼这里怎么改成默认启用了 默认不开是之前讨论出来的决定来着 因为不保证一定不出问题 这break的话可能又有人要更新之后炸了

@RPRX
Copy link
Member

RPRX commented Oct 18, 2024

看了一眼这里怎么改成默认启用了 默认不开是之前讨论出来的决定来着 因为不保证一定不出问题 这break的话可能又有人要更新之后炸了

然而此前代码的逻辑就是默认启用:未填 kernelMode 时,若 kernelTunSupported 为真就启用。新逻辑没变。

leninalive pushed a commit to amnezia-vpn/amnezia-xray-core that referenced this pull request Oct 29, 2024
…#3871)

XTLS#3871 (comment)

---------

Co-authored-by: RPRX <63339210+RPRX@users.noreply.github.com>
leninalive pushed a commit to amnezia-vpn/amnezia-xray-core that referenced this pull request Oct 29, 2024
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.

3 participants