#思路:

##1、 当校园网断开,只需要重新拨号即可

##2、 校园网使用两台电脑同时登录时不会立即下线,其中有一段时间间隔

#步骤:

##1、 通过抓包对拨号产生的数据包进行分析,使得可以通过代码来实现自动拨号

脚本一:

#!/bin/bash
# check Internet status
sleep 20
ping -c 1 114.114.114.114 > /dev/null 2>&1
if [ $? -eq 0 ];then
logger Connecting.
else
logger Network disconnection.
source ./login.sh
# 等价于 ../login.sh 使用source调用脚本不会退出当前脚本
logger Reconnecting.

脚本二:

#!/bin/bash
logger "[Dr.com page verify] Start timing detection."
curl http://192.168.167.46 >drcom.html
check_status=`grep "Dr.COMWebLoginID_0.htm" drcom.html`
if [[ $check_status != "" ]]
then
# offline status
logger "[Dr.com page verify] offline status."
# yourself curl
curl -X POST "http://192.168.167.46/a70.htm" -H "Origin: http://192.168.167.46" -H "Connection: keep-a
live" -H "Content-Type: application/x-www-form-urlencoded" -H "Upgrade-Insecure-Requests: 1" -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.170 Safari/537.36" -H "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3" -H "DNT: 1" -H "http://192.168.167.46/a70.htm?wlanacip=null&wlanacname=null&vlanid=0&ssid=null&areaID=null&mac=00-00-00-00-00-00" -H "Accept-Encoding: gzip, deflate" -H "Accept-Language: zh-CN,zh;q=0.9" -b "program=ip; vlan=0; ip=10.73.42.253; md5_login2=1809111038%7C284974" --data "DDDDD=1809111038&upass=284974&R1=0&R2=&R6=0&para=00&0MKKey=123456&buttonClicked=&redirect_url=&err_flag=&username=&password=&user=&cmd=&Login=&R7=0" --tlsv1 -o Sxinfo.txt logger "[Dr.com page verify] online status."
else
# always online
logger "[Dr.com page verify] already onine."
fi

##2、 如果需要实现多台电脑同时在线,就需要在校园网还没检测并下线之前重新拨号

对于上面的脚本进行任务计划,将时间间隔设置在11秒(防止拨号频繁被禁)

*/1 * * * * sleep 11 && /etc/storage/login.sh
*/1 * * * * sleep 23 && /etc/storage/login.sh
*/1 * * * * sleep 35 && /etc/storage/login.sh
*/1 * * * * sleep 47 && /etc/storage/login.sh
*/1 * * * * sleep 58 && /etc/storage/login.sh

#优化:

##1、 不知道为啥,校园网偶尔需要重新拨号,所以我写了一个脚本来以防万一

脚本三:

#!bin/bash
a=`ping -c 3 www.baidu.com | grep loss | awk 'BEGIN{FS=","} {print $3}'| awk 'BEGIN{FS="%"} {print $1}'`
b=0
if [ $a != $b ]
then
sh /etc/storage/login.sh
fi

主要作用就是ping一下百度,要是没有ping通就重新执行一下脚本。

这个脚本我给他设置的计划任务时间间隔是一分钟。

基于Linux的校园网破解思路和方法的更多相关文章

  1. 基于Linux整形时间的常用计算思路

    上一次分享了Linux时间时区详解与常用时间函数,相信大家对Linux常见时间函数的使用也有了一定的了解,在工作中遇到类似获取时间等需求的时候也一定能很好的处理.本文基于Linux整形时间给出一些简化 ...

  2. 基于Linux应用层的6LOWPAN物联网网关及实现方法

    本发明涉及一种基于Linux应用层的6LOWPAN物联网网关及实现方法,所述物联网网关包括开发平台以及无线射频模块,其实现方法是:所述6LOWPAN物联网网关的以太网网口收到访问6LOWPAN无线传感 ...

  3. 基于Linux平台的libpcap源码分析和优化

    目录 1..... libpcap简介... 1 2..... libpcap捕包过程... 2 2.1        数据包基本捕包流程... 2 2.2        libpcap捕包过程... ...

  4. 高性能Linux服务器 第10章 基于Linux服务器的性能分析与优化

    高性能Linux服务器 第10章    基于Linux服务器的性能分析与优化 作为一名Linux系统管理员,最主要的工作是优化系统配置,使应用在系统上以最优的状态运行.但硬件问题.软件问题.网络环境等 ...

  5. Linux系统启动那些事—基于Linux 3.10内核【转】

    转自:https://blog.csdn.net/shichaog/article/details/40218763 Linux系统启动那些事—基于Linux 3.10内核 csdn 我的空间的下载地 ...

  6. [信安Presentation]一种基于GPU并行计算的MD5密码解密方法

    -------------------paper--------------------- 一种基于GPU并行计算的MD5密码解密方法 0.abstract1.md5算法概述2.md5安全性分析3.基 ...

  7. 基于Delphi的三层数据库系统的实现方法

    基于Delphi的三层数据库系统的实现方法   1  引言 当前的数据库应用系统中,按其结构划分为两类,一类是两层结构的数据库应系统,另一类是多层结构的数据库应用系统. 两层结构的数据库应用系统包括客 ...

  8. 7个基于Linux命令行的文件下载和网站浏览工具

    7个基于Linux命令行的文件下载和网站浏览工具 时间:2015-06-01 09:36来源:linux.cn 编辑:linux.cn 点击: 2282 次 Linux命令行是GNU/Linux中最神 ...

  9. 【原创】shadowebdict开发日记:基于linux的简明英汉字典(四)

    全系列目录: [原创]shadowebdict开发日记:基于linux的简明英汉字典(一) [原创]shadowebdict开发日记:基于linux的简明英汉字典(二) [原创]shadowebdic ...

随机推荐

  1. ipmi配置方法-20200328

    ipmi配置错误-20200328[root@localhost home]# ipmitool lan set 1 ipsrc staticCould not open device at /dev ...

  2. C++知识点案例 笔记-5

    1.关系运算符重载 2.类型转换函数重载 3.转换构造函数 4.函数模板 5.显式实例化 6.类模板外定义模板函数 1.关系运算符重载 ==关系运算符重载== //直接(按分数)比较两个对象 #inc ...

  3. centos7下iperf的安装

    场景: 1.系统centos7.0-123,该版本下的网络测试工具iperf3 下载gz包#wget http://downloads.es.net/pub/iperf/iperf-3.0.6.tar ...

  4. 003.kubernets对于namespace的管理

    一 Kuberbetes的架构简单介绍 1.1 云计算的传统分类 1.2 kubernetes基础架构 工作机制 用户通过kubectl向api-server提交需要运行的pod描述 api-serv ...

  5. TcaplusDB君 · 行业新闻汇编(5月25日)

    TcaplusDB君一直密切关注着游戏行业和数据库行业的动态.以下是TcaplusDB君收集的近期的游戏行业和数据库行业的新闻,汇编整理,献给大家观看. (本篇文章部分内容来自网络) 第十一届中国数据 ...

  6. 如何正确地使用RecyclerView.ListAdapter

    默认是在一个fragment中实现RecyclerView. private inner class CrimeAdapter() : ListAdapter<Crime, CrimeHolde ...

  7. MongoDB(8)- 文档删除操作

    删除方法 db.collection.deleteOne() 删除单条文档 db.collection.deleteMany() 删除多条文档 db.collection.remove() 删除单条或 ...

  8. docker容器与镜像的区别

    今天抛开原理,抛开底层.通俗的讲解docker中容器与镜像的区别. 对于初学者来说,刚刚接触docker会有点迷,特别是镜像与容器.其实我们可以理解镜像与容器为一对多的关系. 下图错误的示范,为什么是 ...

  9. CVPR2020:端到端学习三维点云的局部多视图描述符

    CVPR2020:端到端学习三维点云的局部多视图描述符 End-to-End Learning Local Multi-View Descriptors for 3D Point Clouds 论文地 ...

  10. Contos8 安装 MariaDb 时报错:Could not open mysql.plugin table: table mysql.plugin

    导语: 因个人服务器误删了一些文件导致MariaDB崩溃,一直在报错,所以想着重装一下,没想到在重装后启动时再次报错(与之前报错不同),这次的报错原因大致是因为某些插件表找不到. 因此又开启了漫长的寻 ...