【音视频第20天】wireshark+tcpdump

这篇具有很好参考价值的文章主要介绍了【音视频第20天】wireshark+tcpdump。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

tcpdump抓 wireshark分析

tcpdump

  1. tcpdump参数详解
    网上一搜一大堆。最全的不是用tcpdump -h而是man tcpdump来查询手册。
    tcpdump -i eth0 -p udp -xx -Xs 0 -w /root/test2.cap
    -i 针对eth0网卡的,ifconfig是查看有几个网卡
    -i eth0 表示使用网络接口 eth0。
    -p udp 表示只捕获 UDP 协议的数据包。
    -xx 表示使用最高位数为 256,用于设置 tcpdump 的选项。
    -Xs 0 表示将前 16 个字节的数据作为 UDP 头部,这有助于快速定位 UDP 数据包。
    -w /root/test2.cap 表示将捕获的数据包保存到 /root/test2.cap 文件中。
    这个命令将捕获从网络接口 eth0 中传输的 UDP 数据包,并将它们保存到 /root/test2.cap 文件中。在保存数据包之前,tcpdump 使用 -Xs 0 选项将前 16 个字节的数据作为 UDP 头部,这有助于快速定位 UDP 数据包。同时,tcpdump 使用 -p udp 选项只捕获 UDP 协议的数据包,这有助于减少捕获的数据包数量。

下面的随便看看吧,用得着再说

tcpdump详细参数
-a 尝试将网络和广播地址转换成名称。
-c<数据包数目> 收到指定的数据包数目后,就停止进行倾倒操作。
-d 把编译过的数据包编码转换成可阅读的格式,并倾倒到标准输出。
-dd 把编译过的数据包编码转换成C语言的格式,并倾倒到标准输出。
-ddd 把编译过的数据包编码转换成十进制数字的格式,并倾倒到标准输出。
-e 在每列倾倒资料上显示连接层级的文件头。
-f 用数字显示网际网络地址。
-F<表达文件> 指定内含表达方式的文件。
-i<网络界面> 使用指定的网络截面送出数据包。
-l 使用标准输出列的缓冲区。
-n 不把主机的网络地址转换成名字。
-N 不列出域名。
-O 不将数据包编码最佳化。
-p 不让网络界面进入混杂模式。
-q 快速输出,仅列出少数的传输协议信息。
-r<数据包文件> 从指定的文件读取数据包数据。
-s<数据包大小> 设置每个数据包的大小。
-S 用绝对而非相对数值列出TCP关联数。
-t 在每列倾倒资料上不显示时间戳记。
-tt 在每列倾倒资料上显示未经格式化的时间戳记。
-T<数据包类型> 强制将表达方式所指定的数据包转译成设置的数据包类型。
-v 详细显示指令执行过程。
-vv 更详细显示指令执行过程。
-x 用十六进制字码列出数据包资料。
-w<数据包文件> 把数据包数据写入指定的文件。

wireshark

1.下载安装wireshark
下载安装教程
1.5 注意要用管理员方式运行
2.从wireshark中导入上面存的test2.cap
【音视频第20天】wireshark+tcpdump
序号,时间戳,源地址,目的地址,协议,包长度
3.右键descode as,存成一个RTP
【音视频第20天】wireshark+tcpdump
4.【音视频第20天】wireshark+tcpdump
怎么分析?
PT=DynamicRTP-Type-96:属于编码方式
SSRC=xxxx,属于不同的流
Seq = xxx,属于不同的包的需要
看一看seq的数量是不是缺少了一个,缺少了有没有接着给下面的人发送一个含有NACK的RTCP,发了之后有没有接着
分析的目的?
主要看你的程序代码和你抓到的包显现出来是不是一样的
如果有一个RTP包丢失了,服务端会给客户端发一个RTCP,会有很多种情况出现。
【音视频第20天】wireshark+tcpdump
举个栗子吧!
【音视频第20天】wireshark+tcpdump
丢了一个包

RTCP
【音视频第20天】wireshark+tcpdump
【音视频第20天】wireshark+tcpdump
我们可以分析如下:

帧号 481:该帧在 Wireshark 中捕获到的帧号为 481。
网络层协议:该帧为 Ethernet II 格式,表明该帧为 IPv4 协议的网络层帧。
源 IP 地址:该帧的源 IP 地址为 172.21.145.154。
目标 IP 地址:该帧的目标 IP 地址为 112.17.79.157。
IP 协议版本:该帧为 IPv4 协议版本 4。
源端口号:该帧的源端口号为 20309。
目标端口号:该帧的目标端口号为 59037。
协议类型:该帧为 User Datagram Protocol(UDP) 协议类型。
RTP 控制协议:该帧中包含 Secure Real-time Transport Control Protocol(RTCP) 协议的控制帧。
NACK:该帧的 RTCP 控制帧中包含一个 NACK(Not All Frames Lost) 消息,表示有一帧数据包丢失。

根据以上分析,我们可以得出以下结论:

该帧为 IPv4 协议的网络层帧,源 IP 地址为 172.21.145.154,目标 IP 地址为 112.17.79.157,源端口号为 20309,目标端口号为 59037,协议类型为 UDP。
该帧中包含 RTCP 协议的控制帧,其中包含一个 NACK 消息,表示有一帧数据包丢失。
NACK 消息的目的是要求发送方重新发送丢失的数据包,以提高数据传输的可靠性。文章来源地址https://www.toymoban.com/news/detail-430547.html

到了这里,关于【音视频第20天】wireshark+tcpdump的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ffplay播放器剖析(6)----音视频同步分析

    视频和音频是不同的线程,并且也不会同时解出同一个pts的音视频帧,因此需要音视频同步; 以音频为基准 视频慢了则丢掉部分视频帧(视觉感受就是掉帧) 视频快了就继续渲染上一帧 以视频为基准 音频慢了则加速播放(或者丢帧,丢帧会断音,体验感特别差) 音频快了就放慢数据点

    2024年02月15日
    浏览(68)
  • ffplay播放器剖析(7)----音视频暂停模块分析

    1.通过SDL触发事件调用toggle_pause 2.toggle_pause调用stream_toggle_pause 3.stream_toggle_pause修改暂停变量 这个函数可以知道,如果当前状态是暂停的话,那么就会进入if函数 看一下if函数流程,首先我们知道我们 is-frame_timer += av_gettime_relative() / 1000000.0 - is-vidclk.last_updated; 这个就是在之前的基

    2024年02月16日
    浏览(50)
  • Android 计时器Chronometer 使用及源码分析(1),android音视频框架

    @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_textview_chronometer);//加载布局文件 initView(); } private void initView() { btn_start = findViewById(R.id.btn_start); btn_stop = findViewById(R.id.btn_stop); btn_reset = findViewById(R.id.btn_reset); chronome

    2024年04月14日
    浏览(48)
  • C++/Qt音视频通话开发MetaRTC源码解读,dtls交互流程,dtls抓包分析

    本章内容解读MetaRTC开源代码,无任何二次开发,用于学习交流。 MetaRTC是国人开发的开源项目,适用各种场景音视频二次开发,可以去git阅读README,我们使用相对成熟的版本测试: Release v5.0-b4。 本章解读dtls交互流程,dtls抓包分析,dlts概念介绍。 DTLS (Datagram Transport Layer Se

    2023年04月09日
    浏览(47)
  • FFmpeg源码分析:avcodec_send_packet()与avcodec_receive_frame()音视频解码

    FFmpeg在libavcodec模块,旧版本提供avcodec_decode_video2()作为视频解码函数,avcodec_decode_audio4()作为音频解码函数。在FFmpeg 3.1版本新增avcodec_send_packet()与avcodec_receive_frame()作为音视频解码函数。后来,在3.4版本把avcodec_decode_video2()和avcodec_decode_audio4()标记为过时API。版本变更描述如下

    2024年02月03日
    浏览(51)
  • FFmpeg源码分析:avcodec_send_frame()和avcodec_receive_packet()音视频编码

    FFmpeg在libavcodec模块,旧版本提供avcodec_encode_video2()作为视频编码函数,avcodec_encode_audio2()作为音频编码函数。在FFmpeg 3.1版本新增avcodec_send_frame()与avcodec_receive_packet()作为音视频编码函数。后来,在3.4版本把avcodec_encode_video2()和avcodec_encode_audio2()标记为过时API。 在上一篇文章介绍

    2023年04月11日
    浏览(36)
  • 音视频学习-音视频基础

    ` ◼ 像素:像素是一个图片的基本单位,pix是英语单词picture的简写,加上英语单词“元素element”,就得到了“pixel”,简称px,所以“像素”有“图像元素”之意。 ◼ 分辨率:是指图像的大小或尺寸。比如1920x1080。 ◼ 位深:是指在记录数字图像的颜色时,计算机实际上是用

    2024年02月12日
    浏览(107)
  • 音视频 FFmpeg音视频处理流程

    推荐一个零声学院项目课,个人觉得老师讲得不错,分享给大家: 零声白金学习卡(含基础架构/高性能存储/golang云原生/音视频/Linux内核) https://xxetb.xet.tech/s/VsFMs

    2024年02月12日
    浏览(64)
  • 音视频学习—音视频理论基础(2)

      音频是一种模拟信号,它是由声波转化而来的电信号。声波是通过气体、液体或固体传播的机械波,代表了声音的震动。在录制过程中,声音被转换成电信号,然后被储存在数字格式中。   声音的三要素是频率、振幅和波形   频率是指声波的振动次数,通常使用赫

    2024年04月29日
    浏览(41)
  • ffmpeg@音视频工具@音视频合并

    FFmpeg中文网 (github.net.cn) FFmpeg 是一款强大的开源跨平台音视频处理工具集,它包含了一系列命令行工具以及用于音频和视频编码解码、格式转换、抓取、流化等功能的库。FFmpeg 支持多种视频、音频格式和编解码器,能够进行音视频的压缩、封装、转码、分割、合并、过滤、抓

    2024年03月17日
    浏览(76)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包