2008-08-23

学校的锐捷认证在Linux下可行性的进一步测试

  上次研究ubuntu 8.04 的64位下运行锐捷的方法就是为了在学校的宿舍实现linux下的锐捷认证。
  上次虽然完成了程序的运行,但是最终还是没有能够成功的认证,究其原因,因为我们学校的锐捷认证是通过绑定mac地址+dhcp实现的,而锐捷那个可悲的客户端dhcp分配本身就似乎有问题,去官方论坛问了好久也没人回帖。无奈之下又试了好几个网上能找到的开源版,不过最终都没用,最终,采取了强制的静态ip的方法。因为这种分配机制ip不是一直都是随机分配的,有一个租用期限,这个期限之内理论上强制用同一个ip是没问题的。根据网上搜集到的资料确实有人用这种方法成功通过认证。可惜的是用这种方法仍然无法认证。回复的错误信息是“不允许的客户端”。
  之后因为舍友奇怪的错误,我弄了个网上的锐捷客户端3.22-1113,居然也同样不能认证,提示的也是同一个错误"不允许的客户端",要知道我们学校使用的客户端版本号就是3.22-1113(当然程序显然是我们学校专用的),会出这种错,推测可能是学校专用版发送的数据包里有特别的识别信息。所以其他的客户端显然是不行用的。而我也很久没有抓过包了,各种知识也生疏了,要从这方面入手恐怕很困难,于是只能想想别的方法。

  不久,逆转的机会出现了。我在考虑一种假设:linux主机,通过kvm运行windows,在windows中认证,然后linux主机通过这台认证过了的windows虚拟机上网。
  基本原理虽然简单,但是其中可能遇到的问题相当的多,为此,我们需要做黑箱测试(因为我在计算机方面比较喜欢动手而不是纯粹逻辑思考)。为了便于调试,我选择先在windows环境下。


平台:
主机:windows xp sp2
虚拟化软件:VMware 6.5
客户机:windows server 2003 standard
锐捷认证成功后,我的客户机的网络设置是:ip:10.5.27.108 ,mask 255.255.254.0 Gateway:10.5.26.1,DNS:210.XX.XX.XX


  我们第一个要测试的项目是,在虚拟化的环境下是否能在虚拟机中进行锐捷认证。所以我选择了桥接网络模式,结果证实是可以的,我现在的这篇博文就是在虚拟机下远程登录我的另外一台机器写的。因此也证实连接是稳定可靠的。
  确认能够认证了以后,我就开始考虑它的网络模型了,因为我知道在存在多块网卡,或者开启代理服务器的情况下,锐捷认证是会code 4断开的。所以最理想的情况就是在这种桥接模式下。客户机开启路由服务,主机通过客户机连接。
  我查阅了很多资料。开启了windows 2003的路由与远程访问中的路由服务,也确实使用了lan路由功能,查阅了ip路由表,确认了设置是正常的。但是,无论如何,主机都无法连接至客户机之外的任何主机。甚至连真正的网关都ping不通。去年学的ccna的详细知识中关键的部分忘了不少。暂时是没办法搞定这种情况。于是只能先停手,等待下次ccna学好再风云再起。。。
  不过话说回来,这个时候我也在怀疑是否是虚拟机提供的虚拟网络模式不能允许这种连接方法。因此,为了证明虚拟机可以允许我的这种连接的想法,我打算采取不稳定,但是更加容易的一种方法。
  
  传统的虚拟机应用都是主机能够上网,为了让虚拟机上网一般VMware提供的两种方法。一个桥接,一个nat。但是这次因为我们的需求,所以要让它反过来。不过由于VMware设置nat的原理,我们不能用这个,但是,我们可以通过其他的方式实现。
  基本思路是虚拟机再增加一个虚拟网卡,这个网卡作为内部网络的网关。而虚拟机原来的网卡作为连接的真正网卡。
  首先,还是使用桥接。在客户机进行锐捷认证。之后使用Sygate office 4.5来配置代理服务器。不过果然麻烦的是一般的方法还是有问题,查阅了不少资料以后,终于成功了,我使用的方法如下:
  • 先建立一个网卡Microsoft Loopback Adapter,在添加硬件那里就可以添加了。
  • 之后为这个网卡配置一个ip,只需要配置ip地址和子网掩码。我这里的设置是192.168.0.11和255.255.255.0
  • 然后在sygate中配置,选择use Single NIC mode,Gateway IP for internal设置成前前面建立的虚拟网卡的ip地址。Local Area Network Connections 设置成客户机的网卡。
  • 主机的设置把主机的ip指定成和客户机中的虚拟网卡同一个网段,我的设置是192.168.0.111,子网掩码,255.255.255.0,网关和DNS都是那个虚拟网卡的地址也就是我这里的192.168.0.11.
  • 之后,只需要在虚拟机中开启sygate服务,等锐捷认证成功了以后,sygate中的状态显示已经上线了,确定客户机能够正常连接。这个时候主机终于成功的通过客户机连接到网络了。




注意图中的红圈,我这里只要dns能连通就可以上网了。最右边的红圈里面的东西消失是因为这个时候锐捷已经断线了。这也就是这种方法的大问题,锐捷会自动检测代理,这种情况下是会自动掉线的。所以虽然证明了结论但是还是没有可行性的。

好了,这次基本就这些,剩下的下次有机会再测试的时候有了新进展就会更新的。

/*******************************************
*原创文章,转载请注明出处
*******************************************/

没有评论: