LR中的IP欺骗详解
1.详解IP Wizard配置与应用
点击开始—程序—Mercury LoadRunner—Tools—IP Wizard,启动IP Wizard工具。
IP Wizard 工具有3个选项:
A 创建新设置
B 从文件中加载原有设置
C 恢复原始设置
选择创建新设置选项,单击下一步,出现界面:
这里需要填写的是服务器的IP地址,可以检查服务器的路由表,以确定向负载生成器添加新的IP地址后路由表是否需要更新。
继续点击下一步,可以单击【Add】按钮继续添加IP地址
点击确定,工具会自动扫描哪些IP已经在使用并且提示不会添加
单击确定出现如下界面,就是即将添加的IP地址
单击完成,显示IP向导概要,选中“Reboot now to update routing tables”选项,重启系统。
最后,可以通过ipconfig/all 命令检查新增的IP是否成功添加。
【注意】:成功添加多个虚拟IP地址后,在LR的Controller负载时启用,首先必须保证Scenario—Enable IP Spoofer功能选中打开,其次,在进行场景设置时可以通过单击“Generators(生成器)”和”Vusers(虚拟用户)”两个按钮针对不同的脚本或者不同的虚拟用户应用不同的IP地址,最后执行场景即可。
从文件中加载原有配置选项---可以从先前配置好的文件直接加载进来,文件格式为*.ips文件
恢复原始设置---可以释放已添加的IP,恢复原始设置
【重点提示】
- Load Generator机器必须使用固定的IP,不能使用动态IP并且确保应用到的IP与网络中其他机器IP地址不冲突。
- 设置好的虚拟IP后,必须保证Enable IP Spoofer选项被选中。
- 必须启动Agent Process.
最后完善脚本,在脚本最后编写如下脚本代码:
#include “web_api.h”
Action()
{
Char *ip;
ip=lr_get_vuser_ip();
if(ip)
lr_output_message(“当前虚拟用户使用的IP为:%s.”,ip);
else
lr_output_message(“[Enable IP Spoofer]选项没有被启用!”);
return 0;
}
4.LR在进行负载的时候,如果不事先指定给每个虚拟用户分配的IP地址,那么LR将自动进行分配,否则按指定的IP地址进行负载,如果虚拟的IP地址个数大于虚拟用户数,则能够保证每个虚拟用户用不同的IP地址,否则部分虚拟用户的IP地址会重复被使用。