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