1*de922be4SDavid Wangvip = "10.10.0.1" 2*de922be4SDavid Wangss = [ 3*de922be4SDavid Wang "172.18.1.3", 4*de922be4SDavid Wang "172.18.1.4", 5*de922be4SDavid Wang "172.18.1.5", 6*de922be4SDavid Wang] 7*de922be4SDavid Wang 8*de922be4SDavid Wangprint "*nat" 9*de922be4SDavid Wangprint ":myservice - [0:0]" 10*de922be4SDavid Wang 11*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 12*de922be4SDavid Wangx, n = 0, 10000 13*de922be4SDavid Wangm = n 14*de922be4SDavid Wangfor _ in range(n-1): 15*de922be4SDavid Wang p = 1.0/m 16*de922be4SDavid Wang print "-A myservice -d %s -m statistic --mode random --probability %.16f -j DNAT --to-destination %s" % (vip, p, ss[x]) 17*de922be4SDavid Wang m-=1 18*de922be4SDavid Wang x+=1 19*de922be4SDavid Wang x%=len(ss) 20*de922be4SDavid Wangprint "-A myservice -d %s -j DNAT --to-destination %s" % (vip, ss[x]) 21*de922be4SDavid Wang 22*de922be4SDavid Wangprint "COMMIT" 23