依据我们上次的免拆刷uboot并刷入固件教程之后,又给大家带来了在pandorabox固件上的python运行dr.com登录脚本,首先还是软件准备,drcom版本在登陆器右上角

(注意我的drcom客户端版本为5.2.0(D) 固件上的python版本为2.7我是win10系统 )
一、软件准备(打包下载地址: )
1、putty_V0.63.0.0.43510830.exe
2、python-2.7.12rc1.amd64.msi(window版用于实验py脚本是否运行正常)
3、UltraEdit(用于保存文件的uinx换行符格式)
4、WinSCP_5.9.0.6786_Setup.exe(用于上传脚本)
5、Wireshark-win64-2.2.0.exe(window下抓包)
6、PandoraBox-ralink-hg255d-r333-20141228.bin(潘多拉固件)
7、tftp2.exe(上传固件刷机工具)
二、刷入固件(电信原版uboot无法刷入此固件)
1、设置本地连接:ip为192.168.1.100子网掩码为255.255.255.0
2、打开tftp2.exe ip为192.168.1.1 密码留空 选择固件PandoraBox-ralink-hg255d-r333-20141228.bin
3、按住路由器wps、wlan、reset任一键开机,此时迅速点击tftp2中的Upgrade按钮此时lan灯狂闪
4、等待5分钟左右此时电源灯和wifi灯亮则可以尝试登陆192.168.1.1(如果打不开请更换浏览器打开)
三、安装测试路由器环境
1、进入PandoraBox管理界面选择,系统》管理,在“允许远程主机连接到本地ssh转发端口”前打勾,点击保存并应用
2、用putty连接192.168.1.1默认端口即可,输入默认管理用户名和密码,即可登陆路由器
3、依次输入3行代码(只要不报错没有error就行)
# opkg install python-mini
# opkg install python
#python
4、如果显示python的版本号就证明环境已经搭好
四、win下抓包和输出脚本
下面就是重头戏了,使用的Dr.com设置相关Python脚本源代码见:https://github.com/drcoms/drcom-generic。使用说明见:https://github.com/drcoms/drcom-generic/wiki。支持D、P、X三种版本的Dr.Com模拟。下面以我所在校园网的D版介绍配置流程。
你还得确认你的电脑上也安装了Python环境,才能进行后面的有关调试。然后下载两个python脚本备用:
1、D版Dr.Com配置生成器脚本:https://raw.githubusercontent.com/drcoms/generic/master/drcom_d_config.py
2、Dr.Com登录认证脚本:https://raw.githubusercontent.com/drcoms/generic/master/latest-wired.py
安装并使用wireshark在官方客户端登录前开始截包,做一次完整的截包动作然后登出,保存为wireshark截包文件 , 比如dr.pcapng(扩展名为pcapng)。

将下载的d版配置生成器与第一步的截包文件放到同一个目录下,并且将生成器脚本drcom_d_config.py中filename = ‘xxx’这一行中的xxx改为刚才保存的截包文件名dr.pcapng。
进入命令提示符(或shell)进入drcom_d_config.py所在目录,输入:
python drcom_d_config.py > config.txt
(cmd知识讲解:
输入“盘符:”即可切换磁盘
输入“cd空格文件夹名”即可进入文件夹)
这个脚本程序自动从截包文件中提取出Dr.Com配置所需的参数,保存在config.txt文件中。现在打开config.txt,将类似
server = ‘172.17.254.6’
username=’hahahahaha’
password=”
CONTROLCHECKSTATUS = ‘\x20’
ADAPTERNUM = ‘\x04’
host_ip = ‘\x0a\x68\x82\x03’
IPDOG = ‘\x01’
host_name = ‘DRCOMFUCKER’
PRIMARY_DNS = ‘\xd3\x53\x30\x21’
dhcp_server = ‘\xd3\x53\x37\x2a’
AUTH_VERSION = ‘\x0f\x00’
mac = 0x28d244090e15
host_os = ‘WINDIAOS’
KEEP_ALIVE_VERSION = ‘\x0f\x27’
的段落拷贝出来,新建一个drcom.conf文件(需要使用UltraEdit文本编辑器以保存Unix换行符的文件)备用,同时覆盖Dr.Com登录认证脚本latest-wired.py中从 # CONFIG 到 # CONFIG_END 中间的部分,注意自行修改password的值为你实际的Dr.Com登录密码。
下面先在电脑上测试下latest-wired.py是否真的能取代Dr.Com官方客户端软件完成登录认证。测试前要先修改latest-wired.py中IS_TEST = False这一行,将赋值改为True。在电脑上运行latest-wired.py看是否能上网,能上网就成功了,只要把这个脚本放到路由器上运行就可以抛开电脑由路由器自行完成校园网接入了。
用WinSCP以ftp或scp登录PandoraBox,将latest-wired.py上传到路由器的/usr/bin/里,改名为drcom(记得改回IS_TEST = False),并且给予执行权限(chmod +x /usr/bin/drcom.py)。将前面创建好的drcom.conf上传到路由器的/etc/目录。编辑路由器上的/etc/rc.local,在
exit 0
前加入一行
python/usr/bin/drcom
现在重新启动一下HG255d试试,路由器能自行完成校园网Dr.Com登录认证,无需开电脑就可以用你的手机、Pad等无线设备通过路由器上网冲浪了。