updateing/minieap

该项目是否能模拟Windows客户端进行认证?

Rhuua opened this issue · 5 comments

我校提供Windows客户端(V6.8.1)和Linux客户端(V1.3.1),此前正常使用该项目。但近一个学期学校可能进行了我不得而知的升级,连提供的Linux客户端都不能用了,只能用Win客户端,本项目自然也不能用了。
我尝试过跟学校网络中心反应,但得到的答复是暂时只能维持现状,建议我用无线校园网。可无线的质量……实在一言难尽。
我翻看了不少issue和资料,最接近我需求的只有在Windows上编译本项目,但似乎还是在模拟Linux客户端。
故请问该项目是否能模拟Windows客户端进行认证?需要改哪些地方?

我多年前抓包分析过6.x的Windows客户端,似乎整个协议都有较大更改,要支持的话应该是得完全重写了。
一定要用的话,跑个Windows应该是不可避免的。要让路由器下的设备共享,可以尝试中继程序方案。
另外我曾经听说Hyper-V虚拟机可以共享宿主机的MAC地址,虚拟机中认证后宿主机就能上网,也许可以从这方面调查看看。

我多年前抓包分析过6.x的Windows客户端,似乎整个协议都有较大更改,要支持的话应该是得完全重写了。 一定要用的话,跑个Windows应该是不可避免的。要让路由器下的设备共享,可以尝试中继程序方案。 另外我曾经听说Hyper-V虚拟机可以共享宿主机的MAC地址,虚拟机中认证后宿主机就能上网,也许可以从这方面调查看看。

共享MAC似乎是比较简便的方法,我先试试。
不知第一个中继程序是什么方案呢?似乎官方锐捷客户端会限制网卡数的欸。
重写的话,我估计是没这个能力了。可惜开虚拟机的方法实在太不优雅。

中继程序我只知道一个叫 agentx1 ,不确定还能不能支持最新版认证协议,原理是在路由器上运行,收到锐捷认证包后把其中的 MAC 地址改成路由器的 MAC 地址再发出,这种方式也是不可避免要跑个Windows。

本项目的算法移植自 hyrathb/mentohust,它原本是参照 Linux 版本客户端来做的,新的 Windows 版没有再研究过。

代理认证方面我也尝试过:mentohust-v4-proxy,README 中有说明。不过已经过去这么多年了,可能也不保证还能用了。

好的,我先试试,有结果再来反馈