锐捷认证有多网卡限制和使用代理服务的限制。
使用锐捷认证后,无法组件内部局域网以及使用vmware虚拟机,很不方便。
经观察,锐捷认证一分钟就检测一次。
先用 W32DASM 反汇编8021x.exe,然后查找 60EA0000,
这是因为1分钟=60000毫秒= 0x0000EA60毫秒(settimer的时间参数为UINT )
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004069C0(C)
|
:004069E8 6A00 push 00000000
:004069EA 6860EA0000 push 0000EA60
:004069EF 6A06 push 00000006
:004069F1 6A00 push 00000000
:004069F3 FFD7 call edi
:004069F5 8BCE mov ecx, esi
:004069F7 8986D80E0000 mov dword ptr [esi+00000ED8], eax
:004069FD E83E220000 call 00408C40
:00406A02 5F pop edi
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00406948(C)
|
:00406A03 5E pop esi
:00406A04 C20800 ret 0008
把第一处的 push 0000EA60 用 UltraEdit 修改为 push 00003075
看结果,发现半分钟后就出现提示,说明这里就
是关键。如何修改呢?简单的方法是把时间改的尽可能大,把push 0000EA60
修改为:
push FFFFEA60
然后试试,发现使用多网卡后,一分钟就提示的窗口消失了。
然后使用代理CCPROXY(此软件实现一个账号登陆锐捷,局域网内通过代理实现共享上网),看是否有问题,经过一天的运行,非常正常。
时间FFFFEA60是多少? >45天,45天重启一次,也可以忍受了。
哈哈,真是简单。只静态分析了一下,未调试就把它搞定了。