linux路由器的netkeeper客户端(多拨和编译)
感谢CQUPT的各位小伙伴,从大一到大三给予我在这些方面的帮助
单拨
netkeeper是重庆和全国其他很多高校的校园网电信账户认证客户端。原生客户端不能用于开热点,其他的我就不讲了。
首先需要编译,编译的源文件在github-miao1007这里有,我自己的github也fork了一份。
把这个文件夹git clone放入编译的openwrt源包文件的package
目录下,修改/package/network/services/ppp/Makefile
,按照下图修改以实现依赖的满足
然后在编译的时候,make config要选择network组里面的netkeeper—openwrt
和kmod-pppoe
组件,然后开始编译。编译好之后,在/etc/config/netowrk
文件里做修改,在wan口加入
1 | option pppd_options 'plugin chongqing_sxplugin.so' |
然后同步路由器时间,等待拨号成功。
多拨
如果需要多拨,就要编译的时候添加kmod—macvlan,在/package/network/services/ppp/patches/
下加入600-syncppp.patch,在编译好后,需要进系统修改/lib/netifd/proto/ppp.sh,以满足编译的依赖需要。修改按照下图
15是你多拨的次数,一般是双拨,改为2;60是你等待的秒数,一般是6-10。图片的行数似乎不太对。需要按照实际的ppp_generic_setup()
位置来修改。修改好后再配置自己的多拨的lan口,此处使用macvlan添加端口vth0:
1 | ip link add link eth0.2 name vth0 type macvlan |
这样就添加了vth0端口。
在/etc/config/network
里面添加vth0的拨号,仿照wan,只不过把粘贴后的config interface 'wan'
处的wan
改为nk1
,把原位置wan处的wan
改成nk0
,这样两拨的名称分别是nk0和nk1。把新的ifname处的eth0.2改为vth0。由于是多拨,需要在nk0和nk1后都添加
1 | option metric '数字' |
数字大小决定拨号的优先级,可以一个设为0,一个设为10。
推荐把
1 | ip link add link eth0.2 name vth0 type macvlan |
加入/etc/rc.local
开机启动,用来开机创建vth0并拨号
在防火墙处把nk0、nk1和wan6放一起。
最后,输入ifdown nk0& ifdown nk1
,关闭端口。再ifup nk0&ifup nk1
启动端口。查看是否都能拨号。