我正在尝试使用 winsocket2 库通过互联网在两台计算机之间建立连接。客户端和服务器都在路由器后面。
我需要做什么才能成功连接?客户端和服务器都需要使用端口转发吗?还是只有服务器需要端口转发?
答案1
只有服务器端的路由器才需要端口转发。让我们换个角度看:目标主机何时会变得模糊不清?在服务器端,因为客户端连接到 1 个外部 IP 地址,但最终可能会转到多个可能的主机。如果路由器中没有映射,例如,TCP 端口 80 必须转发到主机 x,则该路由器不知道该怎么做,因为有多种可能性,它不能随机选择一种。
因为一张图片胜过千言万语: