网络层:是第三层,也叫ip层(主要考ip计算
网络层提供灵活的,无连接的,尽最大努力交付的数据报服务。主要任务是把分组从通过路由选择与转发从远端传到目的端,为分组交换网上的不同主机提供通信服务。物联网可以由多种异构网络互相组成。
Ip数据报:
首部20字节 数据部分3800字节 需要分片为不超过1420的数据报片
片偏移:1400/8=175(这里除8指的是8个字节)
Ip地址的分类:
路由器对于私有ip地址的数据报一律不进行转发。
Ipv4不够了,使用nat节约ipv4的地址,安装了NAT软件的路由器叫NAT路由器,至少有一个外部全球ip地址。
特殊ip地址:
在ip协议中采用组播的是D类ip地址。
Ip地址:子网掩码与子网划分:
计算题:
首先要有二进制运算的基础:
二进制转换为十进制:11001
每一位的位数作为阶相加(第一位是0),底是2
2^0+2^3+2^4=1+8+16=25
十进制转换为二进制:194
194/2=97……0
97/2=48……1
48/2=24……0
24/2=12……0
12/2=6……0
6/2=3……0
3/2=1……1
1/2=0……1
按倒序连接起来:11000010
1.已知主机 IP 地址和子网掩码,求网络号:
网络号 = IP 地址 AND 子网掩码(按位与,11为1,否则为0,再转回十进制)
例题:
IP: 192.168.10.34
掩码: 255.255.255.0
进行按位与运算:
11000000.10101000.00001010.00100010
11111111.11111111.11111111.00000000=
11000000.10101000.00001010.00000000
转换为十进制:
2^7+2^6=192
2^7+2^5+2^3=168
2^3+2^1=10
2^0=0
结果为192.168.10.0
2.已知主机 IP 和子网掩码,求子网数、每个子网最大主机数
数子网位数 n子网位 = 掩码中从原网络类借来的 1
子网数 = 2ⁿ
主机位数 m
每个子网主机数 = 2ᵐ − 2
例题
IP:192.168.1.10
子网掩码:255.255.255.224
看子网掩码最后一位:224
224=11100000
子网数=3(3个1
主机位=5(5个0
子网数=2^3=8
每个子网最大主机数=2^5-2=30
公式:2^n -2,n是子网掩码0的数量
- 已知网络号,X 位子网号,求子网掩码
方法
子网掩码 = 原网络掩码 + X 个 1
例题
网络号:192.168.0.0(C 类,原掩码 /24) 子网号位数:X = 3
原掩码:11111111.11111111.11111111.00000000
加3位:11111111.11111111.11111111.11100000
最终得到255.255.255.224
4.已知网络号,要分成 X 个子网,求子网掩码和 IP 地址范围
计算方法:
找最小 n,使 2ⁿ ≥ X
新掩码 = 原掩码 + n
步长 = 256 − 掩码最后一段
按步长划分子网
例题:
网络号:192.168.1.0
要求:分成 6 个子网
显然n=3
子网掩码:11111111.11111111.11111111.11100000=255.255.255.224
步长=256-224=32
从最后一位开始划分,最后一个地址是广播地址,需要保留。
192.168.1.0 分为10个子网:
2^n > 10
N=4
子网掩码:11111111.11111111.11111111.11110000=255.255.255.240
步长:256-240=16
192.168.1.0~192.168.1.159
主机数为2^h-2=2^4-2=14
5.已知子网掩码,判断哪些 IP 属于同一子网
方法(最重要)
IP AND 子网掩码 → 网络号
网络号相同 → 同一子网
例题
子网掩码:255.255.255.192
IP1:192.168.1.70
IP2:192.168.1.120
计算步长:256-192=64
子网范围:
70和120都在64-127之间,因此属于统一子网。
总结:
网络号 = IP AND 掩码
子网数 = 2ⁿ
主机数 = 2ᵐ − 2
步长 = 256 − 掩码
同一子网:网络号相同
无分类编址CIDR
出现背景:b类地址很快分配完毕,路由表中的项目急剧增长
目的:节约ipv4的资源
方法:将多个子网聚合成一个较大的子网,叫做构成超网,或路由聚合。
重要协议:IP,ICMP,ARP,RARP,IGMP
ICMP 是什么
ICMP(Internet Control Message Protocol)
属于 网络层协议
用于 差错报告和网络控制
不用于传输用户数据
重要表述(常考):
ICMP 是 IP 的辅助协议,封装在 IP 数据报中传输
ICMP 的作用(必背)
差错报告
主机或路由器发现问题,通知源主机
网络诊断
如 ping、tracert
Icmp的封装位置:
┌──────────────┐
│ ICMP 报文 │
└──────────────┘
↓
┌──────────────┐
│ IP 首部 │
└──────────────┘
结论:
icmp不直接使用链路层
icmp必须封装再ip数据报中
ICMP 差错报告的“不发送规则”(高频考点)
以下情况不发送 ICMP 差错报文:
对 ICMP 差错报文本身
对广播地址或多播地址
对分片中的非首片
对特殊地址(如 127.x.x.x)
ping 的原理
使用 ICMP 回送请求(类型 8)
对方返回 ICMP 回送应答(类型 0)
ping 能检测:
主机是否可达
网络是否连通
往返时延(RTT)
ping 不是应用层协议
arp:数据链路层传输的协议,解决下一跳去哪里的问题,使用广播的形式传输。
检查arp高速缓存,有对应表则写入mac帧,没有则用目的mac地址为ff-ff-ff-ff-ff-ff的帧封装并广播arp请求分组,同一局域网所有主机都能收到这个请求。然后写入arp缓存中
Rarp协议:完成主机或路由器mac地址到ip地址的映射
Igmp:如果周期性发送igmp没有响应,那么认为这个组是不活跃的,就不再发送给其他组播路由器
Ospf:域内路由协议
| 首部(固定部分 | 首部(可变部分 | 数据部分(udp,tcp |
| | 总长度 | 标识 | MF | DF | 片偏移 | | 原始数据报 | 3820 | 12345 | 0 | 0 | 0 | | 数据报1 | 1420 | 12345 | 1 | 0 | 0 | | 数据报2 | 1420 | 12345 | 1 | 0 | 175 | | 数据报3 | 1020 | 12345 | 0 | 0 | 350 |
| A | 1-126 | 01B+主机号 | | B | 128-191 | 102B+主机号 | | C | 192-223 | 1103B+主机号 | | D | 223-239 | 1110多播地址 | | E | 240-255 | 1111保留为今后使用 |
| 地址类别 | 地址范围 | 网段个数 |
| A | 10.0.0.010.255.255.255 | 1 |
| B | 172.16.0.0172.31.255.255 | 16 |
| C | 192.168.0.0~192.168.255.255 | 256 |
| 网络号 | 主机号 | 用途 | 例子 | | 全0 | 全0 | 本网范围表示主机,路由表中表示默认路由 | 0.0.0.0 | | 全1 | 全1 | 本网广播地址(路由器不会转发) | 255.255.255.255 | | 特定值 | 全0 | 网络地址,表示一个网络 | 某B类地址,172.17.0.0 | | 特定值 | 全1 | 直接广播地址,对特定网络上的所有主机进行广播 | 某B类地址,172.17.255.255 | | 127 | 任何数 | 用于本地软件环回测试,被成为环回地址 | 127.0.0.1 |
| 子网 | 网络地址 | 可用主机范围 | 广播地址 | | 1 | 192.168.1.0 | .1 – .30 | .31 | | 2 | 192.168.1.32 | .33 – .62 | .63 | | 3 | 192.168.1.64 | .65 – .94 | .95 | | 4 | 192.168.1.96 | .97 – .126 | .127 | | 5 | 192.168.1.128 | .129 – .158 | .159 | | 6 | 192.168.1.160 | .161 – .190 | .191 |
| 0-63 | | 64-127 | | 128-191 | | 192-255 |