mirror of
https://github.com/XTLS/Xray-core.git
synced 2025-08-22 09:36:49 +08:00
VLESS practice: Use user-sent VLESS UUID's last byte as vlessRoute
for routing
rules
https://github.com/XTLS/Xray-core/pull/5009#issuecomment-3194262087
This commit is contained in:
@@ -217,6 +217,7 @@ func (h *Handler) Process(ctx context.Context, network net.Network, connection s
|
||||
Buffer: buf.MultiBuffer{first},
|
||||
}
|
||||
|
||||
var vlessRoute byte
|
||||
var request *protocol.RequestHeader
|
||||
var requestAddons *encoding.Addons
|
||||
var err error
|
||||
@@ -227,7 +228,7 @@ func (h *Handler) Process(ctx context.Context, network net.Network, connection s
|
||||
if isfb && firstLen < 18 {
|
||||
err = errors.New("fallback directly")
|
||||
} else {
|
||||
request, requestAddons, isfb, err = encoding.DecodeRequestHeader(isfb, first, reader, h.validator)
|
||||
vlessRoute, request, requestAddons, isfb, err = encoding.DecodeRequestHeader(isfb, first, reader, h.validator)
|
||||
}
|
||||
|
||||
if err != nil {
|
||||
@@ -455,6 +456,7 @@ func (h *Handler) Process(ctx context.Context, network net.Network, connection s
|
||||
}
|
||||
inbound.Name = "vless"
|
||||
inbound.User = request.User
|
||||
inbound.VlessRoute = net.Port(vlessRoute)
|
||||
|
||||
account := request.User.Account.(*vless.MemoryAccount)
|
||||
|
||||
|
Reference in New Issue
Block a user