-
Notifications
You must be signed in to change notification settings - Fork 4.7k
Config: Outbound proxy config no need to be nested #5124
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
Conversation
|
|
|
|
|
|
|
|
|
结构体里的顺序统一为按原先的顺序,现在看起来乱乱的 |
|
okay |
|
有空像 VLESS 出站一样限制它们有且只能有一个元素,并删掉代码中的 server picker 什么的吗 在全随机数没被 GFW 拉黑前它们是有用的,但现在这个属于过时设计了,因为过墙需要传输层,传输层又不一定一样 所以应当把任何随机/选择策略放到最外面,比如 balancer 那里 |
|
最近看看吧 考虑到可能会有一些祖传配置的问题,如果赶上了发下一版的话写下会 break 老旧配置需要检查比较好,赶不上就先写个 breaking 预告
|
wwcd
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
outbound为socks5,且无用户名和密码时,异常
| { | ||
| Address: v.Address, | ||
| Port: v.Port, | ||
| Users: []json.RawMessage{{}}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
这个地址会导致没有用户名和密码的代码,默认给加了空的用户名和密码,从而导致异常
坏消息:确有此事 |
|
刚刚发现了个很离谱的问题,特指 HTTP 和 SOCKS outbound 在不设置用户名和密码的情况下不会应用 level 设置的策略 但是在 inbound 里面 level (写作 userLevel)是所有账户共用的 不知道是不是设计时的架构限制,但是在配置上听起来就离谱而且没对齐
|
进展比较顺利,用起来暂时没有发现什么问题, |
Revert "v25.10.15" This reverts commit b69a376. Revert "VLESS Reverse Proxy: Transfer real Source & Local (IP & port), enabled by default" This reverts commit 12f4a01. Revert "XHTTP client: Change default `maxConcurrency` to 1 for speed testing" This reverts commit 9cc7907. Revert "Router: Use built-in-dns only once for all rules (in "IPOnDemand"/"IPIfNonMatch" mode) (XTLS#5210)" This reverts commit 21a9658. Revert "README.md: Add PasarGuard to Web Panels (XTLS#5224)" This reverts commit 7f436f5. Revert "Update github.com/xtls/reality to 20251014195629" This reverts commit dcfde8d. Revert "Bump golang.org/x/net from 0.44.0 to 0.46.0 (XTLS#5215)" This reverts commit 898db92. Revert "Bump google.golang.org/grpc from 1.75.1 to 1.76.0 (XTLS#5212)" This reverts commit 8dd0e38. Revert "transport/internet/reality/reality.go: Safely get negotiated CurveID in VerifyPeerCertificate()" This reverts commit 40f0a54. Revert "Bump github.com/refraction-networking/utls from 1.8.0 to 1.8.1 (XTLS#5229)" This reverts commit 1762d6c. Revert "Fix shadowsocks2022 memory leak (XTLS#5166)" This reverts commit 1952488. Revert "fix: darwin arm64 always has AESGCMHardwareSupport (XTLS#5176)" This reverts commit 4a825c0. Revert "Bump github.com/quic-go/quic-go from 0.54.1 to 0.55.0 (XTLS#5208)" This reverts commit 514c9e5. Revert "feat(config): add unix socket HTTP config loader support (XTLS#5200)" This reverts commit 2f366ae. Revert "Fix vless reverse panic in vision (XTLS#5189)" This reverts commit c0c88f3. Revert "Bump github.com/quic-go/quic-go from 0.54.0 to 0.54.1 (XTLS#5180)" This reverts commit d0344bc. Revert "Bump google.golang.org/protobuf from 1.36.9 to 1.36.10 (XTLS#5203)" This reverts commit a6ebb30. Revert "Outbound: One endpoint and at most one user only (XTLS#5144)" This reverts commit fe57507. Revert "Config: Outbound proxy config no need to be nested (XTLS#5124)" This reverts commit 83c5370. Revert "Bump google.golang.org/grpc from 1.75.0 to 1.75.1 (XTLS#5129)" This reverts commit 1a48453. Revert "app/dispatcher/default.go: Close link when routedDispatch() failed (XTLS#5131)" This reverts commit 3167e5c. Revert "app/dispatcher/default.go: Add comment on run-time rejecting non-existent outbound tag" This reverts commit 5148c57.

对 eda8be6 依葫芦画瓢的产物
现在在不影响原有配置方式的基础上,允许出站配置
outbounds的settings如同 VLESS 配置一样直接写,而无需在 JSON 中写大量括号嵌套/在 YAML 中写大量列表标记,对绝大多数仅需一个出口的情况下够用:{ "outbounds": [ { "protocol": "http", "settings": { "address": "127.0.0.1", "port": 8080, "user": "user-a", "pass": "user-pass", "email": "abc@dev", "level": 2 } }, { "protocol": "shadowsocks", "settings": { "email": "abc@dev", "address": "127.0.0.1", "port": 2222, "method": "aes-128-gcm", "password": "testing", "uot": true, "UoTVersion": 2, "level": 9 } }, { "protocol": "socks", "settings": { "address": "127.0.0.1", "port": 5560, "user": "tester", "pass": "tester2", "level": 1, "email": "abc@dev" } }, { "protocol": "trojan", "settings": { "address": "127.0.0.1", "port": 4458, "password": "fgwnbjkn", "email": "abc@dev", "level": 1 } }, { "protocol": "vless", "settings": { "address": "127.0.0.1", "port": 5546, "id": "725d5f9c-2662-4a10-a9cd-24c3db758db1", "encryption": "none", "flow": "xtls-rprx-vision", "level": 8, "email": "abc@dev" } }, { "protocol": "vmess", "settings": { "address": "127.0.0.1", "port": 5522, "id": "725d5f9c-2662-4a10-a9cd-24c3db758db1", "security": "zero", "level": 8, "email": "abc@dev", "experiments": "NoTerminationSignal" } } ] }改动惠及 HTTP、Shadowsocks、SOCKS、Trojan、VMess 配置。其中如果需要对 HTTP 出站配置
headers,此项应该按原来的方式写,即:{ "outbounds": [ { "protocol": "http", "settings": { "address": "127.0.0.1", "port": 8080, "user": "user-a", "pass": "user-pass", "email": "abc@dev", "level": 2, "headers": { "HeaderA": "valuea", "HeaderB": "valueb" } } } ] }其它 Freedom、DNS、Loopback、WireGuard 出站无需变动,Blackhole 待定(其实 Blackhole 不改问题好像不大,有可能是设计预留的问题)