网络层
网络层:负责在不同网络之间尽力转发数据包,基于数据包的IP地址转发,不负责丢失重传,也不负责顺序
一.IP地址分类
A类 0.0.0.0-126.255.255.255 127.0.0.1(回环地址)
B类 128.0.0.0-191.255.255.255
C类 192.0.0.0-223.255.255.255
D类 224.0.0.0-239.255.255.255 (组播)
E类 240.0.0.0-255.255.255.255 (保留)
二.主机数,可用主机数,子网掩码
主机数:2的n次方
可用主机数:2的n次方-2
子网掩码:1对应的是网络位,0对应的是主机位
例如:192.168.1.0
255.255.255.0
11111111. 11111111.11111111.00000000
网络位:24 主机位:8
主机数:2的8次等于256
可用主机数:2的8次减2等于254
三.计算机的通信过程,本网段通信跨网段通信的过程
发送端
- 应用程序准备要传输的文件
- 传输层将文件分段并编号
- 网络层添加目标IP地址源IP地址
- 数据链路层 两种情况
使用自己的子网掩码判断自己在哪个网段
使用自己的子网掩码判断目标地址在哪个网段
如果是同一个网段,arp协议广播解析目标IP地址的MAC
如果不在同一个网段,arp协议广播路由器的MAC地址
四.ARP中间人攻击
实验环境:使用的软件Kali,ENSP,Wireshark
Kali:IP: 192.168.135.1 Server:192.168.135.22
Client:IP:192.168.135.11 网关:192.168.135.22
1.在ENSP上搭建实验环境
2.对客户端和服务器进行配置,使客户端可以登录到服务器上
3.开始抓取G0/0/3的数据包
4.打开kali虚拟机,进行arpspoof攻击
echo 1 > /proc/sys/net/ipv4/ip_forward(打开网卡的流量转发)
arpspoof -i eth0 -t 192.168.135.10 192.168.135.20(开启攻击)
5.使用Client下载一个数据时,查看抓包软件Wireshark
6.发现FTP数据包,此时攻击成功
实验原理
- kail向client发送虚假的ARP回复包,不断告诉client,他的FTP服务器的IP地址是kali自己
- client收到kail发送的ARP回复包,就会更新自己的ARP缓存表,将FTP服务器的IP地址和kali的MAC地址对应起来
- client在向FTP服务器发送数据的时候,本应该把数据传送给FTP
server,但是MAC地址封装的是kali的,所以交换机就会将数据发送给kali - kali开启流量放行(echo 1 > /proc/sys/net/ipv4/ip_forward),kali将数据转发给FTP,形成一种无感知的流量窃取
- kali对截获的流量进行分析破解,实现攻击
五.ICMP协议的命令
Ping命令可以检查网络是否畅通
ping 192.168.135.1
ping www.baidu.com
-t(持续,一直ping)
-l 200(指定数据包的大小)
Pathping(可以查看沿途经历的路由器)
Tracert (跟踪数据包的路径)
Traceroute (在路由器上跟踪数据包路径的命令)
六.IP数据包的结构
网络层 数据包最大65535字节
数据链路层 数据帧1500字节
IP包头首部20字节 数据部分1480字节
标识:id 用来区分分完片的数据包是不是和原来一起的
标志:DF(不分片):分片的数据包,这个位是0
MF(更多分片):来显示是不是最后一片
FO(片偏移):被分片的数据包,在组合的时候,前面有多少数据
生存时间(TTL):指一个数据包在网络中能够被转发的次数
特点:规律,每经过一个路由器,TTL减一,不同的操作系统TTL值代表不同的操作系统
Windows xp/7 64
Linux/Mac 64
Windows 8/10 128
Unix 255
协议号:ICMP 协议号1 IGMP协议2
TCP 6 UDP 17 IPV6 41 OSPF 89
七.常见三种路由
直接路由:路由器接口所连接的子网的路由方式称为直连路由
静态路由:静态路由是由网络规划者根据网络拓扑,使用命令在路由器上配置的路由信息
动态路由:按照特定算法自动计算新的路由信息,适合网络拓扑结构的变化,分为距离矢量(RIP)和链路状态(OSPF)