OpenVINOTM,给你看得见的未来!>>
电子产品世界 » 论坛首页 » 综合技术 » PCB与EMC » IP基础知识——IP地址的基础知识

共2条 1/1 1 跳转至

IP基础知识——IP地址的基础知识

专家
2020-08-23 07:47:44    评分

TCP/IP 网络通信时,为了保证能正常通信,每个设备都需要配置正确的 IP 地址,否则无法实现正常的通信。

IP 地址(IPv4 地址)由 32 位正整数来表示,IP 地址在计算机是以二进制的方式处理的。

而人类为了方便记忆采用了点分十进制的标记方式,也就是将 32 位 IP 地址以每 8 位为组,共分为 4 组,每组以「.」隔开,再将每组转换成十进制。

图片14.png点分十进制

那么,IP 地址最大值也就是

图片13.png 

也就说,最大允许 43 亿台计算机连接到网络。

实际上,IP 地址并不是根据主机台数来配置的,而是以网卡。像服务器、路由器等设备都是有 2 个以上的网卡,也就是它们会有 2 个以上的 IP 地址。

图片12.png每块网卡可以分配一个以上的IP地址

因此,让 43 亿台计算机全部连网其实是不可能的,更何况 IP 地址是由「网络标识」和「主机标识」这两个部分组成的,所以实际能够连接到网络的计算机个数更是少了很多。

可能有的小伙伴提出了疑问,现在不仅电脑配了 IP, 手机、IPad 等电子设备都配了 IP 呀,照理来说肯定会超过 43 亿啦,那是怎么能够支持这么多 IP 的呢?

因为会根据一种可以更换 IP 地址的技术 NAT,使得可连接计算机数超过 43 亿台。NAT 技术后续会进一步讨论和说明。

IP 地址的分类

互联网诞生之初,IP 地址显得很充裕,于是计算机科学家们设计了分类地址

IP 地址分类成了 5 种类型,分别是 A 类、B 类、C 类、D 类、E 类。

图片11.pngIP 地址分类

上图中黄色部是分类号,用以区分 IP 地址类别。

什么是 A、B、C 类地址?

其中对于 A、B、C 类主要分为两个部分,分别是网络号和主机号。这很好理解,好比小林是 A 小区 1 栋 101 号,你是 B 小区 1 栋 101 号。

我们可以用下面这个表格, 就能很清楚的知道 A、B、C 分类对应的地址范围、最大主机个数。

图片10.pngA、B、C 分类地址

A、B、C 分类地址最大主机个数是如何计算的呢?

最大主机个数,就是要看主机号的位数,如 C 类地址的主机号占 8 位,那么 C 类地址的最大主机个数:

图片9.png 

为什么要减 2 呢?

因为在 IP 地址中,有两个 IP 是特殊的,分别是主机号全为 1 和 全为 0 地址。

图片8.png 

· 

主机号全为 1 指定某个网络下的所有主机,用于广播

· 

· 

主机号全为 0 指定某个网络

· 

因此,在分配过程中,应该去掉这两种情况。

广播地址用于什么?

广播地址用于在同一个链路中相互连接的主机之间发送数据包

学校班级中就有广播的例子,在准备上课的时候,通常班长会喊:“上课, 全体起立!”,班里的同学听到这句话是不是全部都站起来了?这个句话就有广播的含义。

当主机号全为 1 时,就表示该网络的广播地址。例如把 172.20.0.0/16 用二进制表示如下:

10101100.00010100.00000000.00000000

将这个地址的主机部分全部改为 1,则形成广播地址:

10101100.00010100.11111111.11111111

再将这个地址用十进制表示,则为 172.20.255.255

广播地址可以分为本地广播和直接广播两种。

· 

在本网络内广播的叫做本地广播。例如网络地址为 192.168.0.0/24 的情况下,广播地址是 192.168.0.255 。因为这个广播地址的 IP 包会被路由器屏蔽,所以不会到达 192.168.0.0/24 以外的其他链路上。

· 

· 

在不同网络之间的广播叫做直接广播。例如网络地址为 192.168.0.0/24 的主机向 192.168.1.255/24 的目标地址发送 IP 包。收到这个包的路由器,将数据转发给192.168.1.0/24,从而使得所有 192.168.1.1~192.168.1.254 的主机都能收到这个包(由于直接广播有一定的安全问题,多数情况下会在路由器上设置为不转发)。

· 

 

图片7.png本地广播与直接广播

什么是 D、E 类地址?

D 类和 E 类地址是没有主机号的,所以不可用于主机 IP,D 类常被用于多播E 类是预留的分类,暂时未使用。

图片6.pngD、E 分类地址

多播地址用于什么?

多播用于将包发送给特定组内的所有主机。

还是举班级的栗子,老师说:“最后一排的同学,上来做这道数学题。”,老师是指定的是最后一排的同学,也就是多播的含义了。

由于广播无法穿透路由,若想给其他网段发送同样的包,就可以使用可以穿透路由的多播(组播)。

图片5.png单播、广播、多播通信

多播使用的 D 类地址,其前四位是 1110 就表示是多播地址,而剩下的 28 位是多播的组编号。

224.0.0.0 ~ 239.255.255.255 都是多播的可用范围,其划分为以下三类:

· 

224.0.0.0 ~ 224.0.0.255 为预留的组播地址,只能局域网中,路由器是不会进行转发的

· 

· 

224.0.1.0 ~ 238.255.255.255  为用户可用的组播地址,可以用于 Internet 上

· 

· 

239.0.0.0 ~ 239.255.255.255 为本地管理组播地址,可供内部网在内部使用,仅在特定的本地范围内有效

· 

 

IP 分类的优点

不管是路由器还是主机解析到一个 IP 地址时候,我们判断其 IP 地址的首位是否为 0,为 0 则为 A 类地址,那么就能很快的找出网络地址和主机地址。

其余分类判断方式参考如下图:

图片4.pngIP 分类判断

所以,这种分类地址的优点就是简单明了、选路(基于网络地址)简单

IP 分类的缺点

缺点一

同一网络下没有地址层次,比如一个公司里用了 B 类地址,但是可能需要根据生产环境、测试环境、开发环境来划分地址层次,而这种 IP 分类是没有地址层次划分的功能,所以这就缺少地址的灵活性

缺点二

A、B、C类有个尴尬处境,就是不能很好的与现实网络匹配

· 

C 类地址能包含的最大主机数量实在太少了,只有 254 个,估计一个网吧都不够用。

· 

· 

B 类地址能包含的最大主机数量又太多了,6 万多台机器放在一个网络下面,一般的企业基本达不到这个规模,闲着的地址就是浪费。

· 

这两个缺点,都可以在 CIDR 无分类地址解决。

无分类地址 CIDR

正因为 IP 分类存在许多缺点,所有后面提出了无分类地址的方案,即 CIDR

这种方式不再有分类地址的概念,32 比特的 IP 地址被划分为两部分,前面是网络号,后面是主机号

怎么划分网络号和主机号的呢?

表示形式 a.b.c.d/x,其中 /x 表示前 x 位属于网络号 x 的范围是 0 ~ 32,这就使得 IP 地址更加具有灵活性。

比如 10.100.122.2/24,这种地址表示形式就是 CIDR,/24 表示前 24 位是网络号,剩余的 8 位是主机号。

 

还有另一种划分网络号与主机号形式,那就是子网掩码,掩码的意思就是掩盖掉主机号,剩余的就是网络号。

将子网掩码和 IP 地址按位计算 AND,就可得到网络号。

图片3.png 

为什么要分离网络号和主机号?

因为两台计算机要通讯,首先要判断是否处于同一个广播域内,即网络地址是否相同。如果网络地址相同,表明接受方在本网络上,那么可以把数据包直接发送到目标主机,

路由器寻址工作中,也就是通过这样的方式来找到对应的网络号的,进而把数据包转发给对应的网络内。

图片2.pngIP地址的网络号

怎么进行子网划分?

在上面我们知道可以通过子网掩码划分出网络号和主机号,那实际上子网掩码还有一个作用,那就是划分子网

子网划分实际上是将主机地址分为两个部分:子网网络地址和子网主机地址。形式如下:

图片1.png 

· 

未做子网划分的 ip 地址:网络地址+主机地址

· 

· 

做子网划分后的 ip 地址:网络地址+(子网网络地址+子网主机地址)

· 

假设对 C 类地址进行子网划分,网络地址 192.168.1.0,使用子网掩码 255.255.255.192 对其进行子网划分。

C 类地址中前 24 位 是网络号,最后 8 位是主机号,根据子网掩码可知 8 位主机号中借用 2 位作为子网号

 

由于子网网络地址被划分成 2 位,那么子网地址就有 4 个,分别是 00、01、10、11,具体划分如下图:





关键词: 网络     主机     分类    

工程师
2020-08-24 19:42:39    评分
2楼

感谢您的分享


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]