使用loadrunner进行IP欺骗首先要注意以下两点: 1、 本地的IP设置不能为“自动获取”,必须指定一个静态IP 如果本地是动态获取IP,在运行IP Wizard时会弹出提示: The IP wizard does not support DHCP-enabled network cards. Your cards are either DHCP-enabled or configured with invalid settings. Please contact your system administrator. 此时只需要将IP地址改成静态IP地址就可以了 2、 所添加的IP只能是局域网内的网段 只能添加192段,127段,10段IP地址 好下面开始介绍如何使用IP欺骗 一、添加IP地址 第一步: 运行Mercury LoadRunner- Tools-IP Wizard 弹出的IP设置向导中的各项含义如下: 1、 create new setting 新建IP列表 当我们第一次使用IP欺骗或已经释放所添加的IP时,需要选择此项添加新的IP地址 2、 load previous setting from file 读取IP列表文件 从以前设置的IP地址列表文件中读取IP地址 3、 restore original setting 释放已设置的IP 释放已经添加的IP地址 说明:loadrunner在做IP欺骗时,真实的虚拟了IP地址,该IP地址均真实存在,可以ping通,可以建立网络链接,在不使用时必须进行释放,否则这些IP地址将一直存在。 第二步: 选择create new setting,点击“下一步” 此时出现的页面是让输入服务器的IP地址,loadrunner通过该地址更新路由表。 客户端计算机上添加新的 IP 地址后,服务器需要将该地址添加到路由表,以便能够识别返回到客户端的路由。如果服务器和客户端具有相同的子网掩码、IP 类和网络,则不需要修改服务器的路由表。 注意: 如果客户端和服务器计算机之间有一个路由器,则服务器需要识别经过该路由器的路径。确保将以下路由添加到服务器路由表:从 Web 服务器到路由器的路由,以及从路由器到负载生成器计算机上的所有 IP 地址的路由。 第三步: 在输入服务器地址的页面中不输入任何地址,直接点击“下一步” 进入IP添加页面 点击“add”进行添加 第四步: 在from ip 输入框中输入起始ip,在Number to输入框中输入ip地址的位数 输入正确的子网掩码 选中“verify that new ip addresses are not already used” 点击“ok”,此时IP Wizard会自动按照设置生成IP地址,并且将已经占用的IP列出 第五步: 确认可用IP地址列表内容后,点击“ok” 此时IP Wizard提示需要重新启动计算机,点击“save as”保存IP列表 点击“ok”,重新启动计算机 第六步: 计算机重新启动后,在运行行中输入:CMD,在DOS命令窗口中输入:IPCONFIG,此时便可看到虚拟的IP地址均已经被启用 二、在loadrunner中使用虚拟IP 第一步: 打开controller,在controller中,选择 Scenario-〉Enable IP Spoofer,此项设置允许使用IP欺骗。 第二步: 设计场景: 有两种方案来设计场景 1、 本地使用虚拟IP设计场景(不带负载生成器使用localhost进行测试) 在设置该类场景时,在场景中添加一个录制好的脚本,该脚本中添加如下代码便可看到虚拟用户在使用哪个IP地址进行消息发送,该场景是通过线程方式进行性能测试。 char * ip; ip=lr_get_vuser_ip(); if (ip) { lr_vuser_status_message("The ip address is %s",ip); } else lr_vuser_status_message("IP spoofing disabled"); 在controller中执行该脚本时,查看虚拟用户运行状态,便可看到当前虚拟用户使用的哪个IP地址发送消息 2、 负载生成器使用虚拟IP设计场景 在设置该类场景时,需要添加负载生成器,建立负载生成器时输入创建的虚拟IP,每个负载生成器为一个虚拟用户组,该场景是通过进程方式进行性能测试。 如何添加负载生成器创建场景在这里就不多描述了。 但需要注意,选中Tools下的Expert mode,启动专家模式 再点击Tools下的options 在Genearl选项卡中设置已线程方式或进程方式进行性能测试,这个选项一定要与当前场景的模式相匹配,也就是说使用本地虚拟IP测试时需要选中线程方式,使用负载生成器使用虚拟IP测试时需要选中进程方式 三、使用虚拟IP测试完成后 打开IP Wizard,释放所有虚拟IP。 重新启动计算机
|