浙大软院 免登录上网攻略

浙大软院 免登录上网攻略

问题背景:

来到软院不久,就觉得这边的上网方式很烦。每次(输入账号密码)点击登录后,弹出一个小窗口。不允许关闭,如果点击,关闭了这个窗口的话,就断网。作为一个有强迫症的人,怎么忍得了这个问题??
然后问了下实验室其他使用客户端登录的同学,也说不能关掉客户端进程。否则,就没网了。

源码分析

遇到这种问题,我是不能忍受的。登录页面,无非也就是一些网页,除了交互外,就是一些网络请求,cookie缓存啥的。于是,打开源代码,果然找到问题了。
这是因为,在网页里已经写死了,关闭网页会触发退出登录时间。

解决问题

找到问题根源后,接下来就是解决问题了。登录网页代码是服务器提供的,我们无法修改。登录页面提供的,无非也就是个登录功能。因此,我的解决方案是:写一个脚本,模拟登录。
查看网页登录post发送的数据:
由于本人最熟悉的是php语言,所以写了段 php demo 
 1 <?php
 2 function login_post($url, $cookie, $post){
 3     $ch = curl_init(); //初始化curl模块
 4     curl_setopt($ch, CURLOPT_URL, $url); //登录提交的地址
 5     curl_setopt($ch, CURLOPT_HEADER, 0); //是否显示头信息
 6     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0); //是否自动显示返回的信息
 7     curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie); //设置cookie信息保存在指定的文件夹中
 8     curl_setopt($ch, CURLOPT_POST, 1); //以POST方式提交
 9     curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));//要执行的信息
10     curl_exec($ch);    //执行CURL
11     curl_close($ch);
12 }
13 $post = array(
14     'username' => '21751421',
15     'password' => '65da38ecd0b30a5a',   
16     'drop' => '0',
17     'type' => '1',
18     'n' => '100',   
19 );
20 $url = "http://192.0.0.6/cgi-bin/do_login";    //登录地址, 和原网站一致
21 $cookie = dirname(__FILE__).'/cookie_ydma.txt'; //设置cookie保存的路径
22 login_post($url, $cookie, $post);    //调用模拟登录

然后每次连上网线后,使用php 命令既可以连接上网。再也没有遇到窗口问题了~

 

问题延伸

php 毕竟是一个小众语言。使用的人不多,最后能把它写成一个命令行认识的问题,最好能写成python语言。
(todo things)

路由器连接问题

其实人们最关心的还是路由器的问题。实验室里路由器怎么连接?寝室里的路由器怎么设置??这个其实人们最最关心的问题。
电脑的连网方式是dhcp分配的ip,也就是说,只要端口没有坏。插上去,就能分配ip。然后输入账号密码,验证一下就能上网。
对于路由器而言,也是如此。通电,插上端口。dhcp分配ip。就能够使用。
只不过,当连入路由器的多个用户中,只要有一个人通过了验证,那么所有连接这个路由器的设备都能上网。
原文地址:https://www.cnblogs.com/hello-lijj/p/9407632.html