# 搞清楚IP地址是怎么一回事

By [yjh](https://paragraph.com/@yjh999) · 2022-08-06

---

IP地址（Internet Protocol Address）是指[互联网](https://baike.baidu.com/item/%E4%BA%92%E8%81%94%E7%BD%91/199186)协议地址，又译为网际协议地址。

IP地址是[IP协议](https://baike.baidu.com/item/IP%E5%8D%8F%E8%AE%AE/131947)提供的一种统一的[地址格式](https://baike.baidu.com/item/%E5%9C%B0%E5%9D%80%E6%A0%BC%E5%BC%8F/53569124)，它为互联网上的每一个网络和每一台[主机](https://baike.baidu.com/item/%E4%B8%BB%E6%9C%BA/455151)分配一个[逻辑地址](https://baike.baidu.com/item/%E9%80%BB%E8%BE%91%E5%9C%B0%E5%9D%80/3283849)，以此来屏蔽[物理地址](https://baike.baidu.com/item/%E7%89%A9%E7%90%86%E5%9C%B0%E5%9D%80/2901583)的差异。（此文内容来自百度百科）

### IP协议

IP协议是为[计算机网络](https://baike.baidu.com/item/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/18763)相互连接进行通信而设计的协议。在[因特网](https://baike.baidu.com/item/%E5%9B%A0%E7%89%B9%E7%BD%91/114119)中，它是能使连接到网上的所有计算机网络实现相互通信的一套规则，规定了计算机在因特网上进行通信时应当遵守的规则。任何厂家生产的[计算机系统](https://baike.baidu.com/item/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%B3%BB%E7%BB%9F/7210959)，只要遵守IP协议就可以与[因特网](https://baike.baidu.com/item/%E5%9B%A0%E7%89%B9%E7%BD%91/114119)互连互通。各个厂家生产的网络系统和设备，如[以太网](https://baike.baidu.com/item/%E4%BB%A5%E5%A4%AA%E7%BD%91/99684)、[分组交换网](https://baike.baidu.com/item/%E5%88%86%E7%BB%84%E4%BA%A4%E6%8D%A2%E7%BD%91/9013684)等，它们相互之间不能互通，不能互通的主要原因是因为它们所传送数据的[基本单元](https://baike.baidu.com/item/%E5%9F%BA%E6%9C%AC%E5%8D%95%E5%85%83/10276)（[技术](https://baike.baidu.com/item/%E6%8A%80%E6%9C%AF/13014499)上称之为“帧”）的格式不同。IP协议实际上是一套由软件程序组成的协议软件，它把各种不同“帧”统一转换成“[IP数据报](https://baike.baidu.com/item/IP%E6%95%B0%E6%8D%AE%E6%8A%A5/1581132)”格式，这种转换是[因特网](https://baike.baidu.com/item/%E5%9B%A0%E7%89%B9%E7%BD%91/114119)的一个最重要的特点，使所有各种计算机都能在因特网上实现互通，即具有“开放性”的特点。正是因为有了IP协议，[因特网](https://baike.baidu.com/item/%E5%9B%A0%E7%89%B9%E7%BD%91/114119)才得以迅速发展成为世界上最大的、开放的计算机通信网络。因此，IP协议也可以叫做“[因特网](https://baike.baidu.com/item/%E5%9B%A0%E7%89%B9%E7%BD%91/114119)协议”。

### IP地址

IP协议中还有一个非常重要的内容，那就是给[因特网](https://baike.baidu.com/item/%E5%9B%A0%E7%89%B9%E7%BD%91/114119)上的每台计算机和其它设备都规定了一个唯一的地址，叫做“IP地址”。由于有这种唯一的地址，才保证了用户在连网的计算机上操作时，能够高效而且方便地从千千万万台计算机中选出自己所需的对象来。

[IP](https://baike.baidu.com/item/IP/224599)地址就像是我们的家庭住址一样，如果你要写信给一个人，你就要知道他（她）的地址，这样邮递员才能把信送到。计算机发送信息就好比是[邮递员](https://baike.baidu.com/item/%E9%82%AE%E9%80%92%E5%91%98/28881)，它必须知道唯一的“家庭地址”才能不至于把信送错人家。只不过我们的地址是用文字来表示的，计算机的地址用二进制数字表示。

IP地址被用来给[Internet](https://baike.baidu.com/item/Internet/272794)上的电脑一个编号。大家日常见到的情况是每台联网的PC上都需要有IP地址，才能正常通信。我们可以把“[个人计算机](https://baike.baidu.com/item/%E4%B8%AA%E4%BA%BA%E8%AE%A1%E7%AE%97%E6%9C%BA/3731770)”比作“一台电话”，那么“IP地址”就相当于“电话号码”，而Internet中的[路由器](https://baike.baidu.com/item/%E8%B7%AF%E7%94%B1%E5%99%A8/108294)，就相当于电信局的“程控式[交换机](https://baike.baidu.com/item/%E4%BA%A4%E6%8D%A2%E6%9C%BA/103532)”。

IP地址是一个32位的二进制数，通常被分割为4个“8位[二进制](https://baike.baidu.com/item/%E4%BA%8C%E8%BF%9B%E5%88%B6/361457)数”（也就是4个字节）。IP地址通常用“[点分十进制](https://baike.baidu.com/item/%E7%82%B9%E5%88%86%E5%8D%81%E8%BF%9B%E5%88%B6/2186100)”表示成（a.b.c.d）的形式，其中，a,b,c,d都是0~255之间的十进制整数。例：点分十进IP地址（100.4.5.6），实际上是32位二进制数（01100100.00000100.00000101.00000110）。

发展历程
----

编辑 播报

首先出现的IP地址是[IPV4](https://baike.baidu.com/item/IPV4/422599)，它只有4段数字，每一段最大不超过255。由于互联网的蓬勃发展，IP位址的需求量愈来愈大，使得IP位址的发放愈趋严格，各项资料显示全球IPv4位址可能在2005至2010年间全部发完（实际情况是在2019年11月25日IPv4位地址分配完毕）。地址空间的不足必将妨碍互联网的进一步发展。为了扩大[地址空间](https://baike.baidu.com/item/%E5%9C%B0%E5%9D%80%E7%A9%BA%E9%97%B4/1423980)，拟通过IPv6重新定义地址空间。[IPv6](https://baike.baidu.com/item/IPv6/172297)采用128位地址长度。在IPv6的设计过程中除了一劳永逸地解决了地址短缺问题以外，还考虑了在IPv4中解决不好的其它问题。 \[1\] 

现有的互联网是在[IPv4协议](https://baike.baidu.com/item/IPv4%E5%8D%8F%E8%AE%AE/5927589)的基础上运行的。IPv6是下一版本的互联网协议，也可以说是[下一代互联网](https://baike.baidu.com/item/%E4%B8%8B%E4%B8%80%E4%BB%A3%E4%BA%92%E8%81%94%E7%BD%91/5395764)的协议，它的提出最初是因为随着互联网的迅速发展，IPv4定义的有限地址空间将被耗尽，而地址空间的不足必将妨碍互联网的进一步发展。为了扩大地址空间，拟通过IPv6以重新定义地址空间。IPv4采用32位地址长度，只有大约43亿个地址，估计在2005～2010年间将被分配完毕，而IPv6采用128位地址长度，几乎可以不受限制地提供地址。按保守方法估算IPv6实际可分配的地址，整个地球的每平方米面积上仍可分配1000多个地址。在IPv6的设计过程中除解决了地址短缺问题以外，还考虑了在IPv4中解决不好的其它一些问题，主要有端到端IP连接、服务质量（QoS）、安全性、多播、移动性、即插即用等。

随着互联网的飞速发展和互联网用户对服务水平要求的不断提高，[IPv6](https://baike.baidu.com/item/IPv6/172297)在全球将会越来越受到重视。实际上，并不急于推广IPv6，只需在现有的IPv4基础上将32位扩展8位到40位，即可解决IPv4地址不够的问题。这样一来可用地址数就扩大了256倍。

IP地址类型
------

编辑 播报

### 公有地址

公有地址（Public address）由Inter NIC（Internet Network Information Center[因特网](https://baike.baidu.com/item/%E5%9B%A0%E7%89%B9%E7%BD%91)信息中心）负责。这些IP地址分配给注册并向Inter NIC提出申请的组织机构。通过它直接访问[因特网](https://baike.baidu.com/item/%E5%9B%A0%E7%89%B9%E7%BD%91)。

### 私有地址

私有地址（Private address）属于非注册地址，专门为组织机构内部使用。

以下列出留用的内部私有地址

A类 10.0.0.0--10.255.255.255

B类 172.16.0.0--172.31.255.255

C类 192.168.0.0--192.168.255.255

### A类IP地址

一个A类IP地址是指， 在IP地址的四段号码中，第一段号码为网络号码，剩下的三段号码为本地计算机的号码。如果用二进制表示IP地址的话，A类IP地址就由1字节的[网络地址](https://baike.baidu.com/item/%E7%BD%91%E7%BB%9C%E5%9C%B0%E5%9D%80)和3字节[主机](https://baike.baidu.com/item/%E4%B8%BB%E6%9C%BA)地址组成，网络地址的最高位必须是“0”。A类IP地址中网络的标识长度为8位，[主机](https://baike.baidu.com/item/%E4%B8%BB%E6%9C%BA)标识的长度为24位，A类[网络地址](https://baike.baidu.com/item/%E7%BD%91%E7%BB%9C%E5%9C%B0%E5%9D%80)数量较少，有126个网络，每个网络可以容纳[主机](https://baike.baidu.com/item/%E4%B8%BB%E6%9C%BA)数达1600多万台。

A类IP地址 地址范围1.0.0.1到127.255.255.254 \[2\]  （二进制表示为：00000001 00000000 00000000 00000001 - 01111111 11111111 11111111 11111110）。最后一个是广播地址。

### B类IP地址

一个B类IP地址是指，在IP地址的四段号码中，前两段号码为网络号码。如果用[二进制](https://baike.baidu.com/item/%E4%BA%8C%E8%BF%9B%E5%88%B6)表示IP地址的话，B类IP地址就由2字节的[网络地址](https://baike.baidu.com/item/%E7%BD%91%E7%BB%9C%E5%9C%B0%E5%9D%80)和2字节[主机地址](https://baike.baidu.com/item/%E4%B8%BB%E6%9C%BA%E5%9C%B0%E5%9D%80)组成，网络地址的最高位必须是“10”。B类IP地址中网络的标识长度为16位，[主机](https://baike.baidu.com/item/%E4%B8%BB%E6%9C%BA)标识的长度为16位，B类[网络地址](https://baike.baidu.com/item/%E7%BD%91%E7%BB%9C%E5%9C%B0%E5%9D%80)适用于中等规模的网络，有16384个网络，每个网络所能容纳的计算机数为6万多台。

B类IP地址地址范围128.0.0.1-191.255.255.254 \[1\]  （二进制表示为：10000000 00000000 00000000 00000001----10111111 11111111 11111111 11111110）。 最后一个是广播地址。

B类IP地址的子网掩码为255.255.0.0，每个网络支持的最大主机数为256的2次方-2=65534台。

### C类IP地址

一个C类IP地址是指，在IP地址的四段号码中，前三段号码为网络号码，剩下的一段号码为本地计算机的号码。如果用二进制表示IP地址的话，C类IP地址就由3字节的[网络地址](https://baike.baidu.com/item/%E7%BD%91%E7%BB%9C%E5%9C%B0%E5%9D%80)和1字节[主机地址](https://baike.baidu.com/item/%E4%B8%BB%E6%9C%BA%E5%9C%B0%E5%9D%80)组成，网络地址的最高位必须是“110”。C类IP地址中网络的标识长度为24位，主机标识的长度为8位，C类[网络地址](https://baike.baidu.com/item/%E7%BD%91%E7%BB%9C%E5%9C%B0%E5%9D%80)数量较多，有209万余个网络。适用于小规模的[局域网](https://baike.baidu.com/item/%E5%B1%80%E5%9F%9F%E7%BD%91)络，每个网络最多只能包含254台计算机。

C类IP地址范围192.0.0.1-223.255.255.254 \[1\]  （二进制表示为: 11000000 00000000 00000000 00000001 - 11011111 11111111 11111111 11111110）。

C类IP地址的子网掩码为255.255.255.0，每个网络支持的最大主机数为256-2=254台

### D类IP地址

D类IP地址在历史上被叫做[多播地址](https://baike.baidu.com/item/%E5%A4%9A%E6%92%AD%E5%9C%B0%E5%9D%80)(multicast address)，即[组播地址](https://baike.baidu.com/item/%E7%BB%84%E6%92%AD%E5%9C%B0%E5%9D%80)。在[以太网](https://baike.baidu.com/item/%E4%BB%A5%E5%A4%AA%E7%BD%91)中，多播地址命名了一组应该在这个网络中应用接收到一个分组的站点。多播地址的最高位必须是“1110”，范围从224.0.0.0到239.255.255.255。

### 特殊的网址

1.  每一个字节都为0的地址（“0.0.0.0”）对应于当前[主机](https://baike.baidu.com/item/%E4%B8%BB%E6%9C%BA)；
    
2.  IP地址中的每一个字节都为1的IP地址（“255．255．255．255”）是当前子网的[广播地址](https://baike.baidu.com/item/%E5%B9%BF%E6%92%AD%E5%9C%B0%E5%9D%80)；
    
3.  IP地址中凡是以“11110”开头的[E类IP地址](https://baike.baidu.com/item/E%E7%B1%BBIP%E5%9C%B0%E5%9D%80)都保留用于将来和实验使用。
    
4.  IP地址中不能以十进制“127”作为开头，该类地址中数字127．0．0．1到127．255．255．255用于回路测试，如：[127.0.0.1](https://baike.baidu.com/item/127.0.0.1)可以代表本机IP地址，用“[http://127.0.0.1”就可以测试本机中配置的Web服务器。](http://127.0.0.1%E2%80%9D%E5%B0%B1%E5%8F%AF%E4%BB%A5%E6%B5%8B%E8%AF%95%E6%9C%AC%E6%9C%BA%E4%B8%AD%E9%85%8D%E7%BD%AE%E7%9A%84Web%E6%9C%8D%E5%8A%A1%E5%99%A8%E3%80%82)
    
5.  网络ID的第一个6位组也不能全置为“0”，全“0”表示本地网络。
    

### 子网

引入子网掩码(NetMask)，从逻辑上把一个大网络划分成一些小网络。子网掩码是由一系列的1和0构成，通过将其同IP地址做“与”运算来指出一个IP地址的网络号是什么。对于传统IP地址分类来说，A类地址的子网掩码是255.0.0.0；B类地址的[子网掩码](https://baike.baidu.com/item/%E5%AD%90%E7%BD%91%E6%8E%A9%E7%A0%81/100207)是255.255.0.0；C类地址的子网掩码是255.255.255.0。例如，如果要将一个B类网络166.111.0.0划分为多个C类子网来用的话，只要将其子网掩码设置为255.255.255.0即可，这样166.111.1.1和166.111.2.1就分属于不同的网络了。像这样，通过较长的子网掩码将一个网络划分为多个网络的方法就叫做划分子网(Subnetting)。 \[1\] 

### 超网

[超网](https://baike.baidu.com/item/%E8%B6%85%E7%BD%91/10504849)(Supernetting)是同子网类似的概念，它通过较短的子网掩码将多个小网络合成一个大网络。例如，一个单位分到了8个C类地址：202.120.224.0 ～ 202.120.231.0，只要将其子网掩码设置为255.255.248.0，就能使这些C类网络相通。

### 无类间路由

[无类域间路由](https://baike.baidu.com/item/%E6%97%A0%E7%B1%BB%E5%9F%9F%E9%97%B4%E8%B7%AF%E7%94%B1/240168)(CIDR，Classless Inter-Domain Routing)地址根据网络拓扑来分配，可以将连续的一组网络地址分配给一家公司，并使整组地址作为一个网络地址(比如使用超网技术)，在外部路由表上只有一个路由表项。这样既解决了地址匮乏问题，又解决了路由表膨胀的问题。另外，CIDR还将整个世界分为四个地区，给每个地区分配了一段连续的C类地址，分别是：欧洲(194.0.0.0～195.255.255.255)、北美(198.0.0.0～199.255.255.255)、中南美(200.0.0.0～201.255.255.255)和亚太(202.0.0.0～203.255.255.255)。这样，当一个亚太地区以外的路由器收到前8位为202或203的数据报时，它只需要将其放到通向亚太地区的路由即可，而对后24位的路由则可以在数据报到达亚太地区后再进行处理，这样就大大缓解了路由表膨胀的问题

IP地址的分配
-------

编辑 播报

[TCP/IP协议](https://baike.baidu.com/item/TCP%2FIP%E5%8D%8F%E8%AE%AE)需要针对不同的网络进行不同的设置，且每个节点一般需要一个“IP地址”、一个“[子网掩码](https://baike.baidu.com/item/%E5%AD%90%E7%BD%91%E6%8E%A9%E7%A0%81)”、一个“[默认网关](https://baike.baidu.com/item/%E9%BB%98%E8%AE%A4%E7%BD%91%E5%85%B3)”。不过，可以通过动态主机配置协议（[DHCP](https://baike.baidu.com/item/DHCP)），给[客户端](https://baike.baidu.com/item/%E5%AE%A2%E6%88%B7%E7%AB%AF)自动分配一个IP地址，避免了出错，也简化了TCP/IP协议的设置。

IP地址现由因特网名字与号码指派公司ICANN（Internet Corporation for Assigned Names and Numbers）分配。

InterNIC：负责美国及其他地区；

ENIC：负责欧洲地区；

APNIC（Asia Pacific Network Information Center）：　我国用户可向APNIC申请（要缴费）

PS：1998年，APNIC的总部从东京搬迁到[澳大利亚布里斯班](https://baike.baidu.com/item/%E6%BE%B3%E5%A4%A7%E5%88%A9%E4%BA%9A%E5%B8%83%E9%87%8C%E6%96%AF%E7%8F%AD)。

负责A类IP地址分配的机构是ENIC

负责北美B类IP地址分配的机构是InterNIC

负责亚太B类IP地址分配的机构是APNIC

IP地址管理
------

编辑 播报

倘若不能对IP地址进行有效管理，可能会造成降低了网络可用性与服务质量，严重甚至会导致网络崩溃。

以下是之中主要的IP地址管理模式：

### 手工管理模式

网络管理人员对Excel表格或地址登记簿进行维护是使用 手工维护，对某IP地址是不是能有效使用进行查询验证使借助简单PING命令，当对IP进行新分配之后，对Excel表格或地址登记簿需要进行更新运用手工方式。运用手工方式在接入端对静态IP地址进行配置，这就是传统手工管理IP模式。

### DHCP分配IP地址的管理模式

[DHCP](https://baike.baidu.com/item/DHCP/218195)动态分配IP地址的模式的出现是因为信息系统规模是在变大，对于实际业务需要，手工分配 IP地址的模式已经满足不了了。这样的方式会给网络带来下面一些问题：

1）对IP地址进行随机分配使用DHCP分配的管理模式，各位工作人员使用电脑指定单一IP地址，实现不了相关部门分配、绑定IP/MAC地址和审计等措施的要求；

2）使用过高CPU与系统挂断的情况，或用户的数量会大增，DHCP请求过高这些情况是因为使用了非专用DHCP服务器最终造成出现不及时的相应与出现中断服务的现象；

3）不能自动释放租约到期的IP地址；无法自动清除记录 IP冲突的表格，这是因为一些网络设备的硬件的设置的规定；

4）对传统DHCP功能而言缺乏外来用户授权与认证安全机制，这样一来，对MAC地址进行恶意伪造的行为是不能做到阻止，也就会用尽IP地址；

5）对网络管理员而言，网络扩容工程的过程比较繁杂琐碎；

6）准确定位非法接入设备的大量检索工作量也是存在这种管理模式；

7）安全性能低，很容易被攻击

### 通过交换机管理IP 地址模式

在[局域网](https://baike.baidu.com/item/%E5%B1%80%E5%9F%9F%E7%BD%91/98626)内，使用的方式是创新的，借助[交换机](https://baike.baidu.com/item/%E4%BA%A4%E6%8D%A2%E6%9C%BA/103532)内部集成的安全特性对IP地址进行有效管理的模式。只是按照安全措施来自认证（如IEEE802.1x）与访问控制列表对于前文提及的来自网络第2层即数据链路层的安全攻击（DHCP服务器欺骗 攻击、IP/MAC地址欺骗、MAC地址的泛滥攻击等等）是不能起到阻止的。

---

*Originally published on [yjh](https://paragraph.com/@yjh999/ip)*
