linux/windows常用抓包分析操作

Windows 下抓包分析:

使用抓包工具Wireshark抓包,打开wireshark,选择抓包的网卡,输入过滤条件,

常用过滤条件:

1、过滤IP, 例如:ip.addr == 192.168.21.45

2、过滤端口, 例如:tcp.port == 5060 || udp.port == 5060

3、根据消息协议过滤, 例如:sip,sip.Call-ID == "MTI2Y2YyMD", rtp, rtp.ssrc == 12345, http等

注:! && || 非且或3个符号linux/win通用,不喜欢写 not and or

抓本机发给本机的包:

本机发送到本机的数据包不会经过网卡,无法抓到包,需要设置路由,如下:
route add  “本机ip“  mask 255.255.255.255 “网关ip”
如:route add 92.168.136.200 mask 255.255.255.255 192.168.128.1
使用完毕后用route delete 192.168.136.200 mask 255.255.255.255 192.168.128.1删除,否则所有本机报文都经过网卡出去走一圈回来很耗性能

linux 下抓包分析:

需要安装tcpdump, 可以直接yum或apt-get install tcpdump 安装,不能连网的话下载rpm包安装,需要下载libpcap和tcpdump的rpm包,rpm -Uvh +rpm包安装即可,

libpcap rpm包官方下载地址:http://www.rpmfind.net/linux/rpm2html/search.php?query=libpcap&submit=Search+...&system=&arch=

tcpdump rpm包官方下载地址:http://www.rpmfind.net/linux/rpm2html/search.php?query=tcpdump

这两地址就是在http://www.rpmfind.net/上搜一下libpcap和tcpdump就出来了,搬到csdn上赚c币骗小白不厚道。收藏好http://www.rpmfind.net/,好东西。

常用抓包命令:

1、-i 指定网卡如eth0, ip addr 看下,如果安装了k8s虚拟网卡太多,可以 ip addr|grep 192.168 快速找到,可以不指定,设为any 即可。

2、host 指定ip, port 指定端口,可以加tcp或udp限定协议,-vn 打印, -w 输出到文件,再拷贝到win上用wireshark打开。

简单的看下信令,直接打印即可:

tcpdump -i any udp port 5060 -vn (打印5060端口抓到的包)

通常需要将抓到的包写到文件,下载到windows上使用Wireshark分析:

命令:tcpdump -i any udp port 5060 -vn -w sip.pcap

功能:抓发往5060端口的任意网卡的udp包,打印数量并写入 sip.pcap文件中,抓包文件在windows上是.pcap文件

命令:tcpdump -i any host 192.168.12.34 -vn -w sip.pcap

功能:抓关于192.168.12.34这个ip的所有数据包(包括发送和接收),写入sip.pcap文件。

加了-vn会提示抓到多少个包,ctrl +c 结束后拷贝sip.pcap 用wireshark打开分析。

wireshark分析抓包技巧:

1、分析sip会话流程(如invite流程)可过滤call-id, 见上面win过滤。

2、分析rtp流:如果没有显示数据为rtp包,可选中一个包,右键流跟踪一下过滤掉其它包,再右键选择“解码为”(倒数第二个选项),“当前“ 选择RTP(快速输入RTP会跳转过去)

点OK解码成rtp包后,选择 电话-->RTP-->流分析

确认后就可分析出流的丢包、乱序等问题

左边写了,丢包28个占2.25%,乱序1个,将流保存下来,把后缀名强行改为.ps 或.h264或.h265,即可播放,h264可以用eseye_u分析,

若ps 流打包有问题,可以看另一篇“最简单的h264/h265/svac和g711封装成ps流”具体分析,常见的问题是h265打包成了264。

保存时一定要选择为raw原始数据,保存后再改后缀。

附:国标接入或级联某些小厂家时可能会出现视频下半截放不出来,这种现象90%是发送方pes包没处理好,pes包最大65535(u_short)

如果是下半截严重花屏,多半是发送方没有做流量峰值控制,接收方扩大缓冲区可以解决,但容易丢包。简单的峰值控制定时循环时设置最大发送rtp包数即可。

海康h265的ps流中有0x00 0x00 0x01 0xbd字段,不知道啥用,注意解ps流时去掉它附带的数据就行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值