Welcome, guest | Sign In | My Account | Store | Cart
def ip_d2a(ipdec):
        ip1
= (ipdec >> 24) & 255;
        ip2
= (ipdec >> 16) & 255;
        ip3
= (ipdec >> 8)  & 255;
        ip4
=  ipdec       & 255;
       
       
return "%d.%d.%d.%d" % (ip1, ip2, ip3, ip4);
#

def ipToNetAndHost(ip_str, mask_cidr):
       
"returns tuple ((network_itn, network_str), (broadcast_int, broadcast_str))"
       
        l
= ip_str.split('.');
       
for i in range( len(l) ):       l[i] = int(l[i]);
       
        ip_int
= (l[0] << 24) + (l[1] << 16) + (l[2] << 8) + l[3];
        mask_int
= (~0 << (32 - mask_cidr));
        net_int
= (ip_int & mask_int);
        net_str
= ip_d2a(net_int); #print "(DBG) network: [%s] [%d]" % (net_str, net_int);
        brdcast_int
= (net_int | ~(mask_int));
        brdcast_str
= ip_d2a(brdcast_int); #print "(DBG) broadcast: [%s] [%d]" % (brdcast_str, brdcast_int);
       
       
return ((net_int, net_str), (brdcast_int, brdcast_str));
#

"""
import random

subNetList = ['10.0.2.0/23']
subNetList_2 = [];

for s in subNetList:
        l = s.split('/');
        t = ipToNetAndHost(l[0], int(l[1]));
        subNetList_2.append(t);
#

subNetList_2_Size = len(subNetList_2) - 1;

while <...>:
        l = "
....".split("....");
       
        # Changes srcAddr AND dstAddr
        t = subNetList_2[ random.randint(0, subNetList_2_Size) ];
        l[1] = random.randint(t[0][0] + 1, t[1][0] - 1);  #excludes network and broadcast
       
        l[2] = random.randint(t[0][0] + 1, t[1][0] - 1);
        while(l[2] == l[1]): l[2] = random.randint(t[0][0] + 1, t[1][0] - 1);
       
        l[1] = ip_d2a(l[1]);
        l[2] = ip_d2a(l[2]);

"""

Diff to Previous Revision

--- revision 1 2010-08-25 21:32:42
+++ revision 2 2010-08-25 21:37:16
@@ -38,7 +38,7 @@
 subNetList_2_Size
= len(subNetList_2) - 1;
 
 
while <...>:
-        l = "....",split("....");
+        l = "....".split("....");
         
         
# Changes srcAddr AND dstAddr
        t
= subNetList_2[ random.randint(0, subNetList_2_Size) ];

History