Ich analysiere DNS-Pakete mit scapy. Nicht alle DNS-Antwortdatensätze enthalten alle Felder. Zum Beispiel, einige Antworten haben nicht rdata soÜberprüfen, ob das Feld im DNS-Datensatz mit scapy existiert
answer = packet.an[0].rdata
Ergebnisse in dem Fehler:
AttributeError: rdata
Gibt es eine Möglichkeit der Prüfung, ob das rdata Feld in einer Antwortsatz vorhanden ist? Ich weiß, dass Sie nach Schichten
if packet.haslayer(DNS):
<code>
überprüfen können, so dass Sie nicht nach Schichten fragen, die nicht existieren. Gibt es eine Parallele für Felder innerhalb von Layern?