diff --git a/transport/vless/service.go b/transport/vless/service.go index 7b690202..ae329ba4 100644 --- a/transport/vless/service.go +++ b/transport/vless/service.go @@ -70,7 +70,7 @@ func (s *Service[T]) NewConnection(ctx context.Context, conn net.Conn, metadata userFlow := s.userFlow[user] if request.Flow == FlowVision && request.Command == vmess.NetworkUDP { return E.New(FlowVision, " flow does not support UDP") - } else if request.Flow != userFlow { + } else if request.Flow != userFlow && request.Command != vmess.CommandUDP { return E.New("flow mismatch: expected ", flowName(userFlow), ", but got ", flowName(request.Flow)) }