TTL即Time To Live,用来描述数据包的生存时间,防止数据包在互联网上一直游荡,每过一个路由减1,TTL为1时丢弃数据包并返回不可达信息。
Iptables TTL模块可以修改收到、发送数据的TTL值,这模块很有趣,可以实现很多妙用。
TTL使用参数:
1 2 3 4 |
应用示例:
禁止被tracert跟踪到,traceroute跟踪时首先向目标发送TTL为1的IP数据,路由收到后丢弃数据包并返回不可达信息,以此递增直到目标主机为止。
1 2 3 4 | iptables -A INPUT -m ttl --ttl- eq 1 -j DROP #禁止TTL为1的数据包进入 iptables -A FORWARD -m ttl --ttl- eq 1 -j DROP #禁止转发TTL为1的数据 |
禁止二级路由:
1 2 | iptables -t mangle -A PREROUTING -i pppoe-wan -j TTL --ttl- set 2 #进入路由数据包TTL设置为2,二级路由可接收数据不转发。 |