一:本章结构:
IP数据包格式
ICMP协议介绍
ARP协议介绍
ARP攻击原理
版本(4) | 首部长度(4) | 优先级服务类型(8) | 总长度(16) |
标识符(16) | 标志(3)段位偏移(13) | ||
TTL(8) | 协议号(8) | 首部校验和(16) | |
源地址 | |||
目标地址 | |||
可选项 | |||
数据 |
版本(Version):该字段包含的是 IP 的版本号,4bit。目前 IP 的版本为 4(即 IPv4)。 该版本形成于 20 世纪 80 年代早期,
现在无论是在局域网还是在广域网中,使用的 都是 IPv4。目前 IPv4 所面临的最大问题是 IP 地址空间不足,
即将使用的 IPv6 是 IP 的下一个版本,但也不能解决 IP 地址缺乏的问题。
首部长度(Header Length):该字段用于表示 IP 数据包头长度,4bit。IP 数据包头最短为 20 字节,但是其长度是可变的,具体长度取决于选项字段的长度。
优先级与服务类型(Priority & Type of Service):该字段用于表示数据包的优先 级和服务类型,8bit。通过在数据包中划分一定的优先级,用于实现 QoS(服务质 量)的要求。
总长度(Total Length):该字段用以指示整个 IP 数据包的长度,16bit。最长为 65 535 字节,包括包头和数据。
标识符(Identification):该字段用于表示 IP 数据包的标识符,16bit。当 IP 对上层数据进行分片时,它将给所有的分片分配一组编号,然后将这些编号放入标
识符字段中,保证分片不会被错误地重组。标识符字段用于标志一个数据包,以便 接收节点可以重组被分片的数据包。
标志(Flags):标志字段,3bit。标志和分片一起被用来传递信息。例如,对当前 的包不能进行分片(当该包从一个以太网发送到另一个以太网时),
或当一个包被 分片后用以指示在一系列的分片中,最后一个分片是否已发出。
段偏移量(Fragment Offset):该字段用于表示段偏移量,13bit。段偏移量中包 含的信息是指在一个分片序列中如何将各分片重新连接起来。
TTL(Time to Live):该字段用于表示 IP 数据包的生命周期,8bit。该字段包含 的信息可以防止一个数据包在网络中无限循环地转发下去。
TTL 值的意义是一个数 据包在被抛弃前在网络中可以经历的最大周转时间。该数据包经过的每一个路由器 都会检查该字段中的值,当 TTL 的值为 0 时,
该数据包将被丢弃。TTL 对应于一个 数据包通过路由器的数目。一个数据包每经过一个路由器,TTL 将减去 1。
协议号(Protocol):协议字段,8bit。该字段用以指示在 IP 数据包中封装的是哪 一个协议,是 TCP 还是 UDP,TCP 的协议号为 6,UDP 的协议号为 17。
首部校验和(Header Checksum):该字段用于表示校验和,16bit。校验和是 16 位的错误检测字段。目的主机和网络中的每个网关都要重新计算报头的校验和,
就如同源机器所做的一样。如果数据没有被改动过,两个计算结果应该是一样 的。
源 IP 地址(Source IP Address):该字段用于表示数据包的源地址,32bit。这是 一个网络地址,指的是发送该数据包的设备的网络地址。
目标 IP 地址(Destination IP Address):该字段用于表示数据包的目的地址,32bit。 这也是一个网络地址,但指的是接收节点的网络地址。
可选项(Options):选项字段根据实际情况可变长,可以和 IP 一起使用的选项有 多个。例如,可以输入创建该数据包的时间等。在可选项之后,就是上层数据。
TCP协议号是6
UDP协议号是17
二:ICMP协议
请求和回应
ping 利用ICMP协议来
ping 192.168.1.1 -a ###显示主机名
ping 192.168.1.1 -t ###一直ping ctrl+c终止ping
ping 192.168.1.1 -l 10000 ###是包的大小(字节)10000字节
ICMP是一个错误帧测与回馈机制
通过IP数据包封装的用来发送错误和控制信息
三:ARP协议
1:局域网中主机的通信:
IP地址与MAC地址
2:什么是ARP协议:
Address resolution protocol 地址解析协议
将一个已知的IP地址解析成MAC地址
四:windows中的ARP命令:
arp -a **查看ARP缓存表
arp -d **清楚ARP缓存表
C:\Users\Tang>netsh interface ipv4 set neighbors 11 192.168.1.1 c0-a5-dd-25-5a-14 **ARP绑定——绑定ip地址和mac地址对应的关系,这样不容易被毒化,相当于防护的意思,11的值是需要查询的,从长角牛中查询MAC地址中看