def handle_ipv6(self, pktItem, data): pktItem.src_ip = NetFormat.ntoa_ipv6(data.src) pktItem.dst_ip = NetFormat.ntoa_ipv6(data.dst) pktItem.protocol = 'IPv6' self.statistics.ipv6 += 1 if data.p == dpkt.ip.IP_PROTO_TCP: self.handle_tcp(pktItem, data.data) elif data.p == dpkt.ip.IP_PROTO_UDP: self.handle_udp(pktItem, data.data) elif data.p == dpkt.ip.IP_PROTO_ICMP6: self.handle_icmp(pktItem, data.data) else: self.handle_unknown(pktItem, data.data)
def handle_frame(self, pktItem, header, frame): """ assume that no error occur in the header section """ local_tv_sec = header.ts.tv_sec ltime = time.localtime(local_tv_sec); pktItem.time = time.strftime("%H:%M:%S", ltime) # time pktItem.len = header.len # length pktItem.protocol = 'Ethernet' # protocol pktItem.src_mac = NetFormat.ntoa_mac(frame.src) # src_mac pktItem.dst_mac = NetFormat.ntoa_mac(frame.dst) # dst_mac self.statistics.total += 1