交叉编译mentohust实现锐捷认证共享上网

原创 2012年09月18日 09:05:53

RT, 首先感谢https://code.google.com/p/mentohust/大牛们提供的mentohust  我只是编译下......囧

还是那句话,管它协议是GPL 还是 BSD,但是请尊重开源精神,否则 请绕道

------github 镜像https://github.com/liuqun/mentohust  给打不开Google的人,不是我的clone的,也不是我的github账号

----------------------------------------------------------正文开始---------------------------------------------------------------------

先决条件:你有or准备入手一台能够正常运行ddwrt/openwrt/tomato等第三方rom的路由器,如果没,请直接跳到文章结尾处。


如果你有路由器,但是懒的自己编译,那就用我编译好的文件吧

适用于BCM47XX  BCM53XX RT305X等处理器

http://download.csdn.net/download/warriorpaw/4734127


如果遇到锁文件问题

ddwrt、tomato 固件请确定/JFFS目录可写

openwrt固件请

mkdir -p /jffs/tmp

mkdir -p /jffs/etc/mentohust

创建需要的目录

我几个路由器都主要使用ddwrt,就没再单独编一份适用于openwrt的,但已测试创建目录后可用

若不喜欢,请自行编译



1、准备

ubuntu12.04(我喜欢ubuntu,其他的也可以吧)

安装编译需要用到的包

sudo apt-get install build-essential bison flex zlib1g-dev libncurses5-dev subversion quilt intltool ruby fastjar unzip gawk


下载对应你路由器cpu的交叉编译链 下载地址:http://downloads.openwrt.org/backfire/10.03.1/ 

比如HG320路由  BCM5358的CPU MIPSEL构架 2.6内核的  就用brcm47xx/ 里面的Toolchain

如果是BCM5354系的CPU 用的是2.4内核固件,那么需要注意下,因为需要使用brcm-2.4/ 里面的Toolchain

但是这个Toolchain有bug不能用的,官方在SVN里修正源代码了,没编译,想用最新就自己参照文章末尾的链接去编译

不过不想自己编译的话OpenWrt-SDK-brcm-2.4-for-Linux-i686.tar.bz2 直接用这个老的也行


下载libpcap源码 http://www.tcpdump.org/


下载mentohust源码 svn checkout http://mentohust.googlecode.com/svn/trunk/ mentohust


2、配置交叉编译环境

解压下载的Toolchain

然后配置环境变量

export PATH=$PATH:/home/paw/mipsel-gcc-4.3.3/usr/bin/
export CC=mipsel-openwrt-linux-gcc
export CPP=mipsel-openwrt-linux-cpp
export GCC=mipsel-openwrt-linux-gcc
export CXX=mipsel-openwrt-linux-g++
export RANLIB=mipsel-openwrt-linux-uclibc-ranlib
export ac_cv_linux_vers=2.6.24
export LDFLAGS="-static"
export CFLAGS="-Os -s"
这个 别照抄,按照自己解压的位置使用的版本自己改下参数

(2012/10/19补充:GCC 4.6 需要STAGING_DIR环境变量,就是指向toolchain所在目录,按照上面的例子就是export STAGING_DIR=/home/paw/mipsel-gcc-4.3.3/)


3、编译libpcap动态连接库

解压libpcap-1.3.0.tar.gz

cd进去

生成Makefile

./configure --host=mipsel-linux --prefix=/home/paw/work/ --with-pcap=linux

如果这里出错,返回2请检查环境变量

make

这里会编译失败,具体出的什么错,没弄明白,但是我们需要的libpcap.a已经生成

cp走  不管它了




4、编译mentohust

cd进刚SVN生成的目录

这里需要修改一下源代码,因为源代码是为桌面版PC写的,它的配置文件、数据文件等路径都是指向/etc/,但是在ddwrt路由器上这个路径是只读的

修改下面2个文件的4个变量  如下

myconfig.c

static const char *CFG_FILE = "/jffs/etc/mentohust.conf";	/* 配置文件 */
static const char *LOG_FILE = "/jffs/tmp/mentohust.log";	/* 日志文件 */
static const char *LOCK_FILE = "/jffs/tmp/mentohust.pid";	/* 锁文件 */

myfunc.c

static const char *DATAFILE = "/jffs/etc/mentohust/";	/* 默认数据文件(目录) */

保存

自动生成configure

sh autogen.sh 

生成Makefile

./configure --host=mipsel-linux   --disable-encodepass --disable-notify --prefix=/jffs --with-pcap=~/libpcap.a

 --with-pcap=后面就是3生成的libpcap.a 拷贝到的路径

如果这里出错,返回2请检查环境变量 

make

如果顺利,用在你路由器上的二进制文件已经生成

上传到路由器

使用方法参照  http://wiki.ubuntu.org.cn/%E9%94%90%E6%8D%B7%E3%80%81%E8%B5%9B%E5%B0%94%E8%AE%A4%E8%AF%81MentoHUST



如果如上图所示已成功认证

把命令放在路由器开机脚本里面   以后只要打开路由器   想给多少人共用都可以

至于速度,看下图,学校没限速,100M跑满


OVER  enjoy it !


PS:没路由器啊,  那就在电脑上装个UBUNTU吧  用Google code上编译好的大便包吧  然后共享上网  电脑要一直开着哦。。。。



参考链接 : http://bbs.xmlad.com/viewthread.php?tid=521

交叉编译mentohust给Openwrt/LEDE

条件:你有or准备入手一台能够正常运行openwrt/LEDE等第三方rom的路由器,以及mentohust源码。 1.准备 类Unix环境必须要有的啦,这里有对大部分类Unix搭建环境的说明。 ...
  • qq_20240999
  • qq_20240999
  • 2017年03月28日 12:14
  • 2546

tp-wr720n刷openwrt+mentohust锐捷上网

现在各大高校基本用的都是锐捷拨号上网,然而有时候我们想多个设备(手机+电脑+平板)同时在线,但锐捷只能同时在一个设备上登陆。这时,我们就想到了路由器,但是普通的路由器又不能直接登陆锐捷,于是就有了这篇...
  • stc_XC
  • stc_XC
  • 2015年12月20日 14:33
  • 2723

OpenWrt+MentoHUST锐捷认证全套教程工具

  • 2013年09月23日 17:01
  • 3.17MB
  • 下载

树莓派编译mentohust源码实现有线上网

想要用树莓派在ubuntu mate的操作系统上搭服务器,但是无线上网不会有固定的ip地址,所以必须接通有线上网,然而学校的校园网必须使用锐捷认证才能上网,所以不得不用一直不太喜欢的mentohust...
  • Changer_sun
  • Changer_sun
  • 2017年11月25日 10:55
  • 145

关于路由器,锐捷破解,mentohust的使用

一、主旨 最近想要通过路由器直接通过锐捷的认证,然后连接VPN,然后发送WIFI信号。这篇博客主要是讲一下这之间出现的问题,以及解决情况。 二、通过路由器认证锐捷 通过路由器认证锐捷的方式有...
  • u011303443
  • u011303443
  • 2016年08月22日 09:39
  • 7187

为树莓派2的openwrt编译mentohust

接上篇 1.首先需要一个虚拟机 我用的是vmware+debian,virtual box当然也行,其他的系统也行 比如ubuntu之类的。2.下载树莓派2的openwrt的sdk http:/...
  • AGrapier
  • AGrapier
  • 2016年07月21日 20:49
  • 1482

极路由3刷OpenWrt/LEDE

很简单,第一步先获取开发者权限,进入云平台,点击路由器信息,拉到页面最下方,点开高级设置进行申请。之后需要关注极路由官方微信,绑定自己的社区账号,绑定完毕后即可安装开发者模式插件,接着安装开发者工具。...
  • qq_20240999
  • qq_20240999
  • 2017年03月28日 12:32
  • 5585

个性化编译LEDE

**个性化编译LEDE**
  • ypjalt
  • ypjalt
  • 2017年02月28日 17:26
  • 3119

LEDE 源码下载与编译

参考:https://lede-project.org/zh/start 基于Ubuntu 14.04 设备基于QCA9531+QCA9887架构 搭建编译环境 $ sudo apt-ge...
  • stone8761
  • stone8761
  • 2018年01月11日 10:57
  • 301

交叉编译mentohust实现锐捷认证共享上网

RT, 首先感谢https://code.google.com/p/mentohust/大牛们提供的mentohust  我只是编译下......囧 还是那句话,管它协议是GPL 还是 BSD,但是请...
  • warriorpaw
  • warriorpaw
  • 2012年09月18日 09:05
  • 20914
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:交叉编译mentohust实现锐捷认证共享上网
举报原因:
原因补充:

(最多只允许输入30个字)