记一次排查局网内的ARP包 “不存在的” MAC 地址及 “不存在的”IP 所发的ARP包
xu言:
最近生了一场病,虽然不是给自己找理由不写。不过果不其然还是没有坚持每天发一篇啊。不过,有时间我还是会把一些有意思的事情记录下来。以作备忘吧。这人老了记性就不好了。哈哈哈,当然,也侧面说明了。做一件小事,坚持很重要。当然,比坚持更重要的是思路和方法。
昨日,无意在公司开了一下Xarp工具(高级ARP欺骗检测工具)。 = 。=之前做实验发现的一个工具,自己感觉用起来还不错。突然发现了大量频繁的某mac地址和某ip在发送ARP包:



对应提示的IP地址是192.168.137.135 (ip地址和mac均载局网内找不到) 从ip地址结构来看,类似安装了虚拟机分配的一个临时ip地址
奇怪的事,内网我在核心华为交换机上 dis arp all | incl <mac节略部分> 仅查到一个相仿的2个mac地址
90-b1-1c-26-00-e1 (dell服务器em1网卡)
90-b1-1c-26-00-e2 (dell服务器em2网卡)
所以,排查思路首先定位到相仿的一台Dell服务器上面:从网卡命名规律来看,应该是这台dell服务器的第三张网卡.
然而...这服务器仅仅只有2张物理网卡!!!
这就“灵异”了。。。
本着打破砂锅问到底的精神,尝试设置了一个和192.168.137.x同段的ip地址去ping,还真能ping通。。然后使用nmap去查也并未有收获。
突然,思路就想把这台相仿的服务器网卡拔掉看看。
果然,拔掉em1的物理网卡的时候。192.168.137.135出现的丢包。证明物理接口给这个诡异的ip和mac提供底层。
然后,这个服务器上安装的是一个centos6.9的系统,寻找到权限后继续排查。从网卡配置文件上看到了这个“灵异”MAC

为了确认这个MAC地址是否为初始的mac还查看了cat /etc/udev/rules.d/70-persistent-net.rules 这个配置文件
发现应该是人为做“桥接”模式的时候修改的这个mac地址。

MAC修改回来后,把服务器做了一次关机。然后重新开启,局网内没有再见到发送ARP包。
后续研究:
后来对本次的局网的ARP报进行了下查询
Gratuitous ARP也称为免费ARP。无故ARP。Gratuitous ARP不同于一般的ARP请求,它并不是期待得到IP相应的MAC地址,而是当主机启动的时候,将发送一个Gratuitous arp请求,即请求自己的IP地址的MAC地址。
也就是说,正常情况下为了检测ip地址冲突,在主机启动的时候会发送一个这个包。像我发现的这种大量的包,应该就是出现了异常。
Sum:
1.回顾了下Tcpdump 和 wireshare的使用
2.排查思路上,针对发现局网内出现的这种“灵异”mac地址。也始终要相信“电脑不会撒谎”,问题事在人为!
3.对于异常的网络数据包,一定要追究其真相。整个过程也是学习思考的一个很重要的过程。
参考资料:
https://www.cnblogs.com/gavanwanggw/p/6721384.html
https://www.cnblogs.com/f-ck-need-u/p/7064286.html
记一次排查局网内的ARP包 “不存在的” MAC 地址及 “不存在的”IP 所发的ARP包的更多相关文章
- content内网,会显示内容,没有内容可地址存在就是这个情况
漏洞地址:http://note.youdao.com/memory/?url=http://www.wooyun.org(如需登录,请注册登录) 正文预览的地方会读取URL地址的<meta n ...
- PHP中获取内网用户MAC地址(WINDOWS/linux)的实现代码
做一个内网根据MAC地址自动登录的应用,在WINDOW 2003可以正常使用,函数如下 复制代码 代码如下: function ce_getmac() { if(PHP_OS == 'WINNT' ...
- 查找网内活跃IP和自动传输文本
ifconfig p32p1|egrep -o "broadcast [^ ]*" |grep -o "[0-9.]*"grep -o "broadc ...
- 如何优雅排查现网服务器cpu飙高的问题
1.排查现网服务器cpu飙高问题的思路 1.查看java进程id ps -ef|grep java 2.使用top -Hp 进程id 查看cpu比较高的线程 3.执行jstack 进程id > ...
- 通过js获取计算机内网ip,计算机名,mac地址
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xht ...
- 怎么查询局域网内全部电脑IP和mac地址等信息?
在局域网内查询在线主机的IP一般比较简单,但局域网内全部电脑的IP怎么才能够查到呢?查询到IP后我还要知道对方的一些详细信息(如MAC地址.电脑名称等)该怎么查询呢??? 工具/原料 Windows ...
- 怎么查询局域网内全部电脑IP和mac地址..
在局域网内查询在线主机的IP一般比较简单,但局域网内全部电脑的IP怎么才能够查到呢?查询到IP后我还要知道对方的一些详细信息(如MAC地址.电脑名称等)该怎么查询呢??? 工具/原料 Windows ...
- Android 获得本地IP地址、外网IP地址、本设备网络状态信息、本地Mac地址
本地内网IP和外网IP的区别: 根据我的经验一台电脑需要两个ip才可以上网,一个是本地的内网ip 一个是外网的ip 本地的ip 一般是192.168.1.2这种样子 只要在不同的路由器上可以重复 外 ...
- 使用ARP获取局域网内设备IP和MAC地址
根据Arp列表数据,查询本地设备在线状态 使用 arp -a 获得所有内网地址,首先看Mod对象 public struct MacIpPair { public string HostName; p ...
随机推荐
- NOIP 车站分级 (luogu 1983 & codevs 3294 & vijos 1851) - 拓扑排序 - bitset
描述 一条单向的铁路线上,依次有编号为 1, 2, ..., n 的 n 个火车站.每个火车站都有一个级别,最低为 1 级.现有若干趟车次在这条线路上行驶,每一趟都满足如下要求:如果这趟车次停靠了火车 ...
- 如何在servlet中获取spring创建的bean
package com.yxf.controller; import java.io.IOException; import javax.servlet.ServletException; impor ...
- Kettle 连接 Oracle 问题总结
一. Driver class 'oracle.jdbc.driver.OracleDriver' could not be found, make sure the 'Oracle' driver ...
- input事件手机端可能会影响手写
<input type="text" oninput="this.value=this.value.trim()"> 这样会导致手写出现问题,一个字 ...
- Twitter REST API, Streaming API
原文链接 用Twitter自己的话来说: REST API The REST API provides simple interfaces for most Twitter f ...
- BMv2 simple_switch 运行时切换P4程序
参考: [P4-dev] swapping p4 program using load_new_config and swap_configs commands BMv2 运行时切换P4程序 相关演示 ...
- 51nod 1275 连续字段的差异(单调队列)
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1275 题意: 思路: 固定某个端点,然后去寻找满足能满足要求的最大区间, ...
- Unicode转字符串
/// <summary> /// Unicode转字符串 /// </summary> /// <returns>The to string.</retur ...
- 前端如何应对笔试算法题?(用node编程)
用nodeJs写算法题 咱们前端使用算法的地方不多,但是为了校招笔试,不得不针对算法题去练习呀! 好不容易下定决心 攻克算法题.发现js并不能像c语言一样自建输入输出流.只能回去学习c语言了吗?其实不 ...
- java常用技术名词解析
1.1 token Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便 将此Token返回给客户端,以后客户端只需带上这个Token前来请求数 ...