笔记内容来自韩立刚老师的视频
4.1网络层提供的两种服务
在计算机通信中,可靠交付应当由谁来负责?是网络系统还是端系统?
答端系统
两种服务:网路层应该向运输层提供怎样的服务?
- 虚电路服务
- 数据报服务
4.1.1虚电路服务
4.1.2数据报服务
4.1.3两者对比
现在互联网用的是数据报服务
4.2网际协议 IP
4.2.1虚拟互联网
补充:
1.转发器 可以理解为集线器hub
2.数据链路层中继系统:网桥或桥接器(交换机)
3.现在大家都认为网关就是路由器的接口
4.2.2IP地址
IP层次结构
层次化IP地址将32位的IP地址分为网络ID和主机ID
网络地址:(也称为网络号)唯一指定了每个网络.同一网络中的每台计算机都共享相同的网络地址,并用他作为自己IP地址的一部分.
特殊的几个地址
- 127.0.0.1 本地址环回地址
- 169.254.0.0
保留的私网地址: - 10.0.0.0
- 172.16.0.0–172.31.0.0
- 192.168.0.0–192.168.255.0
子网掩码作用:会告诉你哪些是网络部分,哪些是主机部分
4.3划分子网和构造超网
4.3.1子网划分
注意:主机部分不能全为0 或全为1
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201208133648263.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5na
A子网能用的地址1-62 B子网能用的地址65–126
如果IP地址写成的是192.168.201.167/29其中29代表子网掩码的二进制位数
4.3.2超网
把子网进行合并
4.3.3IP地址与MAC硬件地址
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201208185818357.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L21vZ2JveA==,size_16,color_FFFFFF,t_70#pic_center
路由器就是网络设备
源M1 M2写的就是MAC地址,数据包加上MAC地址就是数据帧
基于MAC地址控制代理服务器只能控制本网段计算机,控制不了其他网段的.
4.3.3.1ARP & RARP(逆向ARP)
我们计算机知道MAC地址,请求IP地址的过程就是逆向ARP的过程
ARP欺骗
ARP欺骗 P2P终结者 网络执法官都是用这个ARP的缺点
通过ARP防火墙可以防止,直接再第一次收到返回的MAC地址时候就把写死,不更改
ARP运作机制:(来自百度百科)
ARP欺骗的运作原理是由攻击者发送假的ARP数据包到网上,尤其是送到网关上。其目的是要让送至特定的IP地址的流量被错误送到攻击者所取代的地方。因此攻击者可将这些流量另行转送到真正的网关(被动式数据包嗅探,passive sniffing)或是篡改后再转送(中间人攻击,man-in-the-middle attack)。攻击者亦可将ARP数据包导到不存在的MAC地址以达到阻断服务攻击的效果,例如netcut软件。
例如某一的IP地址是192.168.0.254,其MAC地址为00-11-22-33-44-55,网络上的计算机内ARP表会有这一笔ARP记录。攻击者发动攻击时,会大量发出已将192.168.0.254的MAC地址篡改为00-55-44-33-22-11的ARP数据包。那么网络上的计算机若将此伪造的ARP写入自身的ARP表后,计算机若要透过网上网关连到其他计算机时,数据包将被导到00-55-44-33-22-11这个MAC地址,因此攻击者可从此MAC地址截收到数据包,可篡改后再送回真正的网关,或是什么也不做,让网上无法连线
如何判定ARP欺骗
cmd中输入ipconfig找到默认网关,然后ping这个默认网关,可以知道通不通.通过arp -a可以查询MAC地址
然后你去ping这个地址的时候你ping不通了,你被arp欺骗了.我有点想试试是否window10系统下arp改过后怎么能改回来.等回去把家的废电脑做实验
4.3.4IP数据包(报)格式
**版本:**可判断使用的是IPV4还是6
**总长度:**首部加上数据部分的字节长度
**标识:**他是一个计数器,用来产生数据报的标识,不是序号,每产生一个数据包,就增加1.
**标志:**告诉数据包是不是分片的
**MTU:**最大传输单元
片偏移量:
生存时间:
根据TTL(Time To live)判断对方是什么操作系统(对方可以改,但是一般没人去改)
- Liunx 64
- Windows 2000/NT 128
- unix 256
tracert 加上地址 命令可以查看路径 因为每过一个路由器TTL会减去1,所以剩余的TTL加路径走过的路由器数量就可以推断出来他的机器是什么系统
例如:我ping www.baidu.com得到他经过的路由有14个,刚好加上ping时候得到的52=64推断出来是unix
**协议:**指的是上层协议是什么,是个数字,可以百度查TCP/IP协议号
首部校验和:就是检查首部有没有错误
**源地址目的地址:**就是IP地址了
4.3.5IP转发分组的流程
数据路由:路由器在不同网段转发数据包
网络畅通的条件: 能去能回
沿途的路由器必须知道目标网络下一跳给哪个接口
沿途的路由器必须知道源网络下一跳给哪个接口
windows 网关就是默认路由 在cmd中输入route print查看
命令ipconfig /all>d:\ipconfig.txt 可以把信息保存到D盘中
4.3.6网络负载均衡
就是有多条路径时候,你可以让一条路径传包,另一条路径送包
4.4网际控制报文协议ICMP
4.4.1ICMP简介
网络拥塞:延迟大
ping能检查出两者间通不通
pathping www.baidu.com 能判断出两者间通不通,且可看两者间的路由
有些路由器设置不可ping他那个地址.但是可以沿着他ping其他地方.
4.4.2动态路由协议
RIP 最早 周期性广播 30s 他最佳路径是通过跳数(但选出的不一定是最佳路径,因为路由间带宽不知道,有的跳数多但是传输速度快)最大跳数16跳
动态路由可以自动学习,网络变化后动态路由可以去改变
4.4.3OSPF协议
通过OSPF协议去找最佳路径,路由器之间有个断了,他可以找另一条能够通的路去代替,如果一条近路修好了,他会过一段时间找到这条路径,然后开始走这条近道.有个时间的过程.
OSPF 动态路由协议 开放式
度量值 带宽 支持多区域 触发式更新
三个表
- 邻居表 发送hello包确认对方是否在
- 链路状态表
- 计算路由表
4.4.4外部网关协议BGP
4.5虚拟专用网VPN和网络地址转换NAT
好比你在家想访问学校的私网地址,你可以通过VPN拨号访问,相当于把你想访问的私网地址先当做数据,到达
学校的一个公网服务器后,然后该服务器去掉公网地址中的地址然后进行对学校内网服务器的访问.
4.5.1网络地址转化过程
netstat -n可以查看源端口和目标端口
公网服务器会把私网的源端口进行替换,否则可能私网中端口会重
windows系统也可以进行地址转换
NAT的端口映射
4.5.2IGMP协议
组播=广播
回顾:
VPN技术能解决什么问题?
对私网访问,对外网的访问
NAT技术允许我们一堆地址用一个公网地址,这个技术让VPI4坚持了很长时间