python-3.x - 读取 pcap 文件并获取具有特定 IP 地址的 dport 号
问题描述
我是 Python 新手。我正在使用 scapy 读取 pcap 文件,我想通过指定特定的 ip 地址来获取 dport 号,我有类似下面的内容
from scapy.all import *
pkts = rdpcap('example.pcap')
for pkt in pkts:
if IP in pkt:
ip_src=pkt[IP].src
ip_dst=pkt[IP].dst
if TCP in pkt:
tcp_sport=pkt[TCP].sport
tcp_dport=pkt[TCP].dport
print " IP src " + str(ip_src) + " TCP sport " + str(tcp_sport)
print " IP dst " + str(ip_dst) + " TCP dport " + str(tcp_dport)
if ( ( pkt[IP].src == "10.116.206.114") or ( pkt[IP].dst == "10.236.138.184") ):
print("!")
.pcap 文件
所需输出
在上面的代码中,我得到了两个结果,如下所示
IP src 10.116.206.114 TCP dport 443
IP dst 10.236.138.184 TCP dport 443
----
IP src 10.236.138.184 TCP dport 12516
IP dst 10.116.206.114 TCP dport 12516
.
.
依此类推,但我只想要特定的 src 和 dst ip,如下所示,我不想要两个 dport 号码。
IP src 10.116.206.114 TCP dport 443
IP dst 10.236.138.184 TCP dport 443
----
IP src 10.116.206.114 TCP dport 22
IP dst 10.236.138.184 TCP dport 22
请提出一种方法并解释如何从特定的 IP 地址获取 dport 号。谢谢!
解决方案
推荐阅读
- hive - 是否可以将配置单元表格式转换为 ORC 并使其分桶
- css - 带粘性标题的角材料表
- reactjs - React update 来自另一个组件的无状态组件
- python - 用选定的列表值填充数据框中的列
- java - FileStats 和某些单词的搜索行出现问题
- azure - Asp.net core 2.2 变量 ASPNETCORE_ENVIRONMENT 在 Azure 上不起作用
- css - 未应用保证金最高值
- algorithm - 模逆计算
- javascript - ramda 源代码中@@functional/placeholder 的含义是什么?
- node.js - Mongoose Slice 不限制数组大小