可以修改TTL的路由器

可以修改TTL的路由器

我的 ISP 已将 TTL 设置为 1。我当前的路由器 Linksys WRT120N 无法更改这一点,而且我的计算机无法连接到互联网。

我将退回当前的路由器并购买另一台。我有几个选择:

  • D-Link DIR-615
  • D-Link DIR-320
  • Linksys WRT54G2
  • Linksys WRT54GL

在这些路由器中,最后一个路由器是解决我的问题的唯一方法吗?

(我必须从这家商店购买路由器:http://laptop.bg/#/accessories/routers/..该网站是保加利亚语的,但至少我可以选择模型是英文的。)

答案1

我假设你的问题是,所有传入数据包的 TTL 都是 1,这会导致它们被路由器删除。你的 ISP 的想法很聪明 :)

无论如何,如果你使用其他路由器固件,如 DD-WRT、OpenWrt 等,你应该能够修改防火墙(iptables) 规则将 TTL 设置为不同的值(iptables 有一个--ttl-set选项)。DD-WRT wiki 上有一些相关信息:http://www.dd-wrt.com/wiki/index.php/Iptables#Modifying_the_TTL

答案2

确实有一些小型 ISP(邻近规模)通过以太网电缆将您直接连接到他们的设备,并在 DHCP 数据包中设置 TTL=1。

他们的网络中的授权基于您的网卡的 MAC 地址。

他们还声明,除非你购买更高级别的订阅,否则不允许你使用家用路由器(太差劲了)。

可能的解决方案如下:

  • 我有一台 Asus WL 500gp V2 无线路由器,我计划为其安装 OpenWRT,因此我可以使用 ssh 连接一个小型 Linux 机箱,然后在其中更改传出数据包的 TTL 设置。

答案3

抱歉,我不太清楚你为什么要更换路由器(我看过你之前的帖子)TTL(生存时间)是 IP 数据包通过路由器时应用的一个过程。数据包通过路由器时,TTL 总是会减 1。基本上,每个数据包都有有限的生存时间,TTL 确保如果数据包未送达,则数据包会死亡。

本质上,我不确定更换路由器是否是解决方案。

答案4

忽略 TTL 问题,您是否打电话给 ISP 并告诉他们您无法访问互联网?我假设您除了 ping 之外还做了其他事情,而且它们也不起作用。

此外,无论您将 TTL 设置为多少,您都无法控制第一个 ISP 路由器及其功能。这里我将 ping 的 TTL 设置为 64。

C:\Documents and Settings\myPC>ping superuser.com -i 64

Pinging superuser.com [69.59.196.219] with 32 bytes of data:

Reply from 69.59.196.219: bytes=32 time=66ms TTL=112
Reply from 69.59.196.219: bytes=32 time=67ms TTL=112
Reply from 69.59.196.219: bytes=32 time=66ms TTL=112
Reply from 69.59.196.219: bytes=32 time=66ms TTL=112

Ping statistics for 69.59.196.219:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 66ms, Maximum = 67ms, Average = 66ms

相关内容