我想根据时间更改我的IP地址而不是url。 以下是我的iptable规则来破坏IP我有:
sudo iptables -t nat -A POSTROUTING -o em1 -p tcp --dport 80 -j SNAT \ --to xxx118-yyy128
问题是我每次检查ipflag.com我只得到一个特定的IP,我不希望它是我想在iptables有一个规则,所以它会改变我的IP基于时间,说每5分钟。
有可能吗?
时间模块将提供接近你想要的; 以下内容涵盖了每天凌晨2:00至早上6:00(请阅读本模块以获取更多信息,因为它也允许针对每周的每天定位):
-m time --timestart 02:00 --timestop 06:00
但是您需要创build许多规则来实现“每5分钟”的要求。
另外请注意,由于连接跟踪模块的工作方式,一旦build立了连接,它就会被跟踪(一个条目被添加到conntrack表中),并且将保持这种状态,不pipe你使用什么iptables“时间匹配”规则为此,直到它到期(在UDP的情况下)或被拆除(TCP连接closures/重置等)。 因此,即使您每5分钟轮换到一个不同的IP地址,如果您有一个永久连接保持对同级开放,这将不会自动终止和重置 – 它会保持build立不中断使用它首次匹配的IP地址(通过你的iptables“时间匹配”规则)。 要强制连接重置,将其移动到一个新的IP上,您还必须开始使用conntrack ( conntrack-tools RPM软件包的一部分)来主动重置您希望移动到新的连接的全部或部分连接IP地址。 你可以做一个crontab项来达到这个目的,每隔5分钟运行一次。
/usr/sbin/conntrack -D -s 192.168.0.128
重置所有源自主机192.168.0.128的跟踪连接(只用-D执行所有跟踪连接的全面重置)。