IP地址分类

IP地址组成

IP地址由网络号和主机号组成

网络号是由因特网权利机构分配

主机号也叫主机地址是由网络管理员分配

因此确保了IP地址的全球唯一性(私有地址除外)


IP地址分类

为了适应不同的网络,IP地址空间被分为五类,分别是A,B,C,D和E类,其中A,B,C类最常用,D类用于组播,E类用于科研。

IP地址类型 第一字节十进制范围 二进制固定最高位 二进制网络位 二进制主机位 每个网络中的主机个数
A 0-127 0 8位 24位 2^24-2
B 128-191 10 16位 16位 2^16-2
C 192-223 110 24位 8位 2^8-2
D 224-239 1110 组播地址使用
E 240-255 1111 保留试验用
注意:A类地址中0不允许使用,127作为测试TCP/IP协议的环回地址,因此A类地址实际可以用的是1-126


保留地址

申请的IP地址都减去2,那是因为网络中有一些地址被保留,不能分配给网络设备使用。

网络地址:网络地址不变,主机位全0的IP地址代表本网络的本身。

广播地址:网络地址不变,主机位全1的IP地址代表网络的广播。


IP地址具有全球唯一性,而且数量有限,随着Internet的发展,共有的IP地址几乎枯竭。为了解决这个问题,提出了VLSM,CIDR以及IPv6等机制。

另一种有效的方法就是使用私有地址。但是私有地址是无法连接到Internet的。因此我们需要使用代理或者NAT的能力把私有地址转换成公有地址。

原则上讲,私有地址可以是任何地址,但是有一个问题:假设我们网络中的一个私有地址和公网中的一个公网地址产生冲突的话,那么就无法访问到公网地址。为了解决这个问题,我们从A,B,C类地址中挑选出一部分地址作为私有地址。

私有IP地址段
IP地址类型 范围
A 10.0.0.0-10.255.255.255
B 172.16.1.1-172.31.255.255
C 192.168.0.0-192.168.255.255

IP地址:199.5.203.5

C类,前24位,即前三个十进制数,199.5.203.0为网络号,后面的5即最后一个十进制数为主机号。



IP地址:124.4.56.4

A类,前8位,即第一个十进制数,124.0.0.0为网络号,后面的4.56.4,即最后三个十进制数为主机号。

### IP地址分类及详解 IP地址是网络通信中的关键标识,用于唯一地识别网络中的设备。根据其结构和用途,IP地址被划分为五类:A类、B类、C类、D类和E类。以下是每类IP地址的详细说明: #### 1. A类地址 A类地址的第一个字节的第一位固定为0,因此A类地址的范围是从`0.0.0.0`到`127.255.255.255`[^5]。在A类地址中,第一个字节表示网络号,剩下的三个字节表示主机号。这意味着A类地址适合于大型网络,因为它的主机号部分非常大,可以容纳大量的主机。 #### 2. B类地址 B类地址的第一个字节的前两位固定为10,因此B类地址的范围是从`128.0.0.0`到`191.255.255.255`[^5]。在B类地址中,前两个字节表示网络号,后两个字节表示主机号。这种划分使得B类地址适用于中等规模的网络。 #### 3. C类地址 C类地址的第一个字节的前三位固定为110,因此C类地址的范围是从`192.0.0.0`到`223.255.255.255`[^5]。在C类地址中,前三个字节表示网络号,最后一个字节表示主机号。C类地址适用于小型网络,因为其主机号部分较小。 #### 4. D类地址 D类地址的第一个字节的前四位固定为1110,因此D类地址的范围是从`224.0.0.0`到`239.255.255.255`。D类地址主要用于多播(Multicast)通信,不区分网络号和主机号。 #### 5. E类地址 E类地址的第一个字节的前四位固定为1111,因此E类地址的范围是从`240.0.0.0`到`255.255.255.255`。E类地址通常保留用于实验和研究目的,也不区分网络号和主机号。 #### 私有IP地址范围 除了上述分类外,还存在一些特定的私有IP地址范围,这些地址不能直接用于互联网通信,但可以在局域网内自由使用。私有IP地址范围如下: - A类:`10.0.0.0`到`10.255.255.255`[^3] - B类:`172.16.0.0`到`172.31.255.255`[^3] - C类:`192.168.0.0`到`192.168.255.255`[^3] #### 示例代码:判断IP地址类别 以下是一个简单的Python程序,用于判断给定IP地址的类别。 ```python def classify_ip(ip): first_octet = int(ip.split('.')[0]) if 0 <= first_octet <= 127: return "A类" elif 128 <= first_octet <= 191: return "B类" elif 192 <= first_octet <= 223: return "C类" elif 224 <= first_octet <= 239: return "D类" elif 240 <= first_octet <= 255: return "E类" else: return "无效IP地址" ip_address = "192.168.1.1" print(f"IP地址 {ip_address} 属于 {classify_ip(ip_address)}") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值