En Scapy, quiero manualmente coinciden los paquetes con sus correspondientes mensajes ICMP excedidos en el tiempo.Scapy: ¿cómo obtengo el encabezado completo del paquete IP?
necesito para que coincida con:
- IP-en-ICMP campo del paquete ICMP
cabecera IP y los primeros 8 bytes de mi paquete de datos El paquete ICMP no es un problema:
icmpPayload = str (icmpPacket [ICMP] .payload)
en cuanto a los primeros 8 bytes del paquete de datos, I ju st tiene que hacer:
str(myPacket[IP].payload)[:8]
No sé cómo conseguir solamente la cabecera IP de myPacket
. Todo lo que hago ahora es reemplazar la carga en todo el paquete con sus primeros 8 bytes. Esta búsqueda y reemplazo, si se aplica a miles de paquetes, pueden tomar mucho tiempo, me temo:
strOfMyPacket = str(myPacket[IP])
strOfMyPacket.replace(str(myPacket[IP].payload),str(myPacket[IP].payload)[:8],1)
Cualquier forma más rápida que me permita hacer simplemente lo siguiente?
partOfPayload = str(myPacket[IP].payload)[:8]
fullHeader = _______
stringToCompare = fullHeader + partOfPayload
probablemente sólo : 'str (myPacket [IP]) [28]' –