修改 TTL 的值

May 05, 2023 • 预计阅读时间 1 分钟

TTL 是 64 或者 128 会被认为是 PC 设备或者是通过热点上网,修改路由设备的 TTL 值可以让运营商认为流量来自于移动设备。

Linux

sudo sysctl -w net.ipv4.ip_default_ttl=65
sudo sysctl -w net.ipv6.conf.default.hop_limit=65

OpenWRT 修改所有 WAN 流量的 TTL:

iptables -t mangle -C POSTROUTING 1 -j TTL --ttl-set 65
[ ! "$?" = "0" ] && iptables -t mangle -I POSTROUTING 1 -j TTL --ttl-set 65

Nftables 版本:

chain mangle_postrouting_ttl65 {
  type filter hook postrouting priority 300; policy accept;
  counter ip ttl set 65
}

chain mangle_prerouting_ttl65 {
  type filter hook prerouting priority 300; policy accept;
  counter ip ttl set 65
}

macOS

sudo sysctl -w net.inet.ip.ttl=65
sudo sysctl -w net.inet6.ip6.hlim=65
LinuxmacOS
版权声明:如果转发请带上本文链接和注明来源。

lvv.me

iOS/macOS Developer

Swift 的元组(Tuple)

轻量级的时间同步客户端 systemd-timesyncd