‹ cers的网络日志

记一次失败的光猫破解尝试

偶然间看到有人在网上用ipv6做远程桌面直连办公室和家里电脑做远程办公,DDNS确保ipv6的地址变化问题。

开始普通尝试

电脑----AC控制器----光猫----Internet

结果发现AC控制器不支持ipv6,型号是TL-R470GP-AC,询问tplink客服,告知硬件版本V3.0以上的才能支持ipv6,可惜我的硬件版本V2.1的,硬件就无法支持,这种方式就这么失败了

直连光猫的尝试

电脑----光猫----Internet

    |

    |

  AC控制器

光猫型号TEWA-708E,打开(破解)光猫的超级管理员模式,具体方法在网上有很多文章讲过了,不再赘述,打开“网络”选项卡,选择连接名称里面有大写的Internet字样的,IP模式选择ipv4&ipv6,其他一般选择自动,如果不行可以尝试调换选项,但是一般ipv6设置不需要NET,地址获取一般也不需要DHCP,一般选择AutoConfigured,前缀获取方式一般选择PrefixDelegation。

搞定!电脑和光猫都直接获取到了ipv6的地址,访问https://ipv6.test-ipv6.com 也完全正常,尝试ping一下手机的ipv6地址也能非常通畅,点对点的连接,几乎没有丢包率,延迟大约在50ms左右。

于是继续尝试DDNS,下载https://github.com/NewFuture/DDNS ,配置好he.net的ddns解析,在本机架设好[::0]:80的监听端口,访问有AAAA至ipv6解析的域名,秒开,我以为万事大吉的时候,问题出现了,手机无法访问这个域名。

逐个排查问题

首先想到的就是换一台手机试试,依然无法打开,提示的意思是dns解析的地址无法连接。

于是尝试使用手机下载he.net的Network Tools,用手机ping这个域名,结果发现域名可以解析到电脑的ipv6地址,但所有包全部丢失。

再次尝试使用网络上的在线ping工具ping这个域名,结果与手机测试结果一样,可以解析到正确ipv6地址,但所有包全部丢失。

怀疑是网络供应商封了80端口,继续尝试用在线网络工具扫描端口,结果发现所有端口都没有响应,调换8080端口问题依旧。

尝试使用Tracerout工具查找包掉在哪一个环节了,结果提示,光猫这一环节之后就没反应了,问题应该就在光猫上。

网上搜索类似关键字“ipv6 ping 不通电脑”等等,查到了一些可能非常接近正确答案的回答:

如果你有超管的密码,用web是看不到的,用telnet进去查看iptable关于ipv6的规则,你会发现FORWARD链上拒绝了从外部向内部转发,这就是你为何从内向外可以,反过来就不行。此为运营商默认配置,显然对ipv6不纯熟,运营商的默认ipv6配置挺多不合理的地方,不一一枚举了。来说说处理方法,1、直接桥接。2、增加一条FORWARD链规则来接受所有转发请求,前提要会操作iptable命令。

谢谢各位,原因找到了,确实跟光猫配置有关。 安全->端口过滤->下行过滤 “在本页面上,您可以配置 WAN-To-LAN 过滤,禁止某些 WAN 口 IP 地址通过 LAN 口访问。” 这个页面要选择“启用”,然后选择黑名单,留空就可以了。但是如果不选择“启用”就有问题。 这个逻辑呢,稍微有点点怪。

第二条所说的方法经过尝试,发现光猫里面没有这个选项页面,于是开始第一条引用所说的方法,配置iptables,想办法开启光猫的telnet,使用iptables发现权限错误,需要root权限,于是找到https://github.com/jonirrings/xor 的issues,发现里面有一个回复再次让我跃跃欲试。

telnet进去可以找到passwd文件,然后每次升级后,可以看看这个文件有木有变化,如果没变也许就可以拿机器暴力算root的密码hash试试。

于是我想办法找到passwd文件,发现是以下内容

root:$1$2s7kCsHV$rPN0P1crHzM7TX0w0W2Js0:0:0:Administrator:/:/bin/sh

网上搜索说这是md5的加密,想起来说md5还是很好破解的,结果发现所谓破解md5的网站,只能破解比较简单的组合,aabb、123456之类的,这个密码可能是比较复杂的包含大小写字母数字和特殊符号的,根本无法查出,期间我甚至尝试了暴力破解,算了20多个小时,无果。

回到telnet,查找webs这个文件夹里面有很多隐藏页面,于是挨个单独打开,尝试有没有能关闭firewall过滤器的选项,全部查找完毕,发现依然没有。有一个页面是这么提示的:

防火墙
防火墙是用于允许或者拒绝封包资料通过机器。它的工作方式以及设定与 IP 过滤器一样。

于是我想尝试查找一下iptable的配置文件,看看是什么规则导致的外网无法主动访问光猫以下的设备,但几乎把整个光猫文件翻遍,也没找到配置文件,一般网上说的在/etc/sysconfig/iptables,但我翻遍了光猫也没找到这个文件。 而且telnet使用vi查看文本文件是有问题的,无法翻页,只能使用enter键往下覆盖查看,无法往上翻页,并且一旦进入插入模式无法退出,只能退出整个终端,再重新进入非常麻烦。

结尾

综上所述,我尝试了所有方法,排查了所有问题,问题已经很明确的指向光猫的防火墙或者说是iptables,但无法拿到root密码,就无法更改iptables设置,甚至无法查看iptables设置。 唯一的方式是换一个支持ipv6的AC,替换TL-R470GP-AC V2.1,一个好的选择是TL-R470GP-AC V4.0,之后再将光猫调为桥接模式,用AC拨号,这样不光可以解决外网主动访问设备问题,也可以让所有设备都用上ipv6。(完)

结尾之后的结尾

这篇文章像是一块互联网上的墓碑,记录着一个人曾经探索过这样一条技术路线,失败了,其他人可以再顺着这个线索尝试其他探索,这样不断扩张技术的边界和深度,这就是互联网最大的意义,也既最低成本的传递最多的信息量,让人们的协作探索之旅走在高速公路上。

下一篇的预告:折腾ipv6的MTU设置问题