XrayR-project / XrayR

A Xray backend framework that can easily support many panels. 一个基于Xray的后端框架,支持V2ay,Trojan,Shadowsocks协议,极易扩展,支持多面板对接
https://xrayr-project.github.io/XrayR-doc/
Mozilla Public License 2.0
2.16k stars 852 forks source link

Unable to configure custom rules #717

Closed busiqiao closed 2 days ago

busiqiao commented 3 days ago

I used the default configuration except for removing warp socks, but something went wrong.

XrayR log

Nov 26 10:58:16 racknerd-3b07fa5 systemd[1]: Started XrayR Service. Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: XrayR 0.9.4 (A Xray backend that supports many panels) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: time="2024-11-26T10:58:16Z" level=info msg="Start the panel.." func="github.com/XrayR-project/XrayR/panel.(Panel).Start" file="github.com/XrayR-project/XrayR/panel/panel.go:165" Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: time="2024-11-26T10:58:16Z" level=panic msg="Failed to unmarshal Routing config: /etc/XrayR/route.json" func="github.com/XrayR-project/XrayR/panel.(Panel).loadCore" file="github.com/XrayR-project/XrayR/panel/panel.go:87" Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: panic: (logrus.Entry) 0xc001062770 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: goroutine 1 [running]: Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus.(Entry).log(0xc001062690, 0x0, {0xc001ad0c00, 0x39}) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus@v1.9.3/entry.go:260 +0x491 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus.(Entry).Log(0xc001062690, 0x0, {0xc001147598?, 0x1?, 0x1?}) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus@v1.9.3/entry.go:304 +0x48 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus.(Entry).Logf(0xc001062690, 0x0, {0x44d20c9?, 0xc0011475f8?}, {0xc001147918?, 0x10?, 0x3745400?}) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus@v1.9.3/entry.go:349 +0x7c Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus.(Logger).Logf(0x77f1160, 0x0, {0x44d20c9, 0x26}, {0xc001147918, 0x1, 0x1}) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus@v1.9.3/logger.go:154 +0x7c Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus.(Logger).Panicf(...) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus@v1.9.3/logger.go:195 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus.Panicf(...) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus@v1.9.3/exported.go:219 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/panel.(Panel).loadCore(0x77f1160?, 0xc0010625b0) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/panel/panel.go:87 +0x3db Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/panel.(Panel).Start(0xc000ffbc40) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/panel/panel.go:167 +0xdf Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/cmd.run() Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/cmd/root.go:106 +0x1c5 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/cmd.init.func1(0xc001066600?, {0x445389d?, 0x4?, 0x445378d?}) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/cmd/root.go:27 +0x13 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/spf13/cobra.(Command).execute(0x780c840, {0xc00010c8e0, 0x2, 0x2}) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/spf13/cobra@v1.8.0/command.go:987 +0xab1 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/spf13/cobra.(Command).ExecuteC(0x780c840) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/spf13/cobra@v1.8.0/command.go:1115 +0x3ff Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/spf13/cobra.(*Command).Execute(...) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/spf13/cobra@v1.8.0/command.go:1039 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/cmd.Execute(...) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/cmd/root.go:120 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: main.main() Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/main.go:10 +0x1a Nov 26 10:58:16 racknerd-3b07fa5 systemd[1]: XrayR.service: Main process exited, code=exited, status=2/INVALIDARGUMENT Nov 26 10:58:16 racknerd-3b07fa5 systemd[1]: XrayR.service: Failed with result 'exit-code'.

config.yml

Log: Level: debug # Log level: none, error, warning, info, debug AccessPath: # /etc/XrayR/access.Log ErrorPath: # /etc/XrayR/error.log DnsConfigPath: # /etc/XrayR/dns.json # Path to dns config, check https://xtls.github.io/config/dns.html for help RouteConfigPath: /etc/XrayR/route.json # Path to route config, check https://xtls.github.io/config/routing.html for help InboundConfigPath: # /etc/XrayR/custom_inbound.json # Path to custom inbound config, check https://xtls.github.io/config/inbound.html for help OutboundConfigPath: /etc/XrayR/custom_outbound.json # Path to custom outbound config, check https://xtls.github.io/config/outbound.html for help ConnectionConfig: Handshake: 4 # Handshake time limit, Second ConnIdle: 30 # Connection idle time limit, Second UplinkOnly: 2 # Time limit when the connection downstream is closed, Second DownlinkOnly: 4 # Time limit when the connection is closed after the uplink is closed, Second BufferSize: 64 # The internal cache size of each connection, kB Nodes: ...

custom_outbound.json

[ { "tag": "IPv4_out", "protocol": "freedom", "settings": {} }, { "tag": "IPv6_out", "protocol": "freedom", "settings": { "domainStrategy": "UseIPv6" } } { "protocol": "blackhole", "tag": "block" } ]

route.json

{ "domainStrategy": "IPOnDemand", "rules": [ { "type": "field", "outboundTag": "block", "ip": [ "geoip:private" ] }, { "type": "field", "outboundTag": "block", "protocol": [ "bittorrent" ] } { "type": "field", "outboundTag": "IPv6_out", "domain": [ "geosite:netflix" ] }, { "type": "field", "outboundTag": "IPv4_out", "network": "udp,tcp" } ] }

busiqiao commented 3 days ago

I used the default configuration except for removing warp socks, but something went wrong.

XrayR log

Nov 26 10:58:16 racknerd-3b07fa5 systemd[1]: Started XrayR Service. Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: XrayR 0.9.4 (A Xray backend that supports many panels) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: time="2024-11-26T10:58:16Z" level=info msg="Start the panel.." func="github.com/XrayR-project/XrayR/panel.(Panel).Start" file="github.com/XrayR-project/XrayR/panel/panel.go:165" Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: time="2024-11-26T10:58:16Z" level=panic msg="Failed to unmarshal Routing config: /etc/XrayR/route.json" func="github.com/XrayR-project/XrayR/panel.(Panel).loadCore" file="github.com/XrayR-project/XrayR/panel/panel.go:87" Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: panic: (logrus.Entry) 0xc001062770 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: goroutine 1 [running]: Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus.(Entry).log(0xc001062690, 0x0, {0xc001ad0c00, 0x39}) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus@v1.9.3/entry.go:260 +0x491 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus.(Entry).Log(0xc001062690, 0x0, {0xc001147598?, 0x1?, 0x1?}) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus@v1.9.3/entry.go:304 +0x48 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus.(Entry).Logf(0xc001062690, 0x0, {0x44d20c9?, 0xc0011475f8?}, {0xc001147918?, 0x10?, 0x3745400?}) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus@v1.9.3/entry.go:349 +0x7c Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus.(Logger).Logf(0x77f1160, 0x0, {0x44d20c9, 0x26}, {0xc001147918, 0x1, 0x1}) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus@v1.9.3/logger.go:154 +0x7c Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus.(Logger).Panicf(...) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus@v1.9.3/logger.go:195 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus.Panicf(...) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/sirupsen/logrus@v1.9.3/exported.go:219 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/panel.(Panel).loadCore(0x77f1160?, 0xc0010625b0) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/panel/panel.go:87 +0x3db Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/panel.(Panel).Start(0xc000ffbc40) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/panel/panel.go:167 +0xdf Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/cmd.run() Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/cmd/root.go:106 +0x1c5 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/cmd.init.func1(0xc001066600?, {0x445389d?, 0x4?, 0x445378d?}) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/cmd/root.go:27 +0x13 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/spf13/cobra.(Command).execute(0x780c840, {0xc00010c8e0, 0x2, 0x2}) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/spf13/cobra@v1.8.0/command.go:987 +0xab1 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/spf13/cobra.(Command).ExecuteC(0x780c840) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/spf13/cobra@v1.8.0/command.go:1115 +0x3ff Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/spf13/cobra.(*Command).Execute(...) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/spf13/cobra@v1.8.0/command.go:1039 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/cmd.Execute(...) Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/cmd/root.go:120 Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: main.main() Nov 26 10:58:16 racknerd-3b07fa5 XrayR[216157]: github.com/XrayR-project/XrayR/main.go:10 +0x1a Nov 26 10:58:16 racknerd-3b07fa5 systemd[1]: XrayR.service: Main process exited, code=exited, status=2/INVALIDARGUMENT Nov 26 10:58:16 racknerd-3b07fa5 systemd[1]: XrayR.service: Failed with result 'exit-code'.

config.yml

Log: Level: debug # Log level: none, error, warning, info, debug AccessPath: # /etc/XrayR/access.Log ErrorPath: # /etc/XrayR/error.log DnsConfigPath: # /etc/XrayR/dns.json # Path to dns config, check https://xtls.github.io/config/dns.html for help RouteConfigPath: /etc/XrayR/route.json # Path to route config, check https://xtls.github.io/config/routing.html for help InboundConfigPath: # /etc/XrayR/custom_inbound.json # Path to custom inbound config, check https://xtls.github.io/config/inbound.html for help OutboundConfigPath: /etc/XrayR/custom_outbound.json # Path to custom outbound config, check https://xtls.github.io/config/outbound.html for help ConnectionConfig: Handshake: 4 # Handshake time limit, Second ConnIdle: 30 # Connection idle time limit, Second UplinkOnly: 2 # Time limit when the connection downstream is closed, Second DownlinkOnly: 4 # Time limit when the connection is closed after the uplink is closed, Second BufferSize: 64 # The internal cache size of each connection, kB Nodes: ...

custom_outbound.json

[ { "tag": "IPv4_out", "protocol": "freedom", "settings": {} }, { "tag": "IPv6_out", "protocol": "freedom", "settings": { "domainStrategy": "UseIPv6" } } { "protocol": "blackhole", "tag": "block" } ]

route.json

{ "domainStrategy": "IPOnDemand", "rules": [ { "type": "field", "outboundTag": "block", "ip": [ "geoip:private" ] }, { "type": "field", "outboundTag": "block", "protocol": [ "bittorrent" ] } { "type": "field", "outboundTag": "IPv6_out", "domain": [ "geosite:netflix" ] }, { "type": "field", "outboundTag": "IPv4_out", "network": "udp,tcp" } ] }

core: Xray 1.8.20 started