跳到正文

端口

Port

中级通用

端口(Port)是设备上用于区分网络通信目标的数字编号。它让同一台设备能把请求交给不同服务处理,比如网站服务和数据库服务可以各自监听一个端口。

你可能会说:「我在电脑上能打开这个服务,为什么同事用我的地址却连不上?帮我看看请求到底该发到哪里。」

读之前建议先了解

动手看看

8080测试工具同一台设备网站服务监听8080数据库服务监听5432
1

测试工具先请求这台设备的 8080 端口。设备地址告诉请求去哪里,端口号告诉设备要找哪个服务。

要点

  1. 1

    地址找设备,端口找服务

    你访问一个后端时,IP 地址帮助请求找到设备,端口帮助设备判断把请求交给哪个正在监听的服务。比如同一台机器上跑着网站和数据库,它们可以使用不同端口。

  2. 2

    监听地址也决定谁能连接

    服务启动后会在指定地址和端口上监听。如果它只监听本机地址,你在这台电脑上能访问,其他设备却连不上;这时只告诉同事端口号,还不足以解决问题。

  3. 3

    对外端口未必等于内部端口

    部署后,请求可能先到反向代理或容器的对外端口,再转给应用监听的内部端口。所以排查连接问题时,我们要看请求实际进入哪个端口,以及它被转发到了哪里。

容易混淆的地方

IP 地址和端口常写在一起,但分工不同:IP 地址定位设备,端口区分设备上的通信入口。URL 里的路径则是在请求到达网站服务后,帮助应用选择页面或接口;把路径从 /login 改成 /users,并不会让请求自动转到另一个端口。

什么时候用

适合用

  • 你让 AI Agent 启动本地后端和前端,需要说明各自监听哪个端口,方便浏览器或前端代码连接。
  • 你部署了一个 API,本机调用正常、外部调用失败,需要核对监听地址、对外端口和转发配置。
  • 你在一台机器上运行多个服务,需要检查它们是否争用同一个监听地址和端口。

不适合用

  • 你只是想让网站里的“设置”跳到“账号”页面,描述页面路由或链接就够了,不需要为每个页面分配端口。
  • 你想给网站换一个更好记的访问名称,重点是域名和 DNS;端口不能代替网站名称。

练一练

你让 AI Agent 做了一个本地 API,自己访问 localhost:3000 正常,同事从另一台电脑访问你的电脑 IP:3000 却失败。下一步最值得检查什么?

让 AI 帮你做

请帮我排查本地 API 为什么只能在本机访问。先确认进程监听的地址和端口,再检查同一局域网内用电脑 IP 加端口能否连接;如果经过容器或反向代理,也请核对对外端口到内部端口的转发。先说明检查结果,再建议修改。

接下来学什么