如何在代理服务器上确定 UDP 数据包的目的地?

如何在代理服务器上确定 UDP 数据包的目的地?

我需要通过代理服务器在第 4 层路由 TCP 和 UDP 数据包(即对于 TCP 数据包,没有 TLS 终止)。所有数据包的目标地址都不固定。换句话说,路由需要是动态的,并且可以根据数据包中的目标主机名/IP 确定每个数据包的目标。因此,TCP/TLS 数据包可以根据 SNI(在 TLS ClientHello 中)轻松路由,因为在我的情况下所有 TCP 都是 TLS。但是,UDP 数据包不能,因为 SNI 通常用于 TCP,而其等效项似乎不存在于 UDP 中。

我正在查看特使代理目标 IP 输入过滤器来解决这个问题,但它是基于HAProxy 代理协议,它似乎不支持UDP。

是否存在标准代理协议,代理服务器可以使用该协议确定从客户端(也可以按照相同协议发送数据包)发送到它的 UDP 数据包的目标服务器地址(和端口)?如果相同的协议也可以支持 TCP/HTTP 代理,那就太好了。

相关内容