Я сетевой новичок, так что это может быть очень простой вопрос:
У меня есть следующий код, который распечатывает итоги сеансов для каждого пакета. Слева от этой сводки выводятся IP-адреса уровня src
и dst
:
from scapy.all import *
a = rdpcap("./traffic.pcap")
sessions = a.sessions()
for k, v in sessions.items():
for packet in v:
print(IP(packet).src, ">", IP(packet).dst, "|", k)
. В результате получается следующий вывод (фрагмент):
8.0.69.72 > 5.220.121.62 | TCP 104.103.245.129:443 > 10.11.0.150:15698
8.0.69.72 > 1.132.121.63 | TCP 104.103.245.129:443 > 10.11.0.150:15698
8.0.69.72 > 0.71.121.64 | TCP 104.103.245.129:443 > 10.11.0.150:15698
8.0.69.72 > 0.40.121.65 | TCP 104.103.245.129:443 > 10.11.0.150:15698
Почему IP-адреса для двух пар совершенно разные? Насколько я понимаю, левая пара - это «Уровень IP», а правая пара - «Уровень сеанса» сетевого стека.