📅  最后修改于: 2023-12-03 15:24:40.124000             🧑  作者: Mango
在开发中,我们经常需要监控我们的应用程序的 HTTP 流量,这有助于我们及时发现和解决问题。在本文中,我们将介绍如何在终端本地监控应用程序的 HTTP 流量。
tcpdump 是一个基于命令行的网络数据包捕获工具。它可以实时捕获网络数据包并解析它们。下面是使用 tcpdump 监听 HTTP 流量的命令:
sudo tcpdump -i your_network_interface port 80 -w ~/Desktop/http.pcap
这个命令将在指定的接口上监听所有进/出端口为 80 的 HTTP 流量,并将捕获的数据包保存到名为 http.pcap 的文件中。我们可以使用 Wireshark 来查看捕获的数据包。
ngrep 是一个基于命令行的网络流量分析工具,它可以通过正则表达式过滤网络流量。下面是使用 ngrep 监听 HTTP 流量的命令:
sudo ngrep -q -d your_network_interface -W byline -t '^(GET|POST) ' 'tcp port 80'
这个命令将在指定的接口上监听所有进/出端口为 80 的 HTTP 流量,并将过滤出所有以 GET 或 POST 开头的 HTTP 请求和回复。
Wireshark 是一个基于 GUI 的网络数据包分析工具,它可以对网络数据包进行捕获、过滤、分析等操作。下面是使用 Wireshark 监听 HTTP 流量的步骤:
http
在过滤器中,这样 Wireshark 将只显示 HTTP 流量。这三种方法都可以在本地终端进行 HTTP 流量的监控,其中 tcpdump 和 ngrep 的使用一般需要一定的网络知识和经验,而 Wireshark 更加适合初学者。使用合适的方法,可以更好地监控和调试我们的应用程序。