Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->操作系统 ->Unix ->正文

电力猫在Linux/Unix下上网的解决方案

来源: 作者: 时间:2007-04-11 点击: [收藏] [投稿]

中电飞华在北京推出了电力猫上网的业务,费用相当低廉。笔者选用的一款是400元包半年的套餐。标称速度是10M 实际下载可以达到60K以上,在北方网通的地盘上速度也算马马虎虎了。

中电飞华提供了两种类型的"电力猫",一种用”网线型号“的,用网线直接接入电脑。相当于一个hub或交换机。不需要驱动程序都可以在任何操作系统上使用。另一种为usb接入。没有驱动不能在Linux下使用。但www.intellon.com以GPL的方式开放了windows下驱动程序的源代码。原则上也可以移植到linux/unix上。如果不愿做这个移植工作。建议使用linux/unix 的朋友一定要选择网线型号的电力猫。

北京地区的中电飞华在Windows 下采用的认证方式据说是华为认证。以IE + ActiveX的方式进行,无法移植到Linux/Unix上,其原理如下:

1.在某个web服务器的cgi程序上进行认证,认证通过后你会得到一个sessionid 的变量。此变量实际使用中最大为31000,应该不会超过32767。这在Linux 下很容易做到。

2.每分钟发送一个udp包到服务器的8090端口,其中包括上述的sessionid 数据。但服务器并不回应。这样连接会一直保持。

通过ethereal 抓包分析出udp数据如下:

数据长度为10个字节,以下以16进制表示:

05 05 00 00 00 00 00 00 61 54

第一个数据似乎一直不变。

第二个数字从零开始,每次会加一,由于两个16进制的长度最多能发256分钟,暂时还部知道256分钟以后此字段怎么样变化。事实上电力猫连接不甚稳定,也不容易达到这个数字。

中间的6个字段总是0。

最后两个字段的组合是sessionid 的值。

比如你得到的sessionid 是29615 ,那么后两个就是73 AF

29615=0x73AF.

注销时也是发一个udp包,内容和刚才相似,但头两位数据是

03 0A

我是包半年的用户。不用考虑注销的问题。

知道这些,就很容易实现Linux Unix下的认证了

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:Unix操作系统的优势总结 共14个方面   下一篇:你必须选择我:UNIX操作系统优势总结

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号