WebRTC网络基础 九、第七节 网络分析方法 tcpdump 与 wireshark讲解

网络协议分析

之前向大家介绍了很多基本的网络知识,包括NAT穿越原理,NAT类型,STUN的协议头协议体,然后这个TURN协议还有给我介绍的ICE,那么接下来这么多知识之后呢,我们只是一个理论层面的,真实的网络,是不是按照这个协议是一步一步走呢,其实我们并不知道,那么现在呢,我们就通过这个工具来抓取网络包,看一看是不是这个数据包是按照我们之前所讲的协议给一步步来的。

常用工具

Linux服务端用tcpdump

其他端 WireShark

那我们要抓取这个网络包去进行分析那首先要有非常好的工具,那么在整个儿这个做网络分析的这个领域呢实际上两个工具是最为重要的,那第一个是这个tcpdump,那一般tcpdump是在linux下工作同学经常使用的,那这个工具呢可以说是一个最强大的一个网络分析工具了,它可以做各种各样的分析,但是呢,他对这个用户的要求也比较高,就是说你必须对各种网络协议非常的了解,非常的熟悉,那么这个时候呢你用这个工具就特别方便,但是如果你对网络不熟悉的话那你看到满屏的那种二进制的数据,所以就是一脸茫然,这个起点是比较高的,那么另外一个工具呢就是WireShark,那个WireShark基本上在所有的有界面儿的这个操作系统上都是可以安装的什么mac呀windows啊包括linux的这个桌面版都可以安装这个WireShark。

这WireShark的好处就是它的起点会低一些,它有一个界面,您可以看到网络的每一层链路层,ip层,tcp层或者udp层再往上Http层都可以看到,而且它包含了很多的这个上层的协议,都比较全,那大家就看起来呢就会方便一些,所以还有很多同学呢是使用tcpdump在服务器上抓取数据,然后把这些数据拷到这个终端来然后再通过WireShark进行分析,这也是一种常见的一种做法,但真正的这个网络分析的高手肯定是直接用tcpdump通过grape的搜索就可以做各种各样的分析,包括写一些这个shell脚本儿啊,那么我们这堂课呢,最主要的因为是一个入门级的,所以呢主要讲的是WireShark,会将WireShark的一些基本的用法给大家讲通过这些基本用法给大家讲到,通过基本用法的一个组合大家可以组合成各种高级的这个用法。

WireShark这个功能也是非常强大的,但用好了其实也不是特别容易,但要需要经常用,那么下面呢,我们就来一个看一下,对于这些工具怎么用,第一个tcpdump,那么我们可以介绍一个最简单的一个命令,

tcpdump -i eth0 src port 80 -xx -Xs 0 -w test.cap

那这条命令呢,看起来挺长,其实我们分解一下

-i: 指定网卡

src: 指明包的来源

port: 指明端口号

-xx: 指抓到的包以16进制显示

-X: 指以ASCII码显示

-s 0 指明抓整个包

-w:  写到文件中

就比较简单了,但第一个-i eth0,这就是我们网卡的名字,因为我们的这个机子上有可能有多块网卡,但一般情况下呢,有WiFi对吧,有这个物理链路这个网卡,那可能还有其他的这个网卡,那你想对哪块儿网卡进行这个采集数据呢?那你就指定哪块儿就通过哪个呢,就通过-i来指定你的网卡,再下边儿的src就指明包的来源,就是source,您可以指定这个IP,也可以指定这个port,在我们这里呢,是指定的port,原端口是80,是我在发送的时候,它的端口是80,接收的,通过这个另外的这个参数设置就DSP的目的端口是多少,对吧,所以有两个,一个是src一个DSP。这个都是成对出现的,那么端口儿呢就是有可能是原端口,有可能是目的端口,原端口儿又包括了tcp端口和udp的端口,目的端口也分UDP跟TCP,这里并没有对协议做限制,只是说我要查看某个端口的就是如果打开了udp跟tcp两种端口,那就同时去抓取,那-xx就是抓取的包儿在我们的这个控台上十六进制的那个显示,它内容以十六进制,-X是同时还显示ASCII码就人类可读的这种方式显示,但是尤其是我们HTTP的这些请求了,它很多都是ASCII可以识别出来的,当我们用-X的时候,就看的清楚,小写的s就是我们的smap后面如果是0的话,说明你这个整个的抓取的包是无限制的,就是将整个数据包抓去到,你可以给它限制,比如说限制1500字节或者说你限制这个一个头比如说是60字节,或者是看那个头部是什么,-w就是说让他写到文件write,写到文件中所以提出这样一个分析呢,就大家就比较清楚了,实际这句话的意思就是说采集这个eth0这块网卡的这个数据对所有采集的数据呢进行过滤,怎么过滤呢,就是它的原端口号是80的得过滤出来,过滤出来之后显示的是以-xx以十六进制了,并且呢还加上一个ASCII人类可读的这种方式显示,那么这个包的大小是多少呢?完整的包抓取到,那么最终呢将它写到test.cap上,这个就比较简单。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值