zonyitoo / sysuh3c

H3C CLI Client for SYSU, which is implemented in C/C++. With an OpenWRT version.
MIT License
116 stars 37 forks source link

EAP Auth Fail #11

Open VictoriousRaptor opened 7 years ago

VictoriousRaptor commented 7 years ago

EAP Auth Start ERR: eapauth_auth error : 2144002128 在输入用户名及密码之后出现,每次后面的数字不同 系统为pandorabox,路由器newifi mini,sysuh3c为最新版

zonyitoo commented 7 years ago

试下这个Commit 13a078febace393fba518b6b784ee8d206f10028 ,也许跟 #9 有关

benwwchen commented 7 years ago

@FlameRaptor @zonyitoo 如果 openwrt 分支里的旧版 ipk 能用的话,可能是只有部分宿舍认证方式改变了。

更新:这种错误可能与验证方式无关,因为看输出还没到 MD5 验证的阶段。

benwwchen commented 7 years ago

@FlameRaptor 你的 Pandorabox 版本是?我记得以前一开始也遇到过你这种错误,后来改用 OH3C 了,最近才发现在 14.09 版上 sysuh3c 又能用了。

VictoriousRaptor commented 7 years ago

@benwwchen Pandorabox版本14.09 另外在若干次尝试中有一次的输出是这样的,这次加上了-d参数,但是在之后的尝试中无法重现 EAP Auth Start Got EAP Request for Identity Got EAP Request for MD5-Challenge EAP Failure @zonyitoo 我的路由器不是ar71xx架构,无法使用所给的commit

cloudhan commented 7 years ago

不是验证方式改变。他们服务器端出问题了。路由器登不上去之后,我试过改密码,但是inode的密码不会变,怎么改都不会变,教务网什么的就可以用新密码登录。去网络中心叫他们手动把你踢下线就好了。

PS: 我抓包看,好像inode的验证方式不是 密码串 xor md5 啊,试过文档里的 MD5(id + passwd + md5) 也不对 (:з」∠), 这个验证方式是什么版本的啊

benwwchen commented 7 years ago

@FlameRaptor 出现 EAP Failure 用的是昨天编译的版本还是以前的版本? @cloudhan 至善园 9 号是改成了 MD5('id' + 'passwd' + 'md5') (是拼接不是相加)的方式。也许不同宿舍楼不一样?

cloudhan commented 7 years ago

@benwwchen 不常常用来concatenate么😂。不过我这个包是在我账号异常的情况抓的,会头再抓一遍试试就知道了

VictoriousRaptor commented 7 years ago

@cloudhan 我在今早改过密码,改完之后就路由器以前的认证就挂了,但是我用inode的新密码可以登陆 @benwwchen 昨天的版本

benwwchen commented 7 years ago

@FlameRaptor 旧版有试过吗? 试试这个: njit8021xclient_1.3.1-testing_ramips_24kec.ipk.zip

cloudhan commented 7 years ago

的确是不同的地方有不同的认证方式的样子。我在至8用旧版的可以。

但是会有如下问题:

EAP Auth Start
Got EAP Request for Identity
Got EAP Request for MD5-Challenge
EAP Success
Got EAP Request for Identity
Got EAP Request for Identity
Got EAP Request for Identity

一直 Request 下去,但是网是能上了

zonyitoo commented 7 years ago

就是这样的,心跳包。一直都这样就对了

zonyitoo commented 7 years ago

@FlameRaptor 我的意思是,用这个Commit的代码

VictoriousRaptor commented 7 years ago

我查出来是什么问题了……就是手贱改了密码,在末尾加了一个感叹号,改回原来的密码并使用https://github.com/renbaoke/h3c 的项目就行了 sysuh3c各个版本均有概率联通,有时候可以,有时候会返回那串错误数字 有一次是在Got EAP Request for Identity 之后返回错误数字的

zonyitoo commented 7 years ago

返回错误数字的错误以前我也遇到过,但无法知道是什么问题。后来它又会自己好了的。 所以这个问题是解决了吗?解决了就Close

zonyitoo commented 7 years ago

另外各位如果有新编出来的 .ipk 包可以提个PR补充一下么

VictoriousRaptor commented 7 years ago

@zonyitoo 基本上和你说的一样,多试几次就能连上了 但是第一次永远连不上,有没有办法做到开机启动?

zonyitoo commented 7 years ago

我以前一年就没关过机

FanFansfan commented 7 years ago

同Pandorabox, 看了一下代码不应该出现随机数的呀,返回的都是枚举值

FanFansfan commented 7 years ago

找到print随机数的问题了,应该是display_msg处fprintf接收变长参数的原因,改成vfprintf就好。

zonyitoo commented 7 years ago

.. 真?那真是解决了一个千年老坑

FanFansfan commented 7 years ago

@BurningRaptor @zonyitoo PandoraBox上面上线困难的情况似乎也解决了,抓包发现start包的长度和windows客户端发的长度不一致,填充长度之后秒上。之前那种情况,似乎认证服务器不认可长度不对的start包,但是网络环境中会有广播的request id包,刚好被接收到的话才能上线。

zonyitoo commented 7 years ago

Interesting, 以前我用的时候没有这样的情况,看来变化很大

benwwchen commented 7 years ago

刚刚发现另一个神奇的事情是两个室友最近都要换回以前 xor 的认证方式才能上线了,而我的还是要用 md5 才能上,看来认证方式可能还跟帐号有关……随机数仍然是没有再遇到过(一年多前遇到过,那时换用了 OH3C),看来可能是有很多种不同情况。

FanFansfan commented 7 years ago

@BurningRaptor @zonyitoo PandoraBox上面上线困难的情况似乎也解决了,抓包发现start包的长度和windows客户端发的长度不一致,填充长度之后秒上。之前那种情况,似乎认证服务器不认可长度不对的start包,但是网络环境中会有广播的request id包,刚好被接收到的话才能上线。

今天又测试了一下。以上结论不对。

ar71xx平台发包完全正常。pandorabox在eth0.2上tcpdump能看到start包,但是wan口并没有相应的包出现。pandorabox开发者表示可能是路由的交换机把包drop了。填充包之后就能正常发包。测试了oh3c,同样不行。pandorabox 版本16.03。 PS:我现在也要用回xor了。