电信宽带是怎么做到限制仅支持一台电脑上网的?

2014-09-18 00:20:11 +08:00
 Exin
学校里的电信宽带很便宜,99¥/月:20M独享+手机套餐(40小时国内通话+400M流量+200条短信)
而且宽带是pppoe拨号,可以自己买路由从光猫接线上网,不需要使用那些恶心的拨号客户端,这点非常不错
但是宽带限制了同一时刻只能有一台电脑上网(即使光猫出来的线接在路由器上)
移动设备数量倒是不限制,可以多台手机/pad同时连一个路由上网
如果两台电脑使用同一个路由器上网那么打开网页会显示“检测到多台电脑同时登陆”,网页就不能看了,游戏和软件还是正常的。

这是什么原理?电信是如何分辨设备类型的?
13625 次点击
所在节点    问与答
53 条回复
Exin
2014-09-18 09:14:56 +08:00
@wangtuyi UA是什么
wangtuyi
2014-09-18 09:19:25 +08:00
@Exin 浏览器的user-agent,就是告诉网站我是哪个浏览器的东西。
同时登陆后两个都不能打开网页,但是却都能正常使用软件等其他联网程序,浏览器和其他联网程序区别也就是UA了吧,你试试用curl ip.cn或者curl www.qq.com看能获取东西不
princeofwales
2014-09-18 09:21:21 +08:00
@Exin UA 是UserAgent,浏览器的身份标识。在移动终端上用浏览器上网呢,有问题吗?
xiaop
2014-09-18 09:23:30 +08:00
应该是送的电信猫的问题。电信的账号用户名密码都是加密的,在猫里可能有程序判断是否是两台电脑。
jasontse
2014-09-18 09:34:49 +08:00
@wangtuyi
@Exin
如果是 UA 那楼主可以尝试在同一台电脑上同时使用多个浏览器看看会不会触发限制。
jasontse
2014-09-18 09:41:20 +08:00
如果确定是 UA 很好解决,使用 nginx 配置一个正向代理,把 80 端口上台式机的 user-agent 洗一遍就行了。
Tink
2014-09-18 09:43:44 +08:00
不是吧。ISP还有用UA判断用户的
mornlight
2014-09-18 09:56:16 +08:00
楼主是上海的么,你说的这个问题存在于上海各个使用了电信光纤网络的大学宿舍中。该问题我在3年前找了几个技术还可以的人一起研究过,目前还无解。我可以告知你以下信息:

1.电信检测到有多台终端上网的时候,会封80端口,你打开的所有网页都会电信的提示页面。但它只封80端口,所以你的QQ、YY、游戏一般不受影响,被封了也可以继续用,只是里面的页面都看不到了。443封不封我还没试过。被封后,找一个非80端口的http代理挂到浏览器上,嘿嘿,你会发现毫无问题。
2.封锁是暂时的,几分钟后就会恢复,有时候刷新一下页面就恢复了。
3.PC和手机、平板共用一个路由,前两年的时候存在较低的被封可能,甚至有人经常自己一台PC用着用着也被封了。现在好像一般不乱封了,感觉电信那边完善了检测手段。
4.别想什么密码加密,mac地址,dns劫持,可以明确告诉你,检测机制与这些无关或者不是主要因素,常见的手段我们都一个个排除过。
5.在一两年前,我通过小道渠道得知,在账号后面加 @shtel 再拨号,可以解决这个问题,应该是电信官方自己保留的方法。我找了一些人测试,的确将封号几率降到非常低的水平(但不是完全不封) 后来估计是知道的人太多,这个方法不行了。
6.一种可能使用的手段,你可以看我转载过的一个文章以及后面的评论内容: http://www.gexiao.me/archives/149

另外,楼里有人说判断浏览器UA,因为UA可以区分出是PC上的浏览器还是移动设备浏览器。不排除是有这个可能,但应该不会是简单的判断是不是有多个不同的UA,因为我单台PC也是可以装多个浏览器有多种UA的。
mornlight
2014-09-18 09:58:03 +08:00
@jasontse 单台机器多个浏览器,一般是不会的。我经常开好几个浏览器。
coolzjy
2014-09-18 10:10:33 +08:00
经过路由器的包是存在特征的,对于这种检测最佳的办法就是,搞一台双网卡前置机挂代理或者直接充当网关
jasontse
2014-09-18 10:13:17 +08:00
@mornlight
你列出的 IPID 和 Cookie ID 方法都无法有效区分电脑和移动设备。

还有一种可能就是 TTL,XP 默认的 TTL 是 128,Android&iOS 的 TTL 都是 64。但这也存在漏洞,因为 Windows 7 默认的 TTL 也变成了 64。
mornlight
2014-09-18 10:24:13 +08:00
@jasontse 的确是这样,但是有可能电信同时掺杂了几种检测手段。3年前,路由器接移动设备也是经常被封的,只是现在手段成熟了。
typcn
2014-09-18 10:25:16 +08:00
买两个路由器一般就完美解决了 具体原理待我脑洞大开一下
typcn
2014-09-18 10:38:36 +08:00
如果想彻底搞清楚 做一下测试:
1 开个虚拟机 装 Windows 系统 ,网络选项选择 NAT,查看是否出现提示。
2 还是那个虚拟机 网络选项选择桥接网卡 查看是否出现提示。
3 虚拟机换成其他系统( 如mac ) 重复以上步骤
4 将另一台电脑接入路由器 不要 windows 系统,用 linux 或者 mac,查看是否出现提示
5 将这台电脑使用无线方式连接 不要使用 LAN 线路,使用无线连接,查看是否出现提示。
6 用 iOS 设备 更改设备名为 PC-2014xxxxx 进行测试
7 将电脑的设备名修改为 android-xxxxx 进行测试
8 将 windows 的网络区域设置为 “公用网络” 并禁用任何与“共享”相关内容 连接测试。
jamiesun
2014-09-18 10:49:57 +08:00
这是在接入服务器上的限制,电信接入服务器是非常复杂庞大的设备,动辄几十几百万的货色,比如华为me60,各种策略限制手段极其庞杂。

对终端接入进行特征检测限制不过是小菜一碟,什么ua,js想都别想,这种小儿科的手段是上个世纪的事情了。尽管你在路由走了一次nat,但是所有数据包对接入服务器来说都是透明的。

要解决此问题,可以从底层解决,达到数据包欺骗目的,所以你得对底层网络协议略懂一二。

那个加 @shtel 的模式是一种域策略模式,在上网账号后面加一个指定的域拨号,该域在电信接入服务器和认证服务器上都有对应配置,一般电信内部会有特定域(vip,测试用途等),该域可能被认证服务器验证后下发给接入服务器,接入服务器对此域做特殊策略处理,或者直接由接入服务器特殊处理。

这个域有极大可能可以暴力破解,程序员们不妨使用各种字母组合来进行反复拨号测试,至于测试结果如何取决于电信认证域校验机制,如果所有无效域默认都是可以拨号上网那就徒劳了,但是如果只有有效域可以拨通的话就可以破解试试了。
Exin
2014-09-18 10:51:21 +08:00
@mornlight 猜得不错。说实话你的头像和我校贴吧管理员的是一样的,莫非就是你?
xjx0524
2014-09-18 10:54:18 +08:00
我们学校电信蓝屏一般出现在开学季,吓唬一下小朋友,然后过段时间就没问题了。
一般出问题时,我们连上vpn就可以了
mornlight
2014-09-18 11:01:59 +08:00
@typcn 别说2个路由,3个路由都没用。你太看不起电信了。
mornlight
2014-09-18 11:04:36 +08:00
@Exin 校友你好。在V2碰到ECNU的人还是挺难的。
mornlight
2014-09-18 11:11:45 +08:00
@jamiesun 主要是不知道电信通过什么方式做到的,如果能知道它的原理,即使改底层通信的内容也应该能拿出对应方案来。我还潜入过电信内部的QQ群,找过他们的客服和技术人员,都表示不知道是怎么检测的。在这种能多赚很多钱的技术上,我们搞不过电信。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/134103

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX