123456789101112131415161718192021222324252627282930313233 |
- import socket
- import struct
- class IPPacket:
- # data = bytes()
- def __init__(self):
- self.version = 4
- self.hlen = 5
- self.service = 0
- self.len = 0
- self.id = 54321
- self.flags = 0
- self.fragment_ofset = 0
- self.ttl = 255
- self.ulp = 6
- self.crc = 0
- self.src = socket.inet_aton("1.1.1.1")
- self.dst = socket.inet_aton("1.1.1.1")
- self.opt = None
- self.data = b''
- print(type(self.data))
- def to_hex_string(self):
- ip_vet_hlen = (self.version << 4) + self.hlen
- return struct.pack('!BBHHHBBH4s4s', ip_vet_hlen, self.service, self.len,
- self.id, self.fragment_ofset, self.ttl,
- self.ulp, self.crc, self.src, self.dst) + self.data
|