当前位置:首页 > 综合

局域网抓包软件

Wireshark 打开的局域件那一瞬间,网卡像被撕开了一道口子。网抓所有经过这台机器的包软数据包,不管目的局域件地是不是它,全被扒光了摆在列表里。网抓源 IP、包软目标 IP、局域件协议类型、网抓长度、包软时间戳——密密麻麻,局域件滚动得飞快。网抓我第一次在宿舍里用它抓到室友的包软 QQ 登录包时,还真有点恍惚:原来我们天天喊的局域件“网络”,底下就是网抓这么一串串赤裸裸的十六进制。

局域网抓包,包软说白了就是把网卡调到“混杂模式”。正常状态下,网卡只收发给自己的帧,别的直接扔掉。混杂模式一开,来者不拒。这招在集线器时代特别管用,因为集线器本来就是广播式转发,所有端口共享同一根总线。后来交换机普及了,每个端口独立转发,抓包就没那么容易了——你只能看到广播包、组播包,以及和你自己通信的单播包。想抓别人的?得做端口镜像,或者 ARP 欺骗。前者要交换机权限,后者要一点“不太规矩”的手段。

我见过一个典型的场景。公司内网有人抱怨网速慢,IT 部门在核心交换机上配了镜像口,把财务部那台交换机的流量全复制过来。Wireshark 一开,过滤条件敲 ip.addr == 192.168.1.88,结果满屏都是 ARP 请求。那台机器在疯狂广播“谁是 192.168.1.1”,每秒几十次。典型的 ARP 风暴,可能是网卡驱动出了问题,也可能是有人跑了什么扫描工具。把机器一关,网络立刻恢复正常。抓包在这里不是“黑客手段”,就是个体检仪。

工具方面,Wireshark 是绕不开的。图形界面,协议解析极其全,从以太网帧头到 TLS 握手证书,一层层给你拆开。但它在高流量下会丢包,而且那个界面看久了眼睛疼。所以老手更爱 tcpdump。命令行,轻量,跑在服务器上抓完存成 pcap 文件,再拖回本地用 Wireshark 分析。我自己的习惯是:tcpdump 负责抓,Wireshark 负责看。分工明确。

抓包能看什么?举几个具体的。HTTP 明文请求,URL、Cookie、表单内容全在,所以现在都上 HTTPS 了。DNS 查询,你访问了哪些域名,一清二楚。TCP 三次握手有没有重传、有没有零窗口,网络卡不卡,看这个比 ping 准。还有 ARP 欺骗——如果同一个 MAC 地址反复声称自己是网关,那基本就是有人在中间人攻击。这些不是理论,是抓包时真会撞见的东西。

但抓包也有边界。法律上,未经授权抓取他人通信内容,在很多地方是违法的。技术上,交换网络里你抓不到别人的单播流量,除非动手脚。所以别把抓包想得太神。它更像一把螺丝刀,修自己家的东西没问题,撬别人家的锁就是另一回事了。

我自己的抓包习惯是:先定过滤条件,再开始抓。不然几个 G 的 pcap 文件,打开就卡死。常用的过滤表达式就那么几个:tcp.port == 80、ip.addr == 10.0.0.5、http.request.method == "GET"。抓完先看“专家信息”,Wireshark 会把重传、乱序、重复 ACK 标出来。多数网络故障,看这一页就够了。

说到底,局域网抓包不是玄学。它就是把网络通信还原成最原始的数据单元,让你看清楚每一个字节从哪来、到哪去、中间有没有被改过。会用的人,修网络快;不会用的人,只能重启路由器碰运气。

分享到: