一 wireshark抓包命令

wireshark抓包的命令相对于tcpdump感觉还是比较简单的,毕竟界面更容易操作。同上一篇类似,主要还是讲平时在windows开发时用得比较多的抓包命令,不会特别难,难是难在要抓到精确的包和正确的过滤。

1 wireshark的主要过滤方式

wireshark的主要过滤方式和上一篇tcpdump的主要过滤方式实际上无差别,都是按一定的方式进行过滤。

wireshark 过滤 TSval Wireshark 过滤 写命令_wireshark

2 HTTP模式过滤

这里讲一下关于HTTP模式过滤的方式,当然其它协议的过滤方法大体相同,反正我用到什么的时候就总结什么,大家主要按照例子归纳即可,毕竟抓包语句千变万化。
注意,下面的过滤的意思是将符合该信息的内容显示出来,即将过滤换成查看更方便理解。看部分例子即可。



//过滤经过指定域名的http数据包,这里的host值不一定是请求中的域名,也有可能是响应
http.host == magentonotes.com
http.host contains magentonotes.com



//过滤http响应状态码为200的数据包
http.response.code == 200

wireshark 过滤 TSval Wireshark 过滤 写命令_wireshark_02



//过滤所有的http响应包
http.response==1

由于200和响应一样的意思,所以过滤的结果一样。

wireshark 过滤 TSval Wireshark 过滤 写命令_wireshark_03



//过滤所有的http请求,使用http.request结果一样
http.request == 1

下面结果多了一些SSDP协议,我们不需要理会,只需要看深色的HTTP请求即可。

wireshark 过滤 TSval Wireshark 过滤 写命令_http_04



//wireshark过滤所有请求方式为POST的http请求包,注意POST为大写
http.request.method == POST

wireshark 过滤 TSval Wireshark 过滤 写命令_HTTP_05



//过滤含有指定cookie的http数据包
http.cookie contains guid



//过滤请求的uri,取值是域名后的部分。例如http://szextshort.weixin.qq.com/mmtls/00003353,去掉域名后为:/mmtls/00003353。
http.request.uri==”/mmtls/00003353”

wireshark 过滤 TSval Wireshark 过滤 写命令_wireshark_06



//过滤含域名的整个url则需要使用http.request.full_uri,例如上面的例子
http.request.full_uri == "http.request.full_uri == "http://szextshort.weixin.qq.com/mmtls/00003353""

wireshark 过滤 TSval Wireshark 过滤 写命令_wireshark_07



//过滤http头中server字段含有nginx字符的数据包
http.server contains "nginx"



//过滤content_type是text/html的http响应、post包,即根据文件类型过滤http数据包
http.content_type == "text/html"



//过滤content_encoding是gzip的http包
http.content_encoding == "gzip"



//根据transfer_encoding过滤
http.transfer_encoding == "chunked"



//根据content_length的数值过滤
http.content_length == 279
http.content_length_header == "279"



//过滤所有含有http头中含有server字段的数据包
http.server

wireshark 过滤 TSval Wireshark 过滤 写命令_http_08



//过滤HTTP/1.1版本的http包,包括请求和响应
http.request.version == "HTTP/1.1"

同上面,我们不需要理会SSDP的包,只需要看深色的HTTP包即可。

wireshark 过滤 TSval Wireshark 过滤 写命令_http_09



//过滤http响应中的phrase
http.response.phrase == "OK"

wireshark 过滤 TSval Wireshark 过滤 写命令_HTTP_10


17.

//抓两个主机的http包
ip.addr == 10.212.143.11 and tcp.port == 38080 and http

3 wireshark抓sip国标的包

关于Linux或者Windows抓国标的包,上一篇tcpdump已经讲得很清楚了,这里不再讲述。