loadrunner 场景设计-IP Spoofer-多ip负载生成器(Windows平台)
IP Spoofer-多ip负载生成器
by:授客 QQ:1033553122
1 适用协议
LoadRunner的多ip功能允许运行在单一负载生成器上的Vuser可以通过多ip被识别。服务器和路由识别这些vuser为来自不同负载生成器上。


2 在负载生成器(load generator)上运行IP Wizard
Windows:
LoadRunner包含一个IP Wizard程序来创建多个ip地址。可以一次性添加ip到机器上并在所有场景中使用它.(注意:该工具要求网卡处于非DHCP模式下)
步骤1、打开IP Wizard
Start > Program Files > LoadRunner > Tools > IP Wizard
说明:
Create new settings:创建新的设置
Load previous settings form ___:加载之前的设置
Restore original settings:恢复初始设置
默认的,创建一个新的设置,单击下一步按钮
步骤2:填写服务器IP地址,点击下一步
步骤3:点击Add添加按钮,输入所需要构建的网段类型和ip数目
说明:
CLASS X: X类IP地址
Verify that new IP addressess are not already:可以校验IP地址是否存在。勾选后,该工具将对每个ip地址进行检测,如果已经被使用,那么去除,否则留下。
Number to add:要添加的ip数
注意:如果虚拟用户的数目大于ip的数目,那么用户之间的ip会出现重复的情况。
点击OK,如下,4个在使用中,奖被丢弃
步骤4:点击完成。
说明:
save as …:用于保存配置
Open IP Configuration…….:勾选后,点击ok,会打开如下文档信息
注意:
用IP Wizard将ip地址写入网卡后,可能不会即生效,可以用ipconfig命令来确认,如果显示的网卡中没新添加的ip信息,可以通过重启网卡的方式来完成生效工作(禁用网卡,启动网卡)
当脚本在远程Load Generator上运行时,只需要在对应的Load Generator 上配置多IP即可。
很多时候服务器对ip有限制策略,不允许同一个ip地址上有多个客户连接操作,这时就需要使用ip虚拟这个功能将虚拟用户脚本从一个ip运行变成不同的ip运行。
IP虚拟技术主要得益于TCP/IP的支持,在TCP/IP组中,一块物理设备可以绑定多个ip地址,打开网卡属性中的高级设置,找到ip设置标签,添加ip地址
步骤5:通过ipconfig命令确认多个ip是否已经应用在了物理网卡上

步骤6:确认网卡绑定多个ip地址后,在Controller中打开IP Spoofer支持功能即可
该选项打开后,在Controller最下方会出现图标,说明该功能正常运行。
注意:
使用该功能时请关闭所有多余的网卡,如无线网卡,虚拟机自带的虚拟网卡,否则Controller会读取所有本机网卡上的ip信息,导致虚拟ip的地址错误
步骤7、设置场景日志
如何检查每个脚本使用的ip地址呢?在打开IP Spoofer后,需要确保场景日志打开,并且将其设置为扩展日志,就可以在运行的日志中找到对对应的ip信息
步骤7替代方案
char *ip = NULL;
ip = lr_get_vuser_ip();
if(ip)
lr_message("The IP address is %s" , ip);
else
lr_message("IP spoofing disabled");
脚本中添加以上代码,
步骤8、查看日志结果
场景中点击Vusers…,见下图
右键Vuser,点击Show Vuser Log
如下,可见Vuser使用的ip地址
如使用替代方案则如下:
步骤9、释放IP
a) Start > Program Files > LoadRunner > Tools > IP Wizard
选择Restore original set…,下一步
b) 填写服务器ip
点击下一步
c) 移除ip
点击完成
点击OK
作者:授客
微信/QQ:1033553122
全国软件测试QQ交流群:7156436
Git地址:https://gitee.com/ishouke
友情提示:限于时间仓促,文中可能存在错误,欢迎指正、评论!
作者五行缺钱,如果觉得文章对您有帮助,请扫描下边的二维码打赏作者,金额随意,您的支持将是我继续创作的源动力,打赏后如有任何疑问,请联系我!!!
微信打赏
支付宝打赏 全国软件测试交流QQ群
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库