wireshark入门笔记
学习 wireshark 前需要先了解 tcpdump,许多情况下我们使用 tcpdump 抓包(更快速、更方便),然后使用 wireshark 进行分析 。可参见 tcpdump实操
环境:Ubuntu 16.04 LTS
安装 wireshark
1 | sudo apt install wireshark-qt |
启动 wireshark
1 | wireshark |
启动后显示如下界面:
发现没有我们想要的网卡。如何知道哪块网卡是我们想要的?打开命令行终端:
1 | ifconfig |
ens33
就是可用网卡(lo
是环回接口,不用管)。
没有显示 ens33
是因为操作权限问题。重新以管理员身份运行 wireshark:
1 | sudo wireshark |
成功显示 ens33
,双击该选项 ,进入 wireshark 抓包页面。
捕获过滤器
捕获过滤和显示过滤器是 wireshark 的两种主要过滤方式,但二者机制完全不同。前者是指示 wireshark 只捕获满足一定要求的报文,而后者则是在已经捕获到的报文中筛选出满足进一步要求的报文。捕获过滤器在打开 wireshark 时设置:
或者打开 wireshark 后,在设置页面操作:
配置捕获规则的语法和 tcpdump 相同,这里不再赘述。
建议:某些时候无需设置太过具体的条件,以免不利于网络错误排查。比如你要求只接收 TCP 报文,但 TCP 连接出错时可能会产生 ICMP 报文来传达错误信息,而这却被你给屏蔽了…
显示过滤器
显示过滤在捕获网络报文后进行:
显示过滤的语法和 tcpdump 完全不同。详细语法参见wireshark manual
名称解析
- 选项 1:将 MAC 地址解析为名称。
- 选项 2:将著名端口号解析为协议名,如,将端口号 80 解析为 http 。
- 选项 3:将 IP 解析为域名。
- 选项 4:如果将 IP 解析为域名,则只利用已经抓到的包来解析,不另外专门进行 DNS 查询。
- 选项 5:如果无法从已抓到的报文解析 IP,则另外进行 DNS 查询。这会影响速度,一般不开。
已经解析的名字可以通过以下方式找到:
另外,你也可以自己命名一些 IP 地址:
自己命名的 IP 也会被加入到上面的 Resolved Address 栏目中。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 极简!
评论