Как проверить наличие определенного слоя в scapy-пакете? Например, мне нужно проверить поля src/dst заголовка IP, откуда я знаю, что конкретный пакет имеет IP-заголовок (в отличие от IPv6, например).
Моя проблема заключается в том, что когда я иду проверять поле заголовка IP, я получаю сообщение об ошибке, говорящем, что уровень IP не существует. Вместо IP-заголовка этот конкретный пакет имел IPv6.
pkt = Ether(packet_string)
if pkt[IP].dst == something:
# do this
Моя ошибка возникает, когда я пытаюсь ссылаться на уровень IP. Как проверить наличие этих слоев перед тем, как попытаться манипулировать им?
Спасибо!