端口(Port)是计算机网络中由操作系统提供的通信端点,用 0 到 65535 的数字编号标识。它与 IP 地址、传输协议配合,让一台主机上的多个程序能同时收发数据,是理解网络服务、防火墙和端口转发的基础概念。

| 类型 | 网络通信概念(传输层) |
| 取值范围 | 0 - 65535(16 位数字) |
| 常见协议 | TCP、UDP |
| 知名端口示例 | 80(HTTP)、443(HTTPS)、22(SSH) |
| 别名 | 通讯端口、连接埠、协议端口 |
端口(Port)是计算机网络中的一种逻辑通信端点,由操作系统以软件方式提供,用一个 16 位的数字(即端口号,范围 0 到 65535)来标识,配合 IP 地址和传输协议共同确定一次网络通信的具体目标。
一台主机通常只有少数几个 IP 地址,但上面往往同时运行着浏览器、聊天软件、网站服务等许多需要联网的程序。如果只靠 IP 地址,数据到达主机后就不知道该交给哪个程序。端口正是为了解决这个问题:每个联网程序会占用一个或多个端口,操作系统根据数据包上标注的端口号,把数据准确送到对应的程序手中。
一个常见的比喻是:IP 地址相当于一栋大楼的地址,端口号则相当于楼里的房间号。信件(数据包)先按地址送到大楼,再按房间号送到具体的收件人。因此在网络通信中,「IP 地址 + 协议 + 端口号」组合起来才能唯一确定一个通信端点,这也是 TCP 和 UDP 等传输层协议工作的基础。
日常运维和开发中,端口概念随处可见:在服务器上部署网站时,需要让服务监听 80 或 443 端口;家用路由器的「端口转发」功能,是把公网某个端口的访问引导到内网设备;开发调试时,本地服务常运行在 3000、8080 这类自选端口上;而「端口被占用」的报错,则说明该端口已被其他程序使用,需要换端口或关闭冲突程序。
问:端口和 IP 地址有什么区别?答:IP 地址用来定位网络中的哪一台主机,端口用来定位这台主机上的哪一个程序或服务,两者配合才能完成通信,缺一不可。
问:为什么端口号最大是 65535?答:因为端口号在协议中用 16 位二进制数表示,16 位能表达的最大值就是 65535,所以可用端口共有 65536 个(从 0 开始计数)。
问:开放过多端口有什么风险?答:每个开放的端口背后都对应一个在运行的服务,暴露的端口越多,被扫描和攻击的入口就越多。因此服务器通常只开放必需的端口,其余用防火墙封锁。

| 类型 | 网络通信概念(传输层) |
| 取值范围 | 0 - 65535(16 位数字) |
| 常见协议 | TCP、UDP |
| 知名端口示例 | 80(HTTP)、443(HTTPS)、22(SSH) |
| 别名 | 通讯端口、连接埠、协议端口 |
登录 后参与讨论
暂无讨论,来发表第一条评论吧