在折腾了两天的openwrt、dd-wrt、tomato之后,我终于大彻大悟,买了一个极路由,直接用自带的h3c认证连上了校园网,从此过上了幸福快乐的生活…… 现在记录一下我的无线路由器折腾之旅。 之前买的无线路由型号是Asus RT-N12 D1 ,因为综合网上找到的资料和我的经济情况,买了一个品牌过硬(当然硬不过Netgear、思科)、可以刷openwrt的无线路由器。注意,如果你还是想要自己安装一个中大师兄写的h3c认证的软件的话,我建议还是买一个支持openwrt固件的无线路由器,因为网上的一些相关教程都是针对openwrt的。openwrt虽然可以刷入RT—N12 D1,但是却不能发射wifi,如果不是因为这个原因,我想我已经和它过上幸福愉快的生活了。 接下来说一下我为了能够使用无线路由器通过h3c认证在网上学到的东西。首先是3个主要的路由器固件:openwrt, dd-wrt, tomato。openwrt是三者之中最开放的,可定制性最强。dd-wrt是基于openwrt开发出来的,只用了一下,没什么感觉。Tomato是我买到RT-N12 D1之后刷的第一个固件,因为这款无线路由器是broadcom 53572芯片的,而网上介绍说tomato有专门为broadcom设计的固件版本。可是刷入tomato之后我才发现,根本就不能安装ipk格式的软件安装包,折腾良久,放弃了tomato。 接下来讲一下openwrt。刷入openwrt之后我才发现这个路由器对应的openwrt固件不能发射wifi,但是我抱着验证一下我编译出来的对应brcm47xx芯片类型的ipk包能不能用,把ipk传入了路由器中,接着安装成功,可惜最后在验证的时候总是出错,我觉得这已经证明了我的编译方法是对的,可能是代码本身有问题? 接下来说一下极路由如何设置才能在中山大学东校区通过h3c认证。通过web浏览器进入路由的设置界面192.168.199.1(第一次可以通过192.168.1.1进入)->互联网->高级设置->华三认证->启用、填入用户名(netID)、密码、在MD5校验方式中选择1(西南财经大学),保存即可。如果没有成功认证,重启路由器即可。
==下面说一下往路由器中通过tftp刷入固件的方法(针对ubuntu系统)==
安装tftp
sudo apt-get install tftp
在网络管理中新建一个以太网连接,在ipv4设置中选择手动设置。如果无线路由器的设置界面地址为192.168.1.1 (后面的设置相应的修改即可)
ip设为192.168.1.xx
netmask设为255.255.255.0
通过网线把计算机和路由器的LAN口连接,然后在ubuntu终端中进行tftp设置
逐行输入下面的命令,除了第一条命令,其他都是在进入tftp后在tftp中输入tftp
==启动tftp==verbose
binary
==设置传输二进制文件==trace
rexmt 1
==每1s尝试传输1次==timeout 60
==最多尝试60s==connect 192.168.1.1
==预连接到路由器,但并未连接==put file
==传输file文件,这里需要把file的相对路径写对,最好是放在启动tftp的那个文件夹中==
==在进行输入put file
之前,需要先让路由器进入救援模式(关闭电源,按住reset按钮启动电源,等待大约10多s,当电源灯开始慢慢闪烁的时候即可松开reset按钮)==
传输完成之后,等待几min,主要取决于那个固件大小,一般等到无线路由器的wifi灯亮了即证明已经刷入新固件。
==下面说一下如何交叉编译得到ipk文件==
配置openwrt的编译环境较为繁琐,因此建议使用docker,直接利用别人已经配置好的环境。
- 安装Docker wget -qO- https://get.docker.com/ | sh
下载运行docker-openwrt-buildroot镜像
docker run -t -i nemoalex/openwrt-buildroot /bin/bash
开始配置
cd openwrt
git clone https://github.com/zonyitoo/sysuh3c.git package/sysuh3c
==下载h3c的代码==make menuconfig
进入配置菜单之后需要进行仔细的配置,以RT-N12 D1为例,其芯片为broadcom 53572,在openwrt的wiki中查到,对应的Target为brcm47xx,mips74k,这些等下会用到,如果不清楚自己的路由器的这些信息,先去openwrt中查找一下。
1.首先进入Target System,找到合适的类型,我选择的是Broadcom BCM47XX/53XX (MIPS)
2.然后进入Subtarget.我选择的是MIPS 74K
3.在Target Profile中,如果不确定,就用默认的b43
4.在最下面的Utilities中选择sysuh3c
5.在Image configuration->Package signing options中选择Wait for a passphrase when signing packages
6.openssl genrsa -out privkey.pem 2048
生成RSA密钥
7.openssl req -new -x509 -key privkey.pem -out cacert.pem -days 1095
生成证书,否则等会会出现“Signing key has not been configured”的错误
8.开始编译make V=99
如果是多核CPU,为了加速,可以利用-j参数: make -j 核心数量*2 V=99编译成功
编译成功后会在
/home/builder/openwrt/bin/brcm47xx/packages/base
中找到sysuh3c_0.2-1_brcm47xx.ipk
,然后就可以通过scp传出来保存在本地计算机啦
==下面说一下如何在openwrt中安装ipk文件==
scp sysuh3c_0.2-1_brcm47xx.ipk root@192.168.1.1:/tmp
把ipk文件传入路由器中。如果不会scp命令可以看我另一篇博客
ssh连接到路由器
cd /tmp
opkg install sysuh3c_0.2-1_brcm47xx.ipk
安装完成后使用sysuh3c -u username -p password [-i interface] -d 进行认证
如果密码中有空格的,需要使用引号括起来
总的来说,如果不是想要折腾的,用极路由也够了。
转载于:https://blog.51cto.com/jayce1111/1844145