码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • MAC上使用Wireshark常见问题


    文章目录

      • 介绍
      • 正文
        • 启动异常-Permission denied
          • 解决方法
        • 过滤协议和地址
        • 指定源地址和目的地址
        • 调整 time format

    介绍

    简单记录Wireshark在日常使用过程中的遇到的小case。

    正文

    Wireshark相较于tcpdump使用较为简单,交互也更为友好。
    点击Start即可启动抓包在这里插入图片描述

    启动异常-Permission denied

    如果是第一次启动Wireshark,经常会遇到以下提示:

    You do not have permission to capture on device "lo0". ((cannot open BPF device) /dev/bpf0: Permission denied)
    
    • 1

    简单翻译就是用户态的进程没有权限读取数据链路层的数据包;

    关于BPF,一种常见的数据包过滤器,通过过滤接口方便用户态进程从内核中复制想要的数据包。

    解决方法

    通过sudo chmod授权读取权限即可,这里方便演示所以就打开了所有bpf设备的读取权限,其实可以针对性的授予权限。

    sudo chmod o+r /dev/bpf*
    
    • 1

    过滤协议和地址

    就像前文介绍的,说到底就是传入过滤表达式给过滤器(BPF)前往内核复制数据包到用户态,方便查看;
    所以除了常见的查看指定地址、端口以外还需要指定协议(日常查看最多的就是TCP了):

    ip.addr == 127.0.0.1 and tcp.port==61578
    
    • 1

    另外查看端口的方式是点击某一条数据后点击Transmission Control Protocol即可查看协议细节(当然没有IP,原因请看下文);
    在这里插入图片描述

    这里说个题外话,日常工作中(包括我身边)有很多人无意识脱口而出“TCP四元组”,其实这个说法仅存在简体互联网上。我曾经还和人争论过(刚毕业买过TCP/IP上下两册翻过,没见过四元组这个说法,但是同事坚持自己四元组的说法,最后谁也没说服谁),后来查阅TCP协议、文档确实不存在四元组的说法。TCP是传输层协议,前32位(包括16位源端口、16位目的端口)确切的说在传输层并不包含IP的解析,IP是下层协议解析后带上的,和TCP本身没有关系。由这点就可以看出,看资料还是看英文原版比较好。

    指定源地址和目的地址

    很多时候,未必清楚端口(是的,笔者在排查中间件相关问题时,业务方找来时往往业务服务端口和连接服务的端口没人知道,时常被人反驳“我怎么知道,你搞基础架构的你应该更清楚啊”,苦涩的笑容溢于言表),所以这时,最好的选择就是通过本地IP和目的服务IP进行过滤:

    ip.src== 127.0.0.1 and ip.dst== 127.0.0.1
    
    • 1

    调整 time format

    默认时间显示的是耗时,而其实很多时候还仅需要看异常周期内的数据包,所以时间格式需要调整方便 锁定时间窗口;排查时间窗口内的数据包是否存在异常:
    在这里插入图片描述

  • 相关阅读:
    Java程序员:三个月刷完1000道面试真题,没想到老板直接给我升职了
    动态规划求集合的第二大值 java 实现
    好评较高的图片转文字软件哪个好?这款软件十分好用
    内存问题难定位,那是因为你没用ASAN
    Unity3d的海盗王地图
    【预测模型-GRNN预测】基于有限增量进化广义回归神经网络LIEV-GRNN实现数据回归预测附matlab代码
    LeetCode-86. 分隔链表-Java-medium
    pollLast() 和poll啥区别
    【全开源】Java同城预约月嫂服务上门服务本地服务源码APP+小程序+公众号+H 5
    基于PHP的高效协同办公管理系统
  • 原文地址:https://blog.csdn.net/SchopenhauerZhang/article/details/133838760
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号