def main(): oc = OSC.OSCClient() oc.connect(hostport) kbints = 0 interface_address=options.interface_address if openfile: p = pcapy.open_offline(openfile) else: # begin listening to network traffic interface = options.interface interface_address = netifaces.ifaddresses(interface)[2][0]['addr'] p = pcapy.open_live(interface, 1024, False, 10240) # create and start threads network_traffic = communication_thread() network_traffic.start() try: (header, payload) = p.next() while header: e = Ether(payload) t = e.getlayer(TCP) if t: i = e.getlayer(IP) nw_traffic_global.setdefault(t.dport,0) try: nw_traffic_global[t.dport]+=1 except KeyError: print 'race' nw_traffic_inout['in' if i.dst == interface_address else 'out']+=1 if e.haslayer(ICMP): x = OSC.OSCMessage() x.setAddress('/plinker/ping') x.append(1) oc.send(x) print 'ICMP ping sent' second = header.getts()[0] # [1] = miliseconds try: (header, payload) = p.next() except Exception,e: pass #print type(e) except Exception,e: print traceback.print_exc(e)
def main(): kbints = 0 # begin listening to network traffic interface = options.interface interface_address = netifaces.ifaddresses(interface)[2][0]['addr'] # create and start threads network_traffic = communication_thread("no_icmp") network_traffic.start() icmp_traffic = communication_thread("only_icmp") icmp_traffic.start() p = pcapy.open_live(interface, 1024, False, 10240) try: (header, payload) = p.next() while header: e = Ether(payload) t = e.getlayer(TCP) if t: i = e.getlayer(IP) if i.dst==interface_address: nw_traffic_in_global.setdefault(t.dport,0) nw_traffic_in_global[t.dport]+=1 else: nw_traffic_out_global.setdefault(t.dport,0) nw_traffic_out_global[t.dport]+=1 if e.haslayer(ICMP): x = OSC.OSCMessage() x.setAddress('/plinker/ping') x.append(1) oc.send(x) print 'sent' second = header.getts()[0] # [1] = miliseconds (header, payload) = p.next() except KeyboardInterrupt: print 'kbint %d' % kbints kbints+=1 if kbints>2: print 'quitting %d' % kbints return except Exception,e: print e
interface = 'wlan0' interface_address = netifaces.ifaddresses(interface)[2][0]['addr'] print interface_address p = pcapy.open_live(interface, 1024, False, 10240) #p = pcapy.open_offline('test.tcpdump') summary_in = {} summary_out = {} try: (header, payload) = p.next() while header: e = Ether(payload) t = e.getlayer(TCP) if t: i = e.getlayer(IP) if i.dst==interface_address: summary_in.setdefault(t.dport,0) summary_in[t.dport]+=1 else: summary_out.setdefault(t.dport,0) summary_out[t.dport]+=1 if e.haslayer(ICMP): print 'ping' second = header.getts()[0] # [1] = miliseconds (header, payload) = p.next() except KeyboardInterrupt: