访问 localhost:port 时是否打开了额外的端口?

网络工程 联网
2022-02-26 10:55:29

想象一个程序在 localhost 端口 6000 上提供“Hello World”。

如果我在 Chrome 中访问 localhost:6000,是否打开了中间端口以发回响应?从服务器的 POV 中,请求必须具有源 IP 和端口,以便它可以发回响应。这是 Chrome 监听响应的中间端口 5000 吗?

1个回答

TCP 客户端使用从 OS 堆栈分配的临时端口用于传出连接。

“打开一个端口”通常是指在防火墙上打开一个传入和侦听端口,具有目标 NAT 或类似的。

这不是这里的情况,因为客户端的传出临时端口只能用于该连接(套接字),即。从它所连接的另一端的 TCP 端口。接受任意连接的端口需要处于侦听状态,通常由服务器应用程序设置。

当然,所有localhost连接都仅限于该特定主机的本地连接。在任何情况下都不能从外部网络使用它们。