2011年11月5日更新OpenWRT环境下编译njit-client源码包,版本号暂定为1.1

1233 views
Skip to first unread message

刘群

unread,
Nov 16, 2011, 9:57:18 AM11/16/11
to njit8021xclient
编译安装步骤
0、准备OpenWRT或DD-WRT编译环境,这里假定编译目录为OpenWRT,事先已经编译好了交叉编译工具链。

1、njit8021xclient-1.1.tar.
gz是源码包,不需要手动解压缩,直接放到到OpenWRT/dl目录下。

2、Makefile-1.1.zip里面是ipk包的Makefile,解压缩后将整个njit8021xclient目录放到OpenWRT/package目录下

3、在OpenWRT目录内运行make menuconfig,选中Network-->njit8021xclient,设置为<M>或<*>决定是否制作ipk包,然后保存退出。
然后运行:
make package/njit8021xclient/compile
开始编译客户端。期间,make会自动编译客户端所依赖的动态库

4、编译完成后到OpenWRT/bin目录下找到编译好的几个ipk包,包括njit8021xclient、libopenssl、libpcap
     将ipk包安装到路由器,就可以运行njit-client了

有问题请加QQ 517067180 阿群

njit8021xclient-1.1.tar.gz
Makefile-1.1.zip

与非门

unread,
Dec 17, 2011, 10:46:20 PM12/17/11
to 校园网802.1X客户端开发小组
我昨天照着说明将IPK安装到了路由器上,也成功实现了验证
但是,IP无法更新,命令行提示:/bin/sh: njit-RefreshIP: not found
我尝试了更改src 目录 auth.c 第 261 行的
system("njit-RefreshIP");
将其改为system("./njit-RefreshIP"); or system("/njit-RefreshIP");
都不能更新IP 命令行提示变为:
/bin/sh: ./njit-RefreshIP: not found or /bin/sh: /njit-RefreshIP: not
found
请问我该怎么办呢?

刘群

unread,
Dec 20, 2011, 10:01:50 AM12/20/11
to njit802...@googlegroups.com, domo...@gmail.com
在 2011年12月18日 上午11:46,与非门 <domo...@gmail.com> 写道:
> 我昨天照着说明将IPK安装到了路由器上,也成功实现了验证
> 但是,IP无法更新,命令行提示:/bin/sh: njit-RefreshIP: not found
>
> 请问我该怎么办呢?

与非门,你好!

1.1版本的njit-client暂时没有做好刷新IP地址的问题,原因是本人不熟悉路由器,囧。
请自行配置静态IP地址或试试这个命令刷新IP地址:
udhcpc --renew

—— 刘群,2011-12-20于青岛

asxzy

unread,
Dec 21, 2011, 11:46:55 PM12/21/11
to 校园网802.1X客户端开发小组
作者,你好。刚好我这两天也在折腾openwrt下的njit-client。看到了你的这个包,甚是感动。。

关于自动刷新ip,openwrt下可以禁用,udhcpc会自动处理,我打包了一个patch,屏蔽掉了njit-RefreshIP脚本,希望有所
帮助

http://file.asxzy.net/njit8021xclient-packages.tar.gz

On 12月20日, 下午11时01分, 刘群 <liuqu...@gmail.com> wrote:

刘群

unread,
Dec 23, 2011, 10:30:20 AM12/23/11
to njit802...@googlegroups.com, asx...@gmail.com
在 2011年12月22日 下午12:46,asxzy <asx...@gmail.com> 写道:
> 作者,你好。刚好我这两天也在折腾openwrt下的njit-client。看到了你的这个包,甚是感动。。
>我打包了一个patch,屏蔽掉了njit-RefreshIP脚本,希望有所帮助
>
> http://file.asxzy.net/njit8021xclient-packages.tar.gz
>

ASXZY,你好!
谢谢你提供的补丁,虽然只是通过注释掉了调用njit-RefreshIP的一行源代码。
我想知道udhcpc --renew是否能解决刷新IP地址的问题

Jeova Sanctus Unus

unread,
Dec 23, 2011, 4:43:15 PM12/23/11
to njit802...@googlegroups.com
要不,获取ip别py了,给个独立的参数,然后,程序调用下?

在 2011年12月22日 下午12:46,asxzy <asx...@gmail.com> 写道:

> --
> 您收到此信息是由于您订阅了“校园网802.1X客户端开发小组”论坛邮件列表。
> 要在此论坛发帖,请发电子邮件到 njit8021xcl...@googlegroups.com
> 要退订此论坛,请发邮件至 njit8021xclie...@googlegroups.com
> 更多选项,请通过翻墙软件访问我们在Google网上论坛的页面
> http://groups.google.com/group/njit8021xclient

刘群

unread,
Dec 24, 2011, 8:58:48 AM12/24/11
to njit802...@googlegroups.com, jeova.sanctus.unus
在 2011年12月24日 上午5:43,Jeova Sanctus Unus <jeova.san...@gmail.com> 写道:
> 要不,获取ip别py了,给个独立的参数,然后,程序调用下?
>

也可以用bash脚本,获取IP地址,比如创建一个脚本文件,内容如下:

#!/bin/sh
udhcpc -renew

或者是Ubuntu环境下:

#!/bin/sh
sudo dhclient

最后把这个bash脚本的文件名保存为njit-RefreshIP,加上可执行权限,然后放在/bin目录下

刘群

unread,
Oct 27, 2012, 12:13:33 PM10/27/12
to njit802...@googlegroups.com, kon...@gmail.com
请删除Ubuntu下libpcap-dev包的一个文件:
/usr/bin/pcap-conifg
此文件会导致OpenWRT环境下编译njit-client出错

刘群

unread,
Oct 27, 2012, 12:16:33 PM10/27/12
to njit802...@googlegroups.com
编译安装步骤
1、准备OpenWRT编译环境,这里假定编译目录为OpenWRT,事先已经make完整编译成功了一次,即已经制作好了交叉编译工具。另外如果Ubuntu系统中有/usr/bin/pcap-config文件请删除,该文件会影响我们交叉编译路由器程序

2、附件Makefiles-1.2.zip里面是制作ipk包专用的Makefile,解压缩,然后将njit8021xclient目录放到OpenWRT/package目录里。该版本的Makefile在编译时会自动从github网站下载相应版本的njit-client源码包

3、在OpenWRT目录内运行make menuconfig,选中Network-->njit8021xclient,设置为<M>制作ipk包,然后保存退出。
然后运行:
make package/njit8021xclient/compile
开始编译客户端。make会自动编译客户端所依赖的动态库。如果之前一次也没有编译过整个OpenWRT,则最好是先运行不带选项的make命令完整编译一遍。


4、编译完成后到OpenWRT/bin目录下找到编译好的几个ipk包,包括njit8021xclient、libopenssl、libpcap
     将ipk包安装到路由器,就可以运行njit-client了
有问题请加QQ 517067180 阿群
Makefiles-1.2.zip

Ma Xiaojun

unread,
Oct 28, 2012, 1:48:10 AM10/28/12
to njit802...@googlegroups.com
On 10/27/12 11:13 AM, ��Ⱥ wrote:
> ��ɾ��Ubuntu��libpcap-dev���һ���ļ���
> /usr/bin/pcap-conifg
> ���ļ��ᵼ��OpenWRT�����±���njit-client����

���Ȅh���ܹ���һ���з��յ����飬�������
sudo mv /usr/bin/pcap-conifg /usr/bin/pcap-conifg.bak

��α�����ʲôԭ����Ubuntu��bug��������bug�����߻���֪����

刘群

unread,
Oct 28, 2012, 2:47:28 AM10/28/12
to njit802...@googlegroups.com
Ma Xiaojun在来信中提到
> 首先刪除总归是一件有风险的事情,不如改名:
> sudo mv /usr/bin/pcap-conifg /usr/bin/pcap-conifg.bak
>
> 其次背后有什么原因,是Ubuntu有bug还是你有bug?或者还不知道?

1、改名或者删除/usr/bin/pcap-conifg均可,这只是libpcap开发包的一个普通文件,删掉不会影响Ubuntu操作系统。

2、libpcap源码包提供的pcap-config是一个脚本文件,帮助程序员简化编译配置选项。问题出在pcap-config只支持x86平台编译器,不支持交叉编译。我把njit8021xclient的源代码放在OpenWRT的编译环境中,结果编译时错误的调用了Ubuntu系统的/usr/bin/pcap-config脚本,把x86的C语言stdio.h等头文件引入到交叉编译过程中。这种错误应该被称为“头文件污染”。

—— Liu Qun, 2012.10.28
Reply all
Reply to author
Forward
0 new messages