linux – 使用iptables轮换传出IP
我正在尝试使用iptables轮换传出的IP.我想逐个旋转三个IP之间的传出连接.这是我正在用iptables做的事情:
root@server:~# iptables -t nat -I POSTROUTING -m state --state NEW -p tcp --dport 80 -o eth0 -m statistic --mode nth --every 3 --packet 0 -j SNAT --to-source XXX.XXX.XXX.133 root@server:~# iptables -t nat -I POSTROUTING -m state --state NEW -p tcp --dport 80 -o eth0 -m statistic --mode nth --every 3 --packet 0 -j SNAT --to-source XXX.XXX.XXX.134 root@server:~# iptables -t nat -I POSTROUTING -m state --state NEW -p tcp --dport 80 -o eth0 -m statistic --mode nth --every 3 --packet 0 -j SNAT --to-source XXX.XXX.XXX.135 它似乎有点工作,但有些事情并不可靠.传出IP的排序不太可预测,有时它们分布不均匀. 这是一个完全裸的Ubuntu安装,所以我不认为这个端口上有任何其他传出连接,但我可能是错的. 有谁知道如何使这更可靠?或者它已经做了正确的事情,我正在解释错误的结果? 我希望IP一个接一个地完美均匀可靠地分发. 以下是结果: {"ip":"XXX.XXX.XXX.135","about":"/about","Pro!":"http://getjsonip.com"}root@server:~# curl jsonip.com {"ip":"XXX.XXX.XXX.134","Pro!":"http://getjsonip.com"}root@server:~# curl jsonip.com {"ip":"XXX.XXX.XXX.133","Pro!":"http://getjsonip.com"}root@server:~# curl jsonip.com {"ip":"XXX.XXX.XXX.135","Pro!":"http://getjsonip.com"}root@server:~# curl jsonip.com 解决方法
如果你尝试会发生什么
–mode nth –every 3 –packet 0 我问,因为我看到几个引用计数器不是全局的事实.
这是其他人试图做你至少发现的事情. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |