1. 概述

在本篇教程中,我们将深入讲解IP 地址与端口号在网络通信中的作用,并对比它们之间的关键差异。

2. IP 地址

IP 是 Internet Protocol(互联网协议)的缩写。一个连接到互联网的设备可以通过 IP 地址与其他网络设备进行信息的发送和接收。IP 地址的核心作用是标识网络中的设备,实现通信。

每台连接到互联网的设备都需要一个唯一的 IP 地址。随着联网设备数量激增,我们需要数十亿个 IP 地址。IPv4 和 IPv6 两种协议可以满足这一需求。

IPv4 是最早的 IP 版本,使用 32 位地址格式,总共可容纳约 42 亿个地址(即 2³²)。在 IPv4 初期,联网设备数量较少,大多数网络是私有的,因此 IP 地址资源充足。但随着互联网爆炸式增长,IPv4 的地址空间逐渐枯竭,成为一大瓶颈。

IPv6 是当前的 IP 新标准,采用 128 位地址格式,极大地扩展了地址空间。IPv6 使用十六进制表示,例如 2001:0db8:85a3:0000:0000:8a2e:0370:7334。它还引入了多项增强功能,如:

  • 内建安全机制(IPsec)
  • 地址范围划分(scoped addresses)
  • 自动配置
  • 服务质量(QoS)
  • 简化的新头部格式

大多数自 2000 年以来的操作系统都已支持 IPv6。

IP 地址的分类

IP 地址主要分为四类:

类型 特点
公网 IP 可在互联网上路由,用于远程访问
私网 IP 不可在互联网上路由,仅限局域网内使用
静态 IP 由 ISP 分配,不会改变
动态 IP 由 DHCP 分配,可能随时间变化

IP 地址分类示意图

公网 vs 私网

静态 vs 动态

3. 端口号

在网络通信中,端口是一个虚拟通信端点,用于区分不同应用程序或服务。每个运行在操作系统上的进程都可以绑定一个端口号,操作系统通过端口号将网络流量转发给正确的程序。

在 OSI 模型中,端口属于传输层。常见的端口号如下:

端口号 协议 用途
20/21 FTP 文件传输
22 SSH 安全远程登录
23 Telnet 远程终端协议
25 SMTP 电子邮件发送
53 DNS 域名解析
80 HTTP 网页浏览
443 HTTPS 加密网页浏览

端口号的作用是帮助操作系统识别 incoming traffic 并将其转发给正确的应用程序。例如:

  • 如果 Sam 想通过 FTP 传一个 MP3 给 Mike,他使用的是端口 21。
  • Mike 的电脑收到数据后,根据端口号识别这是 FTP 请求,会将其转发给 FTP 客户端,而不是邮件程序。
  • 同时,Mike 也可以在浏览器中打开网页(使用端口 80),两个服务可以并行运行。

现代计算机总共支持 65,535 个端口号,范围从 0 到 65535。

示例场景

如下图所示,客户端尝试通过端口 23 与服务器建立 Telnet 连接。服务器识别到端口号后,启动 Telnet 服务,完成连接。

端口连接示意图

4. IP 地址 vs 端口号

对比项 IP 地址 端口号
用途 标识网络中的设备 标识设备上的应用程序
地址长度 IPv4 为 32 位,IPv6 为 128 位 最多 16 位
所属 OSI 层级 网络层 传输层
管理者 网络管理员 操作系统
查看方式 使用 ipconfig 命令 使用 netstat 命令
示例 192.168.1.12001:0db8::1 80(HTTP)、22(SSH)

5. 总结

本文详细介绍了 IP 地址与端口号的基本概念及其区别:

  • IP 地址用于唯一标识网络中的设备;
  • 端口号用于区分设备上运行的不同应用程序;
  • ✅ 二者配合使用,构成了完整的网络通信机制;
  • ⚠️ 实际开发中,配置错误(如端口冲突、IP 地址错误)是常见的网络问题,务必仔细检查。

理解这两者的区别,对于排查网络连接问题、编写网络服务程序、配置防火墙规则等都非常关键。


原始标题:Difference Between IP Address and Port Number