强制路由器保持空闲UDP端口打开

强制路由器保持空闲UDP端口打开,udp,router,nat,hole-punching,Udp,Router,Nat,Hole Punching,客户端打开到我的服务器的UDP连接,一段时间后(10分钟-24小时),服务器需要将数据发送回客户端,但发现客户端的UDP端口已关闭 测试后,我们发现客户端仍然打开UDP端口,但路由器(nat)可能因为不活动而关闭端口 有没有办法强迫路由器保持UDP端口打开而不发送保持活动的数据包?(服务器端或客户端) ICMP中有类似的内容吗 谢谢。我也遇到了同样的问题,我发现这个解决方案不是针对路由器,而是针对服务器: 尝试配置保持活动状态 方法取决于您使用的服务/程序/操作系统 例如,在客户机中使用Open

客户端打开到我的服务器的UDP连接,一段时间后(10分钟-24小时),服务器需要将数据发送回客户端,但发现客户端的UDP端口已关闭

测试后,我们发现客户端仍然打开UDP端口,但路由器(nat)可能因为不活动而关闭端口

有没有办法强迫路由器保持UDP端口打开而不发送保持活动的数据包?(服务器端或客户端)

ICMP中有类似的内容吗


谢谢。

我也遇到了同样的问题,我发现这个解决方案不是针对路由器,而是针对服务器:

尝试配置保持活动状态

方法取决于您使用的服务/程序/操作系统

例如,在客户机中使用OpenSSH,您必须在文件
/ssh/config
/etc/ssh/ssh\u config
中添加/配置以下行:

ServerAliveInterval 30
ServerAliveCountMax 60
ClientAliveInterval 30
ClientAliveCountMax 60
在服务器(我进行了更改)中,在文件
/etc/ssh/sshd\u config
中添加/配置以下行:

ServerAliveInterval 30
ServerAliveCountMax 60
ClientAliveInterval 30
ClientAliveCountMax 60
当然,这取决于操作系统等,但其想法是在服务中配置keep alive


祝你好运

问题是服务始终在UDP端口而不是TCP端口上打开,因此当没有数据通过路由器上打开的端口发送时,路由器将假定UDP连接丢失并关闭端口。