from struct import unpack from socket import inet_ntoa def n2a(ip): s='' s+=str((ip>>24)&0xff) s+='.' s+=str((ip>>16)&0xff) s+='.' s+=str((ip>>8 )&0xff) s+='.' s+=str((ip>>0 )&0xff) return s #flowData = '\x00\x05\x00\x01\x00\x00\x98\xA6\x42\x04\x9B\xBB\x00\x00\x00\x00\x00\x00\x01\x05\x00\x00\x00\x00\x0A\x8F\x84\x51\x0A\xFF\xFF\xFF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x98\xA6\x00\x00\x98\xA6\x00\x8A\x00\x8A\x00\x00\x11\x00\x00\x00\x00\x00\x00\x00\x00\x00' flowData = '\x00\x05\x00\x01\x00\x00\xC8\x4E\x42\x04\x9A\x29\x00\x00\x00\x00\x00\x00\x00\x4B\x00\x00\x00\x00\x0A\x8F\x84\x45\xEF\xFF\xFF\xFE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xC8\x4E\x00\x00\xC8\x4E\x00\x89\x00\x89\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00' flowData = '\x00\x05\x00\x01\x00\x00\xF0\xD2\x42\x04\x42\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0A\x8F\x84\x45\x0A\x8F\x84\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0A\x00\x00\x3A\x98\x00\x00\xF0\xD2\x00\x00\xF0\xD2\x05\xCF\x80\x30\x00\x10\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00' header = unpack('>2H4I4x',flowData[:24]) flow = unpack('>3I2H4I2Hx3B2H2B2x',flowData[24:24+48]) srcIp,dstIp,nextHop,ifInput,ifOutput,pkts,bytes,startTime,endTime,srcPort,dstPort,tcpFlag,proto,tos,srcAS,dstAS,srcMask,dstMask=flow print srcIp print dstIp print 'srcIp\t'+inet_ntoa(flowData[24:24+4]) print 'dstIp\t'+inet_ntoa(flowData[24+4:24+8]) print 'srcIp\t'+n2a(srcIp) print 'dstIp\t'+n2a(dstIp)