Apache 和 Firefox 是如何同时使用端口 80(或有时端口 8080)的?
How is it that Apache and Firefox can use port 80 (or sometimes port 8080) simultaneously?
Apache 网络服务器使用端口 80 侦听传入请求并通过端口 80 回复。Firefox 使用端口 80 向网络服务器发送请求,然后在端口 80 上侦听来自网络服务器的响应。我之前同时拥有 运行 Apache 和 Firefox,只是想知道两个不同的程序如何共享同一个端口。
Firefox 未侦听端口 80。它正在向服务器端口发出请求并处理响应。
TCP 网络连接的每一端都由一对 (ipaddress, port #) 定义。当一个数据包离开你的系统时,它所知道的是它需要找到 ip 地址 192.168.1.1 并去任何拥有绑定到端口 80 的套接字的人。
服务器套接字将由 Apache 侦听的地址和端口 80 定义。Firefox 打开的客户端套接字将具有相同的 IP 地址,但随机分配的端口号不同,您通常看不到。
您可以使用 netstat 或 tcpview (Windows) 查看它
例如,当我 运行 netstat 现在我看到:
tcp4 0 0 x.x.x.x.62993 Whosebug.co.https ESTABLISHED
其中 x.x.x.x 是我的笔记本电脑 IP 地址,62993 是分配给我的网络浏览器的随机端口号。
Apache 网络服务器使用端口 80 侦听传入请求并通过端口 80 回复。Firefox 使用端口 80 向网络服务器发送请求,然后在端口 80 上侦听来自网络服务器的响应。我之前同时拥有 运行 Apache 和 Firefox,只是想知道两个不同的程序如何共享同一个端口。
Firefox 未侦听端口 80。它正在向服务器端口发出请求并处理响应。
TCP 网络连接的每一端都由一对 (ipaddress, port #) 定义。当一个数据包离开你的系统时,它所知道的是它需要找到 ip 地址 192.168.1.1 并去任何拥有绑定到端口 80 的套接字的人。 服务器套接字将由 Apache 侦听的地址和端口 80 定义。Firefox 打开的客户端套接字将具有相同的 IP 地址,但随机分配的端口号不同,您通常看不到。 您可以使用 netstat 或 tcpview (Windows) 查看它 例如,当我 运行 netstat 现在我看到:
tcp4 0 0 x.x.x.x.62993 Whosebug.co.https ESTABLISHED
其中 x.x.x.x 是我的笔记本电脑 IP 地址,62993 是分配给我的网络浏览器的随机端口号。