客户端打开到我的服务器的 UDP 连接,经过一段时间(10 分钟到 24 小时),服务器需要将数据发送回客户端,但发现客户端的 UDP 端口已关闭!
经过测试,我们发现客户端仍然打开了UDP端口,但是路由器(nat)可能因为不活动而关闭了端口!
有没有办法强制路由器保持 UDP 端口打开而不发送保持活动数据包?(服务器或客户端)。
ICMP 中有类似的东西吗?
谢谢你 。
客户端打开到我的服务器的 UDP 连接,经过一段时间(10 分钟到 24 小时),服务器需要将数据发送回客户端,但发现客户端的 UDP 端口已关闭!
经过测试,我们发现客户端仍然打开了UDP端口,但是路由器(nat)可能因为不活动而关闭了端口!
有没有办法强制路由器保持 UDP 端口打开而不发送保持活动数据包?(服务器或客户端)。
ICMP 中有类似的东西吗?
谢谢你 。
我遇到了同样的问题,我找到了这个解决方案,不是针对路由器,而是针对服务器:
尝试配置保持活动状态。
执行此操作的方法取决于您使用的服务/程序/操作系统。
例如,在客户端中使用 OpenSSH,您必须在文件中添加/配置以下行./ssh/config
或/etc/ssh/ssh_config
:
ServerAliveInterval 30
ServerAliveCountMax 60
在服务器(我进行更改的地方)中,在文件中添加/配置以下行/etc/ssh/sshd_config
:
ClientAliveInterval 30
ClientAliveCountMax 60
当然这取决于操作系统等,但想法是在服务中配置保持活动。
祝你好运!