以前用njit-client的时候,会提示版本太旧,学校要求的iNode版本是 V3.60-E6307,不过学校提供的6307版的iNode客户端会45秒掉一次线。但是将他们配合使用,先用iNode连上网,然后在45秒之内用njit-client拨号,倒是可以上网,就是太麻烦。
既然njit-client只是提示版本太旧,那把版本号改了就应该可以了吧?于是就试着改版本好,然后重新编译安装了一遍。
首先下载最新的njit-client源码包,(下载完整源码,即download as tar.gz那一项)修改src目录下 auth.c 文件,大约在33行左右,把版本号修改成 3.60-6307:
const char H3C_VERSION[16]="EN V3.60-6307"; // 华为客户端版本号
const char H3C_KEY[] ="HuaWei3COM1X"; // H3C的固定密钥
然后运行help
sudo ./help
按照提示来就可以了。
然后参照帮助文件:
[从源代码编译]
为方便大家研究讨论,我们已将客户端源代码随编译好的可执行文件一同发布。
进行编译之前需安装的几个开发包如下:
对应Ubuntu/Debian的是:
sudo apt-get install libpcap-dev libssl-dev
对应Fedora/Redhat的是:
yum install libpcap-devel openssl-devel
从源码包开始编译客户端的命令为:
tar xzf njit8021xlient-1.0.tar.gz
cd njit8021xlient-1.0
./configure
make
安装:
make install
注1:默认安装至/usr/local目录,需要root管理员权限
注2:可以通过设置DESTDIR将编译好的文件输出至临时文件夹,然后压缩打包
make install DESTDIR="/tmp/临时文件夹"
...
cd /tmp/临时文件夹/
tar xzf njit8021xlient-1.0-i386.tar.gz .
安装完成后在/usr/local/sbin目录下面,而不是帮助文档里说的/usr/local目录。
然后在找到RefreshIP.py,重命名为njit-RefreshIP,复制到njit-client所在目录。在用
sudo njit-client account password
就可以联网了。
因为是64位系统,RefreshIP不能用,会报如下错误:
File "/usr/bin/njit-RefreshIP", line 41, in
ac.service = GetProperty('ServiceName', ac.obj, 'org.freedesktop.NetworkManager.Connection.Active')
File "/usr/bin/njit-RefreshIP", line 28, in GetProperty
return dbus.Interface(object, 'org.freedesktop.DBus.Properties').Get(interface_name, property_name)
File "/usr/lib/python2.7/dist-packages/dbus/proxies.py", line 70, in __call__
return self._proxy_method(*args, **keywords)
File "/usr/lib/python2.7/dist-packages/dbus/proxies.py", line 145, in __call__
**keywords)
File "/usr/lib/python2.7/dist-packages/dbus/connection.py", line 651, in call_blocking
message, timeout)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.AccessDenied: Property "ServiceName" of interface "org.freedesktop.NetworkManager.Connection.Active" isn't exported (or may not exist)
不过貌似联网依然正常,就没去管它了。
为了易用性,创建一个脚本:
#!/bin/sh
njit-client account password >/dev/null 2>&1 &
随便保存一个名字,比如njitclient,注意不用和njit-client同名,放到/usr/local/bin或者其他环境变量包含的路径,然后直接
sudo njitclient
就可以联网了,很方便,而且没有讨厌的不能关闭的终端了。
附上我编译的njit-client:
njit8021xclient-1.1-hnu_amd64.tar
博主能帮我编译一个吗?和你一样改下版本号就行,自己没有编译环境, 学校inode版本是V3.60-E6303
你系统32位还是64位?
博主你好,请问你是njit的学生吗?,今天我收到njit的ad,专业是CE。不知到你是什么专业,向请教你那里教学质量好不好,治安有没有网上说的那么坏?
才看到,,还差点没看懂,,,我不是njit的学生,只是njit-client是njit的学生开发的,,,ce我百度了是指土木工程,教学质量我就不知道了~
不好意思,我草率地就认为你是njit的了。囧
呵呵,没关系的
@zaiyouxian
不客气啦O(∩_∩)O~,希望以后可以多交流下,在爱晚的小组http://ubuntu.hnubbs.com
北校fedora用户表示感谢。:)