1、前言
用过电信闪讯的同窗都知道,闪讯没有开发Linux的客户端程序,因此这让不少玩Linux操做系统同时又是闪讯用户的同窗很头疼,今天我就来介绍一下如何在Linux下链接闪讯网络,而且支持有线链接和无线链接。node
2、使用教程
1. 克隆此仓库到本地
2. 安装ppp依赖
sudo apt-get install ppp
3. 修改或确认makefile文件的TODO项
makefile中的TODO项都有相关的注释,不一样的系统可能有不一样的配置,应先确认。github
4. 安装和编译
在仓库目录下执行:shell
sudo chmod a+x INSTALL
sudo ./INSTALL zhejiang_xiaoyuan_sxplugin
#(其余地区请更换,地区列表在makefile内)
5. 链接闪讯网络
因为闪讯网络有两种方式链接,有线和无线,方法略有不一样。bash
首先在命令行执行ifconfig命令,记录下有线网卡和无线网卡名称,有线网卡名称是e开头的,无线网卡名称是w开头的,不一样设备的名称不同。网络
5.1 有线链接操作系统
直接使用如下命令链接有线:命令行
sudo connect_sx
参数分别是闪讯用户名和密码code
# 其后直接使用这个命令就能够了
sudo connect_sx
# 更改密码
sudo connect_sx
# 断开链接
sudo connect_sx stop
若链接不上,则尝试如下命令后再次尝试链接。
sudo del default route
sudo add default route
sudo connect_sx
5.2 无线链接
使用如下命令链接
pppd noauth nodetach defaultroute usepeerdns maxfail 1 user password mtu 1492 mru 1492 plugin rp-pppoe.so nic- plugin zhejiang_xiaoyuan_sxplugin.so
须要配置的参数有用户名和密码,以及你的无线网卡名,此方法也能够用来链接有线,在网卡名填入对应的有线网卡名便可。
3、链接脚本
针对以上链接方式,为了便于链接,我写了如下脚本,仅供参考。
#!/bin/bash
# 是否链接有线
ETH_STATE=`cat /sys/class/net/enp4s0/operstate`
# 是否链接无线
WLAN_STATE=`cat /sys/class/net/wlp1s0/operstate`
# 链接的无线网络名称 其中wlp1s0是无线网卡名
WLAN_NAME=`iwconfig wlp1s0 | grep ESSID | awk -F\" '{print $2}'`
# 帐号密码
username=12345678911@DZKD.XY
password=123456
# 有线链接
if [ "up" == $ETH_STATE ]
then
connect_sx
fi
# 无线链接
if [ "up" == $WLAN_STATE ]
then
# 我所在环境能连闪讯的有三个无线WIFI
if [ "ChinaNet-shanxun" == $WLAN_NAME ]||[ "ChinaNet-tRmt" == $WLAN_NAME ]||[ "ChinaNet-tRmt-5G" == $WLAN_NAME ]
then
pppd noauth nodetach defaultroute usepeerdns maxfail 1 user $username password $password mtu 1492 mru 1492 plugin rp-pppoe.so nic-wlp1s0 plugin zhejiang_xiaoyuan_sxplugin.so
else
echo "is not shanxun"
fi
fi
在后台运行脚本:
sudo nohup ./shanxun.sh &