Feb 19

狂喜:无线路由器asus wl-520gu通过校园网锐捷802.11x认证! 不指定

felix021 @ 2009-2-19 08:48 [IT » 硬件] 评论(27) , 引用(1) , 阅读(35741) | Via 本站原创 | |
@ 2010-05-29
我手头已经没有交叉编译工具链了,这个newstar,可能只适用于武大信息学部宿舍8栋,有问题估计帮不了忙了,真抱歉。
如果需要dd-wrt的,可以试试在这里的这个(tomato也许也能用呢):
http://www.right.com.cn/forum/viewthread.php?tid=29702&extra=page%3D2

-----
@ 2009-05-01
建议看看这篇文章:开源无线路由器固件上 Bug 的故事
http://blog.xiaoding.org/post/bug-story-on-open-source-routers-2.html
就是说,其实WL-520gu的交换芯片BCM5354是有个BUG的,如果使用多播协议的802.1x认证可能无法搞定。。。

-----

花了这么多天的时间,果然是值得阿!
寒假在家里搭建的buildroot确实可以交叉编译,但是编译出来的东西在路由器上不能运行!
于是很郁闷地看了不少资料,才发现,原来dd-wrt和tomato固件都是基于linux-2.4的,
但是寒假搭建的那个,linux内核直接down的是2.6.28....
反正是牛头不对马嘴了。
于是去下载openwrt提供buildroot来搭建交叉编译工具链。
说简单也很简单:
1. svn下来openwrt的buildroot
$ su
$ mkdir /cross
$ cd /cross
$ svn co svn://svn.openwrt.org/openwrt/branches/whiterussian/

2. 参照这篇 [在ubuntu8.10 下建立 ARM-Linux 交叉编译环境] 的内容进行如下修改:
1) 安装一些必须工具
  $ sudo apt-get install bison flex build-essential patch libncurses5-dev
2) 修改一些系统文件
  a)ubuntu的sh是链接到dash的,修改回bash
    $ cd /bin
    $ sudo ln -sf bash /bin/sh
  b)用用新立得软件包管理器安装gcc-4.1(自带的gcc4.3.2无法编译成功!但不用卸载),然后
    $ sudo ln -s /usr/bin/gcc-4.1 /usr/bin/gcc  (gcc只是一个soft link,回头再链回到gcc-4.3就可以了)
      如果不安装gcc-4.1,就会出现2个问题:
    ~~ /usr/include/bits/fcntl2.h:51: error: call to '__open_missing_mode' declared with attribute error: open with O_CREAT in second argument needs 3 arguments
    编译到这里的时候提示这个错误,是因为没有第三个参数,gcc 4.3.2严格的语法检查不让通过;你可以修改 gcc-<版本号>/gcc/collect2.c的1575行附近,加上第三个参数0777,变成 redir_handle = open (redir, O_WRONLY | O_TRUNC | O_CREAT, 0777);  然后就可以继续编译
    ~~ 尽管可以继续编译,但是还会出现这个问题:*** buffer overflow detected ***: mipsel-9tdmi-linux-gnu-ar terminated
    哈,编译出来的这个程序根本就有问题!所以还是老老实实地安装gcc 4.1吧!

3) 安装配置
    $ cd whiterussian/openwrt
    $ make menuconfig
    应该不用选太多东西,不过libgcc, libpcap, uClibc++最好选上,因为编译newstar需要它们。

4) 开始搭建toolchain
    $ make
  安装过程中会需要下载n多个包,速度超慢,建议是开始下载的时候按下Ctrl+C,然后复制下载链接到迅雷下载,然后再copy到这个目录的dl目录下面

5) 不出意外,搭建好了!配置环境变量
    $ export PATH=$PATH:/cross/whiterussian/openwrt/staging_dir_mipsel/bin
    可以把这一行加入到.bashrc或者/etc/profile中,免得每次要编译都输入一遍:)

6) 下载这个newstar.mips.tar.gz (@2009-02-19 19:00修正了一个BUG)
   
下载文件 (已下载 1555 次)

    $ tar zxvf newstar_mips.tar.gz
    $ cd newstar.mips
    $ make
    如果有需要,可以修改feli_net.cpp里面的几个文件的路径,比如log,tmp,config。
    注意Makefile里面有个 ARG=-static,也就是这个是静态编译的,大小有1.8MB呢,不过反正我有个1G的U盘空间,无所谓——还是有个USB口来得好阿!

  7) 拷到路由器,配置运行
    $ telnet 192.168.1.1 //telnet到路由器的命令行下
    $ ./newstar config
    我用的asus wl-520gu,WAN网卡是vlan1,配置的时候interface填这个就OK!
    $ ./newstar


  8) 如果需要编译其他程序
    $ mipsel-linux-g++ -static hello.c -o hello.out

哦也哦也哦也!手机可以上校园网了!!!!!
 

转载请注明出自 ,如是转载文则注明原出处,谢谢:)
RSS订阅地址: http://www.felix021.com/blog/feed.php
zeroheart
2010-10-1 23:47
牛吟啊fear
riac
2010-7-31 12:47
die  弄了好久終於可以了

太感恩啦unhappy

不過make 過程超久

我的9.04跑了2個多小時 

哈,終於可以寫DD程式啦 zan
jacky235
2009-11-6 21:33
wfhwfh毕业了。。。
有兴趣可以试试加入QQ群86079951
福星老师 Email
2009-10-22 21:56
现在openwrt svn目录改了,原文1应该是:
1. svn下来openwrt的buildroot
$ su
$ mkdir /cross
$ cd /cross
$ svn co svn://svn.openwrt.org/openwrt/branches/whiterussian/

了吧?

谢谢博主文章,正在编译,呵呵
felix021 回复于 2009-10-23 12:23
嗯 能svn下来就ok :)
phanming Email
2009-9-9 19:27
我也是用802.1x认证,我买了一个h3c  br204+,说是支持这个认证,结果不行,请老大帮助我一下,我不知道如何解决。
felix021 回复于 2009-9-9 23:48
我也都快忘光了。。你还是问那谁吧,人肉一下,嗯。
phanming Email
2009-9-8 23:22
wfhwfh 请和我联系,我也是用802.1 我也是多播触发,我不知道如何做,我用的是h3c204+的路由器,不能用,老大给我联系一下,教我跪求!!!crycrycrycrycrycrycrycrycry
felix021 回复于 2009-9-8 23:31
我没有他的联系方式,你在网上找找吧。
soro
2009-7-6 23:18
感谢您为我们带来这么好的东西!!

我是新手,想将您的客户端用于锐捷校园网,我目前的想法是编译好客户端后用tomatoedit 将它打包进firmware,但不使用usb是否可行? 有几个疑问的地方请指教

1. 没有了usb , 那./newstar config后的配置文件存放在哪里?
2. log文件大小会不会一直增加,是否需要关闭Log功能,如何关闭?

还有能说明一下  tomato 1.23 ND 和非nd的区别吗?

十分感谢
felix021 回复于 2009-7-7 01:14
你的想法很好。其实我最后就是这么做的,打包进去以后空间够用。日志使用了临时文件,其实就是存放在内存中的。在程序中做些少量修改限制日志文件大小既可。我的配置存放于nvram中,可以用system函数调用nvram命令修改和读取,保存到文件中,然后程序再从文件中读取。具体可参见本blog其他几篇相关日志。

我的客户端可能只适用于武汉大学校园网。建议看看googlecode上的ruijieclient项目。

nd是new driver的简写,貌似,详情参见2cna.cn的一个帖子。
joshua
2009-5-29 12:54
zanzan

老大,请帮着编译 :
drcom-for-linux-2.6:

http://sourceforge.net/project/showfiles.php?group_id=128089

让它能在 DD-WRT V24K 里运行.

谢谢.
joshua
2009-5-29 12:51
老大 能不能帮我编译 drcom-for-linux-2.6

http://sourceforge.net/project/showfiles.php?group_id=128089

让它能在 DD-WRT V24中 使用.

先谢谢啦.
zanzan
felix021 回复于 2009-5-29 14:16
...可是DD-WRT是Linux 2.4的
hehe
2009-5-4 21:47
newstar_mips.tar.gz 下载后提示解压缩错误
sandy
2009-5-2 17:20
newstar还是存在些问题。我改用superstar源码进行修改编译了之后在XDU成功通过验证。不止武大学生可以用了。

ps,貌似下面那位的评论出了些问题啊。
felix021 回复于 2009-5-5 18:04
下面那个是引用,不是评论
开源无线路由器固件上 Bug 的故事(二)
[2009-5-1 02:26]
来源:知也无涯
内容:上一篇文章花了很大的气力讲了开放源代码第三方家用无线路由器固件的基本情况和绕过这个 bug 的办法。绕过 bug 在很多时候不失为一种有效的选择,特别是像之前我遇到的情况:开发组在...
Xiaoding Homepage
2009-4-28 18:50
你这个程序在发送登录请求的时候,目的MAC地址是广播地址 FF-FF-FF-FF-FF-FF对吗?

如果用到多播方式验证的话,似乎就有问题了
felix021 回复于 2009-4-28 20:39
嗯,这个只是给武大的校园网用的
wfhwfh
2009-4-27 19:32
LZ你的校园网带宽有多大,最快下载速度是多少,
我这用7231-4P路由拨号简直是浪费了带宽啊,最快下载才2M/s,电脑直接拨号能过5M/S以上的,
不知道你的520GU的WAN-LAN转换效率如何呢
felix021 回复于 2009-4-27 20:20
带宽是100Mb,但是不知道多少人共享,反正我见过最快9M多。平常一般下载就是一两MB,520gu最快见过三四MB,但是没测上限。
Xiaoding Homepage
2009-4-26 11:24
请问你这个程序没有用到 libpcap ?  如何实现的抓包和发包? 我看原来的mystar 是会用到 libnet 和libpcap 的?

至于编译出来的大小问题,你可以使用 strip 命令去掉一些调试信息,也可以使用 upx 给它压缩一下,效果会比较好。
felix021 回复于 2009-4-26 16:05
用到libpcap了。
我已经用了strip,然后就只有500多K了。然后直接hack到tomato的包里刷进去。
分页: 1/2 第一页 1 2 下页 最后页
发表评论
表情
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
打开HTML
打开UBB
打开表情
隐藏
记住我
昵称   密码   *非必须
网址   电邮   [注册]