如果只有 UDP 连接,当客户端位于防火墙后面,并且 UDP 根据定义不维护有状态连接时,服务器如何将数据包发送回客户端。如果我对此有更好的心智模型,那么我将能够更好地诊断出阻止此 openvpn 连接成功的任何防火墙问题。
特别的问题是我同事的 openvpn 配置工作正常,除了在他的家庭 LAN 中,openvpn 服务器没有响应我试图诊断他的路由器/nat/防火墙的任何问题,但如果我了解服务器如何响应。OpenVPN 服务器配置为 UDP,这是推荐的配置。
如果只有 UDP 连接,当客户端位于防火墙后面,并且 UDP 根据定义不维护有状态连接时,服务器如何将数据包发送回客户端。如果我对此有更好的心智模型,那么我将能够更好地诊断出阻止此 openvpn 连接成功的任何防火墙问题。
特别的问题是我同事的 openvpn 配置工作正常,除了在他的家庭 LAN 中,openvpn 服务器没有响应我试图诊断他的路由器/nat/防火墙的任何问题,但如果我了解服务器如何响应。OpenVPN 服务器配置为 UDP,这是推荐的配置。
虽然 UDP 是一种无状态协议,但这并不意味着防火墙不会为了让响应返回客户端而保持某种状态。事实上,这就是状态防火墙所做的,NAT 路由器所做的等等。一个简单的 UDP 状态由源和目标 IP+端口组成,并且在一些不活动后状态被删除(即一段时间内没有新的数据包与状态匹配)。