我正在阅读有关网络的内容,在示例输出表中netstat -n
(来自访问由 216.40.231.195 托管的假设网站),我的书显示了一行,如下所示:
Proto Local Address Foreign Address State
TCP 192.168.4.27:57913 216.40.231.195:80 ESTABLISHED
像这样的直接 TCP 连接可能吗? 192.168.4.27是LAN上的私有IP地址,可能有数百万个具有192.168.4.27的网络接口卡。我的计算机实际上没有公共 IP 地址,对吗?只有路由器才能拥有这些。
我希望实际的连接从 192.168.4.27:57913 到默认网关(也许在 192.168.4.1:50001?)。我希望路由器将数据包转发到路由器的公共 IP 和端口(例如 1.2.3.4:61707),然后会有另一个从 1.2.3.4:61707 到 216.40.231.195:80 的真实连接。换句话说,我对它如何分解的猜测是:
- 从 PC(192.168.4.27:57913)到默认网关(路由器上面向 LAN 的网卡)(192.168.4.1:50001)的 TCP 连接。
- 从默认网关 192.168.4.1:50001 到路由器面向外部 WAN 的网卡 1.2.3.4:61707 的端口转发。
- 路由器 WAN 接口(1.2.3.4:61707)与 Web 服务器(216.40.231.195:80)之间的 TCP 连接。
这是否准确地描述了正在发生的事情?
另外,我对“网关”的工作定义是面向网络内部的网络接口,您可以在其中将数据包从该网络发送到另一个网络。是对的吗?我很难找到明确的定义。