[趣谈网络协议学习] 02 IP地址、 MAC 地址、 CIDR
发布日期:2021-06-29 17:12:14 浏览次数:2 分类:技术文章

本文共 2437 字,大约阅读时间需要 8 分钟。

 

IP地址格式与分类:

IP 地址是一个网卡在网络世界的通讯地址, 相当于我们现实世界的门牌号码。 如10.100.122.2 就是一个 IP 地址。 这个地址被点分隔为四个部分, 每个部分 8个 bit, 所以 IP 地址总共是 32 位。 这样产生的 IP 地址的数量很快就不够用了。 于是就有了 IPv6,如 inet6 fe80::f816:3eff:fec7:7975/64。 这个有 128 位, 现在看来是够了。

本来 32 位的 IP 地址就不够, 还被分成了 5 类。

 

16846478-03d240918bf4697d.png

5 类IP 地址.png

网络号 :用于识别主机所在的网络; 主机号 :用于识别该网络中的主机。

  • A类,保留给政府机构
  • B类,分配给中等规模的公司
  • C类,分配给任何需要的人
  • D类,用于组播
  • E类,用于实验,各类可容纳的地址数目不同

对于 A、 B、 C 类主要分两部分, 前面一部分是网络号, 后面一部分是主机号。 A、 B、 C 三类地址所能包含的主机的数量见下图

16846478-5e881b04b3ae3a50.png

A、 B、 C 三类地址所能包含的主机的数量.png

有个尴尬的事情, 就是 C 类地址能包含的最大主机数量实在太少了, 只有 254 个。而B 类地址能包含的最大主机数量又太多了。

无类型域间选路(CIDR)

无类型域间选路, 简称CIDR。 这种方式打破了原来设计的几类地址的做法, 将 32 位的 IP 地址一分二, 前面是网络号后面是主机号。如IP 10.100.122.2/24,这个 IP 地址中有一个斜杠, 斜杠后面有个数字24。 这种地址表示形式, 就是 CIDR。后面24 的意思是, 32 位中, 前 24 位是网络号, 后 8位是主机号。

伴随着 CIDR 存在的,一个是广播地址, 10.100.122.255。 如果发送这个地址, 所有10.100.122 网络里面的机器都可以收到。 另一个是子网掩码, 255.255.255.0。

将子网掩码和 IP 地址进行 AND 计算,得到10.100.122.0,这就是网络号

特点

  • CIDR主要是为了更有效分配和管理IPv4地址,CIDR使IP地址又回到无分类的两级编码。记法:IP地址::={<<网络前缀>,<<主机号>}。CIDR还使用“斜线记法”即在IP地址后面加上“/”然后写网络前缀所占的位数。
  • CIDR把网络前缀都相同的连续IP地址组成一个“CIDR地址块”,即强化路由聚合(构成超网)。

A类的默认子网掩码 255.0.0.0 

B类的默认子网掩码 255.255.0.0 
C类的默认子网掩码 255.255.255.0

公有 IP 地址和私有 IP 地址

16846478-a6666070b5388970.png

私有 IP 地址.png

 

图中右列是私有 IP 地址段,平时我们看到的数据中心里, 办公室、家里或学校的 IP 地址, 一般都是私有 IP 地址段。 因为这些地址允许组织内部的 IT 人员自己管理、 自己分配, 而且可以重复。

 

公有 IP 地址有个组织统一分配, 你需要去买。

表格中的 192.168.0.x 是最常见的私有 IP 地址。家里有 Wi-Fi, 对应就会有一个 IP 地址。 一般家里的上网设备不会超过 256 个, 所以 /24 基本就够了。 有时候我们也能见到 /16 的CIDR, 这两种是最常见的, 也是最容易理解的。因为 /24 很明显可以看出 192.168.0 是网络号, 后面是主机号。整个网络里面的第一个地址 192.168.0.1, 往往就是这个私有网络的出口地址。 家里的电脑连接 Wi-Fi, Wi-Fi 路由器的地址就是 192.168.0.1, 而192.168.0.255 就是广播地址。

一个容易“犯错”的 CIDR

如16.158.165.91/22 这个 CIDR,就不能一眼看出其网络号、主机号等。/22 不是 8 的整数倍,需要先转成二进制进行处理。16.158 的部分不会动, 它占了前 16位。 中间的 165, 变为二进制为​10100101​。 除了前面的 16 位, 还剩 6 位。 所以, 这 8 位中前6 位是网络号, 16.158.<101001>, 而 <01>.91 是机器号。

第一个地址是 16.158.<101001><00>.1,即 16.158.164.1。 子网掩码是 255.255.<111111><00>.0, 即 255.255.252.0。广播地址为 16.158.<101001><11>.255, 即 16.158.167.255。

MAC 地址

16846478-239882edbf6c2827.png

MAC 地址.png

MAC 地址是一个网卡的物理地址, 用十六进制, 6 个 byte 表示。如上图的1C-87-2C-77-99-3A。

既然MAC 地址号称全局唯一, 不会有两个网卡有相同的 MAC 地址, 而且网卡自生产出来, 就带着这个地址。 为什么整个互联网的通信, 不全部用 MAC 地址好了, 只要知道了对方的 MAC 地址, 就可以把信息传过去?一个网络包要从一个地方传到另一个地方, 除了要有确定的地址, 还需要有定位功能。 ⽽有门牌号码属性的 IP 地址, 才是有远程定位功能的。

MAC 地址更像是身份证, 是一个唯一的标识。 它的唯一性设计是为了组网的时候, 不同的网卡放在一个网络里面的时候, 可以不用担心冲突。 从硬件角度, 保证不同的网卡有不同的标识。当然MAC 地址是有一定定位功能的, 只不过范围非常有限,一般在一个子网里面。 例如, 从 192.168.0.2/24 访问192.168.0.3/24 是可以用 MAC 地址的。一旦跨子网, 即从 192.168.0.2/24 到192.168.1.2/24, MAC 地址就不行了, 需要 IP 地址起作用了。

参考资料:

趣谈网络协议(极客时间)链接:


GitHub链接:

知乎个人首页:

简书个人首页:

欢迎大家来一起交流学习

转载地址:https://blog.csdn.net/leacock1991/article/details/101467256 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:[趣谈网络协议学习] 05 交换机与VLAN以及STP 协议
下一篇:[趣谈网络协议学习] 04 从物理层到MAC层以及ARP

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2024年04月23日 22时07分10秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章