1*de922be4SDavid Wangss = [ 2*de922be4SDavid Wang "172.18.1.3", 3*de922be4SDavid Wang "172.18.1.4", 4*de922be4SDavid Wang "172.18.1.5", 5*de922be4SDavid Wang] 6*de922be4SDavid Wang 7*de922be4SDavid Wang# iptables -t nat -A myservice -d 10.10.0.1 -m statistic --mode random --probability 0.3333 -j DNAT --to-destination 172.18.1.3 8*de922be4SDavid Wangx, n = 0, 10000 9*de922be4SDavid Wangdef build(s, e, p): 10*de922be4SDavid Wang n = e-s+1 11*de922be4SDavid Wang if n<=16: 12*de922be4SDavid Wang pass 13*de922be4SDavid Wang else: 14*de922be4SDavid Wang # split 15*de922be4SDavid Wang m = (s+e)/2 16*de922be4SDavid Wang x = "myservice%d_%d" % (s, m) 17*de922be4SDavid Wang print "iptables -t nat -F %s" % x 18*de922be4SDavid Wang print "iptables -t nat -X %s" % x 19*de922be4SDavid Wang build(s, m, x) 20*de922be4SDavid Wang x = "myservice%d_%d" % (m+1, e) 21*de922be4SDavid Wang print "iptables -t nat -F %s" % x 22*de922be4SDavid Wang print "iptables -t nat -X %s" % x 23*de922be4SDavid Wang build(m+1, e, x) 24*de922be4SDavid Wang 25*de922be4SDavid Wangprint "iptables -t nat -F myservice" 26*de922be4SDavid Wangbuild(0, n-1, "myservice") 27