mirror of
https://github.com/wyx2685/V2bX.git
synced 2025-01-22 18:08:14 -05:00
fix ProxyProtocol
This commit is contained in:
parent
28acdc7087
commit
c3242f35bd
@ -6,6 +6,7 @@ import (
|
|||||||
"encoding/hex"
|
"encoding/hex"
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/Yuzuki616/V2bX/api/panel"
|
"github.com/Yuzuki616/V2bX/api/panel"
|
||||||
"github.com/Yuzuki616/V2bX/conf"
|
"github.com/Yuzuki616/V2bX/conf"
|
||||||
"github.com/goccy/go-json"
|
"github.com/goccy/go-json"
|
||||||
@ -52,16 +53,16 @@ func BuildInbound(config *conf.ControllerConfig, nodeInfo *panel.NodeInfo, tag s
|
|||||||
in.SniffingConfig = sniffingConfig
|
in.SniffingConfig = sniffingConfig
|
||||||
if *in.StreamSetting.Network == "tcp" {
|
if *in.StreamSetting.Network == "tcp" {
|
||||||
if in.StreamSetting.TCPSettings != nil {
|
if in.StreamSetting.TCPSettings != nil {
|
||||||
in.StreamSetting.TCPSettings.AcceptProxyProtocol = config.EnableProxyProtocol
|
in.StreamSetting.TCPSettings.AcceptProxyProtocol = config.XrayOptions.EnableProxyProtocol
|
||||||
} else {
|
} else {
|
||||||
tcpSetting := &coreConf.TCPConfig{
|
tcpSetting := &coreConf.TCPConfig{
|
||||||
AcceptProxyProtocol: config.EnableProxyProtocol,
|
AcceptProxyProtocol: config.XrayOptions.EnableProxyProtocol,
|
||||||
} //Enable proxy protocol
|
} //Enable proxy protocol
|
||||||
in.StreamSetting.TCPSettings = tcpSetting
|
in.StreamSetting.TCPSettings = tcpSetting
|
||||||
}
|
}
|
||||||
} else if *in.StreamSetting.Network == "ws" {
|
} else if *in.StreamSetting.Network == "ws" {
|
||||||
in.StreamSetting.WSSettings = &coreConf.WebSocketConfig{
|
in.StreamSetting.WSSettings = &coreConf.WebSocketConfig{
|
||||||
AcceptProxyProtocol: config.EnableProxyProtocol} //Enable proxy protocol
|
AcceptProxyProtocol: config.XrayOptions.EnableProxyProtocol} //Enable proxy protocol
|
||||||
}
|
}
|
||||||
// Set TLS or Reality settings
|
// Set TLS or Reality settings
|
||||||
if nodeInfo.Tls {
|
if nodeInfo.Tls {
|
||||||
@ -104,9 +105,9 @@ func BuildInbound(config *conf.ControllerConfig, nodeInfo *panel.NodeInfo, tag s
|
|||||||
// Support ProxyProtocol for any transport protocol
|
// Support ProxyProtocol for any transport protocol
|
||||||
if *in.StreamSetting.Network != "tcp" &&
|
if *in.StreamSetting.Network != "tcp" &&
|
||||||
*in.StreamSetting.Network != "ws" &&
|
*in.StreamSetting.Network != "ws" &&
|
||||||
config.EnableProxyProtocol {
|
config.XrayOptions.EnableProxyProtocol {
|
||||||
socketConfig := &coreConf.SocketConfig{
|
socketConfig := &coreConf.SocketConfig{
|
||||||
AcceptProxyProtocol: config.EnableProxyProtocol,
|
AcceptProxyProtocol: config.XrayOptions.EnableProxyProtocol,
|
||||||
TFO: config.XrayOptions.EnableTFO,
|
TFO: config.XrayOptions.EnableTFO,
|
||||||
} //Enable proxy protocol
|
} //Enable proxy protocol
|
||||||
in.StreamSetting.SocketSettings = socketConfig
|
in.StreamSetting.SocketSettings = socketConfig
|
||||||
|
22
conf/node.go
22
conf/node.go
@ -19,7 +19,6 @@ type ControllerConfig struct {
|
|||||||
DisableGetRule bool `yaml:"DisableGetRule"`
|
DisableGetRule bool `yaml:"DisableGetRule"`
|
||||||
ListenIP string `yaml:"ListenIP"`
|
ListenIP string `yaml:"ListenIP"`
|
||||||
SendIP string `yaml:"SendIP"`
|
SendIP string `yaml:"SendIP"`
|
||||||
EnableProxyProtocol bool `yaml:"EnableProxyProtocol"`
|
|
||||||
XrayOptions XrayOptions `yaml:"XrayOptions"`
|
XrayOptions XrayOptions `yaml:"XrayOptions"`
|
||||||
HyOptions HyOptions `yaml:"HyOptions"`
|
HyOptions HyOptions `yaml:"HyOptions"`
|
||||||
LimitConfig LimitConfig `yaml:"LimitConfig"`
|
LimitConfig LimitConfig `yaml:"LimitConfig"`
|
||||||
@ -27,16 +26,17 @@ type ControllerConfig struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type XrayOptions struct {
|
type XrayOptions struct {
|
||||||
EnableDNS bool `yaml:"EnableDNS"`
|
EnableProxyProtocol bool `yaml:"EnableProxyProtocol"`
|
||||||
DNSType string `yaml:"DNSType"`
|
EnableDNS bool `yaml:"EnableDNS"`
|
||||||
EnableVless bool `yaml:"EnableVless"`
|
DNSType string `yaml:"DNSType"`
|
||||||
EnableXtls bool `yaml:"EnableXtls"`
|
EnableVless bool `yaml:"EnableVless"`
|
||||||
EnableUot bool `yaml:"EnableUot"`
|
EnableXtls bool `yaml:"EnableXtls"`
|
||||||
EnableTFO bool `yaml:"EnableTFO"`
|
EnableUot bool `yaml:"EnableUot"`
|
||||||
DisableIVCheck bool `yaml:"DisableIVCheck"`
|
EnableTFO bool `yaml:"EnableTFO"`
|
||||||
DisableSniffing bool `yaml:"DisableSniffing"`
|
DisableIVCheck bool `yaml:"DisableIVCheck"`
|
||||||
EnableFallback bool `yaml:"EnableFallback"`
|
DisableSniffing bool `yaml:"DisableSniffing"`
|
||||||
FallBackConfigs []FallBackConfig `yaml:"FallBackConfigs"`
|
EnableFallback bool `yaml:"EnableFallback"`
|
||||||
|
FallBackConfigs []FallBackConfig `yaml:"FallBackConfigs"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type HyOptions struct {
|
type HyOptions struct {
|
||||||
|
Loading…
Reference in New Issue
Block a user