<FONT face=宋体> </FONT>
^5 u/ ?9 L5 _" `8 e/ z3 f<BLOCKQUOTE>额外的编程工作:去除讨厌的华为宽带上网控件 - w- O$ y3 j w" _
<P>" L, E0 {0 c* F8 v; h/ N( z
<P>这一两天家里的宽带不通了,一直太忙没有时间检查,今天看了看,原来是系统升级了。</P>
. h4 r* I# I) L0 p" } D<P>由于华为依赖这样一个控件来做宽带登陆, 导致的结果是:</P>
! y8 A& q/ Q0 Y0 J<P>1、不使用IE浏览器的,比如firefox的,或者IE安全级别较高的无法使用; </P>
# i8 d' K" B1 q6 u2 L! `& V8 d<P>2、根本无法使用宽带路由器之类的产品来分享家里的宽带; </P>6 R& h. r$ c7 E' @( u2 j3 K! J
<P>3、非PC机用户,Mac用户,linux用户无法使用宽带; </P>7 K0 t7 |7 M t/ N! q$ ~4 z
<P>等我的改进代码写好, 我会提供下载,让所有受其害的人民群众有自己选择自己使用宽待方式的自由!</P>
' f% F( s6 N9 q6 f; ~/ @<P>
& z! m0 w; F( {, W<br></BLOCKQUOTE>
% ]. |! q, v( e$ G0 V( c. ^. m C: O( `<P>先直接给大家一个可用结果,其实非常简单。 把下面的代码copy下来,保存为一个html文件,例如“login.html”. 注意:把“你的密码”,“你的帐户”改为您自己的密码和帐户,这样每次登陆的时候就不需要再次输入。</P>' ^( c1 m6 c0 O, `
<BLOCKQUOTE>' s" B8 U! u, P8 n* d* Q
<P><html><BR><head><BR><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><BR><title>登陆宽带</title> </P>
3 V/ t9 O2 p- ^) l1 X<P><script><BR>function dologin()<BR>{<BR> mainform.httpIP.value = mainform.IP.value ; <BR> mainform.localIP.value = mainform.IP.value ;<BR> mainform.submit();<BR>}<BR></script><BR></head><BR> <BR><body></P>3 E8 e6 O {0 \! X1 A F
<P> <form id=mainform name=mainform method=post action="http://218.2.135.36/secu/webLogin.jsp"><BR> <BR> <input type='hidden' name='consumeright' value='0'><BR> <input type='hidden' name='separatecard' value='0'><BR> <input type='hidden' name='localIP' value='221.226.230.246'><BR> <input type='hidden' name='needActiveX' value='1'><BR> <input type='hidden' name='isPNP' value='0'><BR> <input type='hidden' name='httpIP' value='221.226.230.246'><BR> <input type='hidden' name='isProxy' value='0'><BR> <input type='hidden' name='clienttype' value='1'><BR> <input type='hidden' name='cookiedate' value='3650'></P>
7 q6 E6 U8 Z2 b; @0 a<P> 用户名:<input type="text" name="username" value="你的南京宽带帐号" size="12" title="请输入用户名!" maxlength="32"> &nbsp;&nbsp;<BR> 密码:<input type="password" name="password" value="你的密码" title="请输入密码!" size="10" maxlength="16"> &nbsp; <BR> <input type="checkbox" name="saveflag" value="1" checked ><b>记住密码</b> &nbsp;&nbsp;&nbsp;<BR> IP:<input type="text" name="IP" value="" title="请输入IP"> <BR> <input type="submit" name="Submit" value=" 确 定 " script_onclick="dologin(); return false;"><BR> <BR> </form><BR> <BR> </body><BR> </html> </P></BLOCKQUOTE>0 U; T5 _+ q. [8 e: o3 ?5 S
<P>有了上面的文件, 你可以在家里安装宽带路由器,无线AP等,在你使用的所有PC或者MAC上,保存这个html文件, 登陆的时候,直接打开文件,输入你的宽带路由器获得公网地址,点击“登录”即可。 </P>
) ^5 T2 z4 l" K8 h0 _% X! x: s<P>注意:本代码并没有禁止华为的那个垃圾active x控件, 但你可以不理会那个控件,用sp2等干脆禁止掉那个控件,而不影响你的上网。 </P>1 `, I, Q* e( m# ^, Y
<P>---</P>
( ?+ f/ ^" A) o! }* @, Y' }<P>简要原理的说明,不关心技术的可以忽略:</P>$ c% V$ d$ \; \: T
<P>1、华为的核心认证在于http://218.2.135.36/secu/webLogin.jsp,只要提交正确的东西到这里,就能认证成功。 所以,上面的代码只不过直接给出一个提交而已;</P>
, k9 X: j# w1 w# f0 O<P>2、http://218.2.135.36/这个站点上很多页面都被首先rewrite到:http://218.2.135.36/pre_weblogin.jsp, 在这个页面可以看到active x的作用,其实不过是获得一下本机的IP地址。 而有了IP地址后,就转到了http://218.2.135.36/weblogin.jsp,这是平常用户看到的login画面。分析代码可以看到,这个activex只是为了获得机器的local IP, 而那个http://218.2.135.36/secu/webLogin.jsp也将利用这个local IP来进行认证!这些其实都是多余的。 </P>
5 A ]8 z% f0 @) j& `/ ?6 [<P>4 ]' N% D Q" r' K/ B3 Q0 B. S8 ~
<P>3、从最新的这个代码来看, portal还是有些改进,因为只依赖“http://218.2.135.36/secu/webLogin.jsp”作认证,就使得在某些支持执行一个http请求来认证的宽带router直接认证成为可能。 可惜我的这个Router AP是日文版的,看不懂提示不太会设置,要不然可以在router上直接连接就更好了。</P>
( k( s6 v1 N4 J, E/ z<P>4、华为的代码混乱不堪,显然是很多人维护导致的,结果代码越来越混乱。 而且其中很多代码其实没有任何用处。</P> |
|