博客
关于我
ICMP+ARP协议
阅读量:296 次
发布时间:2019-03-03

本文共 1738 字,大约阅读时间需要 5 分钟。

目录

ICMP协议

1.ICMP协议的定义

ICMP是(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。ICMP协议属于网络层,辅助IP协议来使用。

2.ICMP协议的封装

在这里插入图片描述

ICMP报文是使用IP数据报来封装和发送的,携带ICMP报文的IP数据报完全像其他类型数据的数据报那样在网络中被转发,没有额外的可靠性和优先级,ICMP协议数据不包含实际数据主要用来检测主机之间是否能够连通。

3.ICMP的消息类型和编码类型

ICMP常见的编码类型如下

类型 编码 描述
0 0 Echo Reply
3 0 网络不可用
3 1 主机不可达
3 2 协议不可达
3 3 端口不可用
5 0 重定向
8 0 Echo Request

4.ICMP协议中ping相关的命令

ping 后缀 描述
ping 测试与目标IP是否连通
ping -t 长时间发包给目标IP,用于调试故障或进行持续连通性测试,CRTL+C可以中断
ping -l 可以设置发出的ping包大小,ping包最大为65000,用于简单测试通信质量
ping -a 在连接过程中可以查看目标IP名

测试与目标IP是否连通

CRTL+C中断,如果连接出错会出现请求超时的字段
,如果网卡或网络质量不太好可能会丢包
在淘宝网站后出现淘宝的IP地址
只输入ping可以查看所有以ping开头的命令
在这里插入图片描述

ARP协议

1.ARP协议的定义

是将IP地址解析成MAC地址并将IP地址与MAC地址对应缓存进ARP表的地址解析协议。

2.ARP报文格式

在这里插入图片描述

从硬件类型开始到目的IP地址为止构成以太网ARP字段
帧的类型:该数据帧是哪个协议的数据帧(此处是ARP数据帧)
硬件类型:ar. hrd (ARPHRD_ BTHBR)
上层协议类型:ar, _pro (ETHERTYPE _IP)
MAC地址长度:ar. hln (6)
IP地址长度:ar_pln(4)
操作类型:这个信息是一个请求的信息还是回复的信息。

3.ARP协议相关命令

这里只说明Windows系统中ARP的命令

arp 后缀 描述
arp -a 查看ARP缓存表
arp -d 清楚arp缓存

查看arp缓存表

虽然下图显示删除失败,但是与上图对比还是能够看出几个静态IP地址MAC地址表被删除了。
删除arp缓存表

只输入arp可以查看以arp开头的所有命令

在这里插入图片描述

4.在ARP表中绑定静态IPMAC地址

进行静态绑定可以使第一次与该IPMAC地址通信时由原本的广播变为单播,并且一定程度上也可以防止ARP欺诈与ARP攻击。

找到命令提示符并以管理员身份运行

在这里插入图片描述

输入netsh -c i i show in查看网络连接准确名称,如:本地连接、无线网络连接
MTU表示最大传输单元,单个数据包最大数据容量
找到打算进行ARP绑定的网卡的idx编号,以IDX编号19的以太网举例
输入netsh -c “i i” add neighbors 19 "IP” “Mac”
之后在输入arp -a进行查找ARP表太长,只截后面的图了
可以发现ARP表中存有绑定的静态IPMAC地址
我们想解绑时,输入netsh -c “i i” delete neighbors 19, (这里19是IDX号)弹出这个之后,就成功解绑了

5.ARP协议的工作原理

ARP工作原理中最重要的就是ARP表,ARP表类似于MAC地址表,对IP地址和MAC地址进行配对,使第二次以及第二次以后的通信不再需要广播源地址源MAC地址,直接实现A对B的单播通信。

以图中情况举例

在这里插入图片描述

当PC1与PC3第一次通信时,PC1会像局域网内所有PC进行广播,所有PC接受到这个广播后,会在ARP表中记录PC的IP地址与MAC地址,同时,PC3会响应这个广播并回复PC1,PC1在ARP表中记录PC3的IP地址与MAC地址。之后就PC1与PC3可以进行单播通信。

6.ARP攻击原理

告诉所有计算机和网关虚假的目标计算机MAC地址,告诉目标计算机虚假的网关MAC地址,导致目标计算机无法联网。

7.ARP欺骗原理

对网关将自己伪造成目标计算机,对目标计算机将自己伪造成网关,当目标计算机想与网关发送信息时都会经过自己,达到监听监控的效果。

转载地址:http://wqhl.baihongyu.com/

你可能感兴趣的文章
mysql中json_extract的使用方法
查看>>
mysql中json_extract的使用方法
查看>>
mysql中kill掉所有锁表的进程
查看>>
mysql中like % %模糊查询
查看>>
MySql中mvcc学习记录
查看>>
mysql中null和空字符串的区别与问题!
查看>>
MySQL中ON DUPLICATE KEY UPDATE的介绍与使用、批量更新、存在即更新不存在则插入
查看>>
MYSQL中TINYINT的取值范围
查看>>
MySQL中UPDATE语句的神奇技巧,让你操作数据库如虎添翼!
查看>>
Mysql中varchar类型数字排序不对踩坑记录
查看>>
MySQL中一条SQL语句到底是如何执行的呢?
查看>>
MySQL中你必须知道的10件事,1.5万字!
查看>>
MySQL中使用IN()查询到底走不走索引?
查看>>
Mysql中使用存储过程插入decimal和时间数据递增的模拟数据
查看>>
MySql中关于geometry类型的数据_空的时候如何插入处理_需用null_空字符串插入会报错_Cannot get geometry object from dat---MySql工作笔记003
查看>>
mysql中出现Incorrect DECIMAL value: '0' for column '' at row -1错误解决方案
查看>>
mysql中出现Unit mysql.service could not be found 的解决方法
查看>>
mysql中出现update-alternatives: 错误: 候选项路径 /etc/mysql/mysql.cnf 不存在 dpkg: 处理软件包 mysql-server-8.0的解决方法(全)
查看>>
Mysql中各类锁的机制图文详细解析(全)
查看>>
MySQL中地理位置数据扩展geometry的使用心得
查看>>