mac安装并使用wireshark

mac安装并使用wireshark

1 介绍

我们在日常开发过程中,遇到了棘手的问题时,免不了查看具体网络请求情况,这个时候就需要用到抓包工具。比较著名的抓包工具就属:wireshark、fildder。我这里主要介绍wireshark。

2 安装

以mac安装为例。

  1. 去官网下载对应的mac版本即可。(注意观察自己的芯片是intel的还是Apple的)
    https://www.wireshark.org/download.html
  2. 下载好之后,直接双击.dmg,然后拖动安装即可。
  3. 安装成功后,来到应用程序,双击wireshark图标即可。
  • 如果发现双击之后wireshark报错:

    表明wireshark没有对应的网卡权限来抓取网卡对应的流量情况。
    执行如下命令,然后重新打开wireshark即可。
bash 复制代码
sudo chmod 777 /dev/bpf*

3 使用

3.1 判断网卡

如果我们的电脑有多张网卡,如何判断自己该监控哪张网卡呢?

  • 方法一:ifconfig查看ip所属的网卡名,然后在wireshark上点击监控即可
  • 方法二:将鼠标移到wireshark页面所展示的网卡名,wireshark会自动显示ip地址,然后选择我们要监控ip所在的网卡即可

3.2 过滤IP(源或目标)

①ip.src eq 192.168.1.145 or ip.dst eq 192.168.1.145

或者ip.addr eq 192.168.1.145

  • 直接使用 ip.addr == 192.168.1.145也行

提示: 在Filter编辑框中,收入过虑规则时,如果语法有误,框会显红色,如正确,会是绿色。

②ip.src == 192.168.1.145

3.3 过滤端口

①tcp.port == 80(不管源或目标)

tcp.port eq 80 // 不管端口是来源的还是目标的都显示

tcp.port == 80

tcp.port eq 2722

tcp.port eq 80 or udp.port eq 80

tcp.dstport == 80 // 只显tcp协议的目标端口80

tcp.srcport == 80 // 只显tcp协议的来源端口80

②tcp.dstport == 80(只显示tcp协议的目标端口为80的)
③udp.port == 1500
④tcp.port >= 1 and tcp.port <= 80

3.4 过滤协议

例子:

tcp

udp

smb

arp

icmp

http

smtp

ftp

dns

msnms

ip

ssl

oicq

bootp

等等

①tcp(筛选tcp协议)
②not arp(排除arp协议)

或者!arp

3.5 过滤MAC

①eth.dst == A0:00:00:04:C5:84 过滤目标mac
②eth.src == A0:00:00:04:C5:84 过滤来源mac

eth.src eq A0:00:00:04:C5:84 // 过滤来源mac

eth.dst == A0:00:00:04:C5:84

eth.dst == A0-00-00-04-C5-84

eth.addr eq A0:00:00:04:C5:84 // 过滤来源MAC和目标MAC都等于A0:00:00:04:C5:84的

less than 小于 < lt

小于等于 le

等于 eq

大于 gt

大于等于 ge

不等 ne

3.6 包长度过滤

①udp.length == 26(udp本身固定长度8+数据包之后为26的)

这个长度是指udp本身固定长度8加上udp下面那块数据包之和

②tcp.len >= 7 指的是ip数据包(不包括tcp本身)
③ip.len == 94 除了以太网固定长度14,其他都算是ip.len

即:从ip本身到最后

④frame.len == 119 整个数据包长度,从eth开始到最后

3.7 http模式过滤

①http.request.method == "GET"

http.request.method == "POST"

②http.request.uri == "/img/demo.png"
③http contains "GET"
④http contains "HTTP/1." (区分大小写)

注意:区分大小写

⑤GET包
http.request.method == "GET" && http contains "Host: "
http.request.method == "GET" && http contains "User-Agent: "
⑥POST包
http.request.method == "POST" && http contains "Host: "

http.request.method == "POST" and http contains "Host: "也可以

http.request.method == "POST" && http contains "User-Agent: "
⑦响应包
http contains "HTTP/1.1 200 OK" && http contains "Content-Type: "
http contains "HTTP/1.0 200 OK" && http contains "Content-Type: "

3.8 TCP参数过滤

①tcp.flags 显示包含TCP标志的封包
②tcp.flags.syn == 0x02 显示包含TCP SYN标志的封包
③tcp.window_size == 0 && tcp.flags.reset != 1

3.9 包内容过滤

①tcp[20:8]表示从20开始,取8个字符
②通过页面操作

4 查看详情

双击即可进入详情查看:

详情中会展示请求体、请求头等,包括请求的响应链接地址

参考文章:

https://blog.csdn.net/wojiaopanpan/article/details/69944970

相关推荐
ICT系统集成阿祥18 小时前
哪些功能是对交换机的性能消耗比较大?
网络·网络协议
-芒果酱-18 小时前
常见的PON网络协议
网络·网络协议
DX_水位流量监测18 小时前
水雨情在线监测系统的技术特性与实践应用
大数据·网络·人工智能·信息可视化·架构
测试秃头怪18 小时前
支付宝性能测试案例分析详解
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·性能测试
小小bugbug18 小时前
close关闭 tcp套接字和 shutdown关闭 tcp套接字的区别
网络·网络协议·tcp/ip
西柚补习生18 小时前
ESP8266远端固定UDP传输
网络·网络协议·udp
云飞云共享云桌面19 小时前
昆山精密机械工厂研发部门10个SolidWorks如何共享一台服务器来进行设计办公
运维·服务器·网络·人工智能·电脑
Bruce_Liuxiaowei19 小时前
工作组环境内部信息搜集:从基础查询到权限分析
网络·经验分享·网络安全
白帽子黑客杰哥19 小时前
在实际渗透测试中,如何系统性地评估一个WAF规则集的有效性?
网络·web安全·kali
林疏safe19 小时前
【无标题】
网络