当我应用“ TCP端口http”过滤器时,Wireshark不会捕获任何数据包

问题描述

我正在使用Mac,并试图在加载网站时捕获实时数据包。我通过Wifi上网,能够在不使用那些过滤器的情况下捕获数据包。

但是,当我输入“ tcp port http”时,我会空手而归。

有什么建议可以解决吗?

解决方法

在捕获过滤器表达式中使用端口名称时,libpcap(Wireshark使用的数据包捕获库)需要将名称转换为一个数字,该数字可与捕获的数据包的字节进行匹配。 looking up the port name in /etc/services这样做。 (具体来说,它调用getaddrinfo,通常会在macOS和Linux上的/etc/services中查找端口,而在Windows上则是C:\system32\drivers\etc\services。) ,“ http”对应于端口80。

但是,现代网络实际上不再使用端口80。如今,大多数网络流量都是使用HTTPS和IANA-assigned port for HTTPS is 443加密的。

使用“ tcp端口443”或“ tcp端口443或tcp端口80”来确保同时捕获HTTP和HTTPS可能会更好。

,

据我所知,过滤器必须为tcp.port == 80

但是,如果您的Wireshark没有捕获任何内容(没有过滤器),则可以检查安装和wiki