答案1
某种程度上是双向的,某种程度上是单向的。根据您的问题和图片,我认为您使用的是 NAT。
假设用户的源 IP 为 111.111.111.111,请求从端口 7777 发出
您的公共 IP 是 49.207.10.38,您的边缘路由器或代理正在监听端口 80
您的内部路由器的私有 IP 192.168.1.254
您的内部服务器的 IP 是 192.168.1.100
- 用户到达您的路由器或代理:111.111.111.111:7777 -> 49.207.10.38:80
- NAT 将公共 IP 转换为内部私有 IP:它不是从 49.207.10.38 发送内部数据包,而是以 192.168.1.254 发送,这样内部节点就可以回复路由器。
- 您的路由器将数据包重定向到内部服务器:192.168.1.254.7777 -> 192.168.1.100:80
- 内部服务器处理请求并将页面内容应答至源服务器(现在是内部路由器):192.168.1.100:80 -> 192.168.1.254:7777
- 路由器应用 NAT 转换以便将其发送回原始请求者,但是现在,NAT 还将其内部 IP 转换为公共 IP,以便公共用户可以从公共互联网访问它(它将以 49.207.10.38 而不是 192.168.1.254 作为源包):49.207.10.38:80 -> 111.111.111.111:7777
话虽如此,请记住:
如果请求从端口 7777 发往端口 80,则答案将从端口 80 发送到端口 7777
如果你将服务器放在私有网络中,则需要使用 NAT 将私有 IP 伪装成公共路由器 IP