0
scapyにPW ethernet制御ワードがサポートされていますか?私はこの制御語を含むパケットを作成する必要があります。ありがとうございました!scapyでPseudowireイーサネット制御ワードをサポート
scapyにPW ethernet制御ワードがサポートされていますか?私はこの制御語を含むパケットを作成する必要があります。ありがとうございました!scapyでPseudowireイーサネット制御ワードをサポート
新しいレイヤーを構築する方法についてのscapyマニュアルについていくつかの調査を行いましたが、私はこのコードを書いています。私はscapyのmplsコードからいくつかの例を取った。私はそれをテストして、パケットにPW Ethernet Control Wordを追加するようです。
from scapy.packet import Packet, bind_layers, Padding
from scapy.fields import IntField
from scapy.layers.inet import IP
from scapy.layers.inet6 import IPv6
class PseudowireControlWord(Packet):
name = "PseudowireControlWord"
fields_desc = [IntField("SeqNumber", 0)]
def guess_payload_class(self, payload):
if len(payload) >= 1:
ip_version = (ord(payload[0]) >> 4) & 0xF
if ip_version == 4:
return IP
elif ip_version == 6:
return IPv6
return Padding
はまた、私はguess_payload_class
関数でscapyでmpls.pyコードに変更を加えました。私は次のコードを追加する必要があると思う:
elif ip_version == 0:
return PseudowireControlWord