gpt4 book ai didi

Python:如何计算两个IP地址和端口之间接收和发送的数据

转载 作者:行者123 更新时间:2023-12-01 06:00:05 31 4
gpt4 key购买 nike

我猜这是套接字编程。但我从未做过套接字编程,除了在学习 Python 时运行教程示例之外。我需要更多的想法来实现这一点。

我特别需要的是运行一个服务器监控程序,该程序将轮询或监听来自不同 IP 跨不同流行端口交换的流量。例如,如何获取192.168.1.10和192.168.1.1(网关)的80端口接收和发送的数据。

我检查了一些现成的工具,如 MRTG、Bwmon、Ntop 等,但由于我们正在考虑进行一些特定的模式研究,因此我们需要在程序中进行数据捕获。

想法是监控一些流行的端口,研究某些时期的网络流量,并将其与其他一些数据进行比较。

我们希望找到一种方法来使用 Python 完成这一切......

最佳答案

您可能想使用 scapy为了那个原因。只需嗅探特定接口(interface)上的所有以太网流量,丢弃所有非 TCP 且与端口不匹配的内容。

不确定 scapy 是否已经可以跟踪 TCP 连接(比如识别重复的序列号、仅提取有效负载流之类的东西),但我猜它可能可以,如果不能,那么破解一个足够好的 TCP 连接也不是太难适用于 95% 流量的跟踪器。

替代方案是直接使用套接字(查找原始套接字)或 libpcap,这两者都可以通过 Python 完成。您可能还想查看“tcpdump”命令行工具的过滤表达式语法,也许它已经可以实现您想要的功能。

我敢打赌有更专门的高级工具可以用于此目的,但我不知道它们。

PS:如果你还不了解wireshark,请先检查一下并尝试一下。它可以跟踪 TCP 流,并会教您 TCP 连接跟踪的含义。也许它的命令行二进制文件 tshark 可用于提取您想要的 TCP 流。

关于Python:如何计算两个IP地址和端口之间接收和发送的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10871752/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com