目录
划分子网
1.从两级地址到三级地址
划分子网纯属一个
单位内部的事情
。单位对外仍然表现为没
有划分子网的网络。
从主机号
借用
若干个位作为
子网号
subnet-id,而主机号
host-id 也就相应减少了若干个位。
当没有划分子网时,IP 地址是两级结构。划分子网后 IP 地
址就变成了
三级结构。
IP地址 ::= {<网络号>, <子网号>, <主机号>}
2.子网掩码(考点★)
规则:
子网掩码长度 = 32 位
子网掩码左边部分的一连串 1,对应于网络号和子
网号
子网掩码右边部分的一连串 0,对应于主机号
子网掩码和子网数可以根据子网位数算出来。
位数=2,掩码=11000000,子网数=2^2-2=2
位数=3,掩码=11100000,子网数=2^3-2=6
位数=n,掩码=111..10..0(n个1),子网数=2^n-2(去除全1全0情况)
练习:
一个公司分为40个部门,每个部门约有500人,现有B类地址 130.200.x.x,如果希望进行子网划分,如何实现,掩码是什么?
解:子网数>=40,2^6-2满足,子网数为6,掩码:255.255.11111100.0,即255.255.252.0.
划分子网后的路由器分组转发算法(考点)
1.
从收到的分组的首部提取
目的 IP 地址
D
。
2.
先用各网络的
子网掩码和
D
逐位相“与”
,看是否和相应的网络地
址匹配。若匹配,则将分组直接交付。否则就是间接
交付
,执行(3)。
3.
若路由表中有目的地址为
D
的
特定主机路由
,则将分组传送给指明
的下一跳路由器;否则,执行 (4)。
4.
对路由表中的每一行,将
子网掩码和
D
逐位相“与”
。若结果与该
行的目的网络地址匹配,则将分组传送给该行指明的下一跳路由器;
否则,执行 (5)。
5.
若路由表中有一个
默认路由
,则将分组传送给路由表中所指明的默
认路由器;否则,执行 (6)。
6.
报告转发分组出错。
例题:有点复杂
H1 首先检查主机
128.30.33.138
是否连接在本网络上
如果是,则直接
交付
H2子网掩码和 D 逐位相“与”,看是否和H1的网络地址匹配。发现不匹配。
于是,就把分组送交
路由器
R1,并逐项查找路由表。
路由器 R1 收到分组后就用路由表中项目的
子网掩码和 128.30.33.138 逐比特 AND 操作。
发现第二个匹配,表明子网2是分组寻找的目的网络。
无分类编址CIDR
CIDR 使用“斜线记法”(slash notation),在 IP 地址后
面加上一个斜线“/”,然后写上网络前缀所占的位数(这
个数值对应于三级编址中子网掩码中 1 的个数)
128.14.32.0/20 表示的网络号占用了前20位
该网络共有 2^
12
-2个主机地址
CIDR 地址块(考点)
CIDR 把网络前缀都相同的连续的 IP 地址组成“
CIDR 地址块
”。
128.14.32.0/20 表示的地址块
共有 2^
12
个地址
。
1.
该地址块的最小地址:128.14.32.0
2.
该地址块的最大地址:128.14.47.255
3.
全 0 和全 1 的主机号地址一般不使用。
路由聚合 (route aggregation)
一个 CIDR 地址块可以表示很多地址,这种地址的聚合常称
为
路由聚合
,它使得路由表中的一个项目可以表示很多个原
来传统分类地址的路由。
最长前缀匹配
使用 CIDR 时,路由表中的每个项目由“网络前缀”和“下 一跳地址”组成。在查找路由表时可能会得到不止一个匹配结果.应当从匹配结果中选择具有最长网络前缀的路由:最长前缀匹配 (longest-prefix matching)。
练习:
一个公司,有4个部门,分别有A(120人)、B(62人) 、 C(30人) 、D(14人),给你一个202.119.64.0/24,请问如何给这4个部门分配网络号?
解:c类地址,32-24=8,共有2^8-2个主机位
120=2^7-2,分配202.119.64.128/25
62=2^6-2,分配202.119.64.192/26
30=2^5-2,分配202.119.64.224/27
14=2^4-2,分配202.119.64.240/28