第四章 网络层
1.网络层提供的服务
- 负责在不同网络之间尽力转发数据包。
- 基于数据包的IP地址转发。
- 不负责丢失重传。
- 不负责发送顺序。
1.数据包在互联网(internet)网络层中的传送
数据包在网络层中传送考虑的问题:
- 源地址到目的地址的路径是否最优。
2.互联网络与虚拟互联网络
2.验证网络层功能
工具:Cisco Packet Tracer
-
子网掩码的作用:限定网络部分
- 10.0.0.0 255.0.0.0–该局域网内的计算机的IP地址必须是10.x.x.x。网络部分为10
- 10.0.0.0 255.255.0.0–该局域网内的计算机的IP地址必须是10.0.x.x。网络部分为10.0
-
相关命令:
- 查看路由表:
- 在路由表中添加IP
- 查看路由表:
3.网络设备与OSI参考模型的关系
计算机通信的过程
1.ARP协议:用于解析目的主机MAC地址。即假设在同一网段下(局域网),源主机发送广播包询问目的主机的MAC地址,但源主机发送的广播包会先到交换机,交换机会向局域网内所有的计算机转发此广播包,目的主机收到广播包后,会将自己的MAC地址回馈给源主机。
2.传输数据前的准备工作:
发送端:
- 应用层:应用程序准备要传输的文件。
- 传输层:将文件分段,并编号。
- 网络层:给每个分段文件添加源IP地址和目的IP地址。
- 数据链路层:
- 使用自己的子网掩码,判断自己在哪个网段。
- 使用自己的子网掩码,判断目标地址在哪个网段。
- 如果是同一个网段,ARP协议广播解析目标IP地址的MAC地址。
- 如果不是同一网段,则根据网关(路由器的IP地址)交给路由器处理。 路由器通过PPP协议实现端到端的广域网连接,进而实现跨网段通信。
- 物理层:将数据帧转换为比特流,通过网线等介质传播。
3.发送数据的过程
- 集线器:信号增强、信号转发。–一级设备(物理层)
- 交换机:信号存储、信号转发。–二级设备(物理层和数据链路层)
- 路由器:信号转发。–三级设备(物理层、数据链路层和网络层)
4.网络层协议
1.ARP协议
1.ARP协议:将IP地址通过广播,目标MAC地址是FF-FF-FF-FF-FF-FF,解析目标IP地址的MAC地址。ARP只能向本局域网内的计算机广播,且只是为了第一次获取目标IP地址的MAC地址而使用ARP广播,第一次获得的MAC地址将储存到计算机的缓存中供后续使用。
-
扫描本网段MAC地址命令
arp -a
-
修改MAC地址命令
arp -s 目标IP地址 新的目标MAC地址
-
ARP欺骗:
M4:源主机; M1:目的主机; M2:黑客主机M4使用ARP广播后,M1回复M4,自己的MAC地址。M4记录下M1的MAC地址。这时,M2回复M4,自己才是目的IP地址的MAC地址。M4则将M1的MAC地址修改为M2的MAC地址。 M2成功成为
中间人
,而M2就可以接收到M4给M1的所有数据包,并可以将源或修改过的数据包转发给M1。-
网络执法官
:基于ARP欺骗,使两台计算机无法通信。–伪造MAC地址。同理,在M2成为
中间人
的时候,只是M2不是将自己的MAC地址回复给M4,而是将一个假的MAC地址,M9,告诉M4。M4在发数据包的时候,交换机查找自己的MAC地址缓存表发现没有M9,则将此数据包丢弃,达到源主机与目的主机无法通信的效果。 -
P2P欺骗
:基于ARP欺骗,限制本网段计算机上网流量。–伪造网关地址。同理,在M2成为
中间人
的时候,告诉源主机自己才是网关IP地址的MAC地址。本网段内所有上网的计算机都会将数据包先发给M2,M2再转发给真正的路由器。这时M2则可以制定规则,规定自己与各个计算机之间的带宽,从而达到限制流量的功能。
2.ARP欺骗的防范措施:
- 使用静态绑定,将下列脚本设为开机启动脚本。
- 使用ARP防火墙。
-
2.网际控制报文协议ICMP
- ICMP允许主机或路由器报告差错情况和提供有关异常情况的报告。
- ICMP不是高层协议,而是IP层的协议。
- ICMP报文作为IP层数据报的数据,加上数据报的首部,组成IP数据报发送出去。
1.ping 命令
ping -?
查看具体ping的子命令ping 10.0.0.7
:ping 一次ping 10.0.0.7 -t
:一直ping
ping 10.0.0.7 -l 200
:指定ping的数据包大小为200字节
ping 8.8.8.8 -i 2
更改数据包TTL时间,能够跟踪数据包途经的路由器。2表示数据包途经的第2个路由器。
-
time:延时时间。
-
TTL:生存周期,
-
Linux系统的每个数据包默认为64个生存周期,即最多可以跳转64个路由器,每跳转1下,就减1。当减为0的时候,则将数据包丢弃,从而防止数据包在网络中循环造成堵塞。
-
通过TTL查看系统:
Linux:64
Windows:128
Unix:255
-
2.pathping:跟踪数据包路径(路径指经过的路由器)、计算丢包情况。
3.Windows上跟踪数据包路径的命令:
tracert 10.0.0.7
4.在路由器上跟踪数据包路径的命令:
traceroute 10.0.0.7
3.Internet组播管理协议IGMP
- IGMP作用:配置在路由器接口上,周期性扫描本网段内哪些计算机绑定了多播地址。只要还有一个计算机绑定,本路由器就会告诉上一个路由器继续发送多播数据包,当局域网内再没有计算机绑定多播地址时,本路由器就会告诉上一个路由器不用再传输多播数据包了。
1.点到点
2.广播(例如控屏软件)
3.组播=多播
- 局域网(例如1台流媒体服务器上拥有语文老师和数学老师的视频)
- 广域网
5.IP数据包结构
1.IP数据包
一个IP数据包由首部和数据两部分组成。
-
首部的前一部分是固定长度,共20字节,是所有IP数据报必须具有的。
-
在首部的固定部分的后面是一些可选字段,其长度是可变的。
-
版本:用来表示TCP/IP协议的版本–v4、v6。
-
首部长度:固定长度+可变长度。
-
区分服务:即数据包传输的优先级,数据包使用Qos来实现通过路由器时区分不同的流量进行排队。
-
总长度:数据包的长度,最大为 216 -1=65535字节。
-
标识:用来标记分片后的数据包,以确保这些数据包能组装成一个完整的数据包。
-
标志:用来标记数据包是已分片的数据包,还是完整的数据包。
-
片偏移:用来标记当前数据包的分片序号。(即当前是第几片。)
-
生存时间:TTL的单位是跳数,指数据包在网络中经过的路由器数量,每经过一个路由器,则TTL-1,最大值为255.
-
协议:确定数据部分使用的协议,具体如下
协议名 ICMP IGMP TCP UDP IPv6 OSPF 协议号 1 2 8 17 41 89
-
首部校验和:只校验数据包的首部,不校验数据部分。若校验出差错,则数据包立即被丢弃。
校验过程:
1.数据分片:
网络层:数据包,最大为65535字节,当数据包数据部分大于1480字节时,数据部分将分片,确保传输给数据链路层时的首部(20字节)+数据部分总大小不超过1500字节。
数据链路层:数据帧,最大为1500字节,最大传输单元MTU
2.使用抓包工具排除网络故障–网速慢
- 原因:
- 路由器到internet的问题
- 内网堵塞的问题
- 处理:使用抓包工具,可以抓到三种数据包(广播包、多播包、给自己的数据包)
2.IP协议
1.路径–路由表:
- 静态路由表:由网络管理员设置的源IP地址到目的IP地址所经过的路由器的路径。
- 动态路由表:源IP地址到目的IP地址所经过的路由器根据RIP协议自动选择的路径。
2.网络畅通的条件:
数据包有去有回!!!
- 网络不通需查询两个点:
- 源主机、目的主机是否配置网关。(不配置网关的计算机无法将数据包发送到其它网段)
- 路径上的路由器的路由表是否配置完好。(各路由器是否有到目的网段的路由表)
3.静态路由
1.路由器配置命令
- 路由器1–广域网口
- 路由器2
2.路由表添加命令:
ip route 192.168.1.0 255.255.255.0 172.16.2.2
ip route 当前路由器ip 当前路由器子网掩码 下一跳路由器ip
3.数据包沿途经过的路由器查看命令:
tracert 192.168.1.2
tracert 目的ip地址
4.静态路由的缺点:
- 只适合于小规模的网络。
- 不能够自动调整路由。
4.动态路由
1.RIP工作特性:周期性(30秒一次)广播路由表。
- Rip协议:最优路径选择协议
2.动态路由的特点:
- 30秒更新一次路由信息。
- 最大跳数,15跳。(即最多能经过15个路由器)
3.路由表添加命令:
5.最优路径选择协议
- Rip协议:根据路由器选择,即选择经过的路由器数量最少的路径。
- Ospf协议:根据带宽选择,即选择路径中路由器总带宽最高、开销最少的路径。
来源:CSDN
作者:蓝焰鱼
链接:https://blog.csdn.net/weixin_43488742/article/details/104063905