ARP响应错误的一个问题记录

环境现象:

一个物理机下机,虚拟出很多的虚拟机,A ping B的时候,间接性PING不通。B ping A可以 ping通。

分析:

从现象上看是典型的单通。

很多环境单通,是因为有一端没有路由,而这个完全不是。因为两台机器,是同一个物理机下虚拟出来的,从网段上看是同一个子网,是不是需要路由的。这走的其实是最基本的二三层转发。

1、 查看ARP,发现B上学习到正确的A的MAC。而A上学习到的B的MAC是错误的。这就是单通的最直接的原因。

2、 怀疑网络上地址冲突,咨询管理员,网络上并没有地址冲突。通过重启网桥,又都通PING通了。

3、过了一天,问题又出现了,不能忍了。现在最直接的错误就是A上面学习到的ARP错了。这个错误的MAC从哪儿来的呢。

通过度娘,找到nmap -sP 192.169.1.0/24  这么一条命令。它能给192.169.1.0/24 这个网段内所有地址都学习一遍ARP。在结果里,我搜了一下这个MAC。

果然,出现了两次,其中一次就是B的地址,正是错误的原因。那还有一次,便是虚拟机C。

登录到虚拟机C上去,TCPDUMP一下,果然,收到A的ARP请求,然后做了错误的应答。

找到管理员,这个机器上的确比较特殊,装了macvtap。

感觉这个报文,有点儿像ARP欺骗的问题了。

 

后续,1、熟悉一下nmap 命令。在LINUX的网络里,还是可以用一下的。

2、了解一下macvtap 这是个什么东西,原理是什么。

 

 

假设有如下网络拓扑结构: ``` +-------+ +-------+ | PC1 | | PC2 | +-------+ +-------+ | | +--+--+ +--+--+ | Router | Switch +--+--+ +--+--+ | | +-------+ +-------+ | PC3 | | PC4 | +-------+ +-------+ ``` 假设攻击者控制了 PC1,想要进行 ARP 泛洪攻击。攻击过程如下: 1. 攻击者向 PC2 发送一个 ARP 请求,询问 PC2 的 MAC 地址。 2. PC2 回应 ARP 请求,将自己的 MAC 地址发送给攻击者。 3. 攻击者将 PC2 的 MAC 地址缓存到自己的 ARP 缓存表中,并将该 ARP 响应广播到整个网络中。 4. 所有设备(包括 Router 和 Switch)都会接收到该 ARP 响应,因为攻击者是以广播的方式发送的,所以所有设备都会收到该消息。 5. 每个设备都会将 ARP 响应缓存到自己的 ARP 缓存表中,因为攻击者发送的 ARP 响应是伪造的,所以所有设备的 ARP 缓存表中都会记录着 PC2 的 MAC 地址与错误的 IP 地址的对应关系。 6. 当 PC3 向 PC4 发送数据包时,PC3 会向自己的 ARP 缓存表中查询 PC4 的 MAC 地址,但是由于该表中记录的是错误的 IP 地址对应的 MAC 地址,所以 PC3 无法找到正确的 MAC 地址,只能将数据包广播到整个网络中。 7. 所有设备都会接收到该数据包,但是只有 PC4 会接收并处理该数据包,因为该数据包是发往 PC4 的。 这就是 ARP 泛洪攻击的过程,攻击者通过发送伪造的 ARP 响应,将错误的 IP 地址与 MAC 地址的对应关系保存到所有设备的 ARP 缓存表中,从而实现了对整个网络的攻击。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值