做压力测试时,有模拟的批量用户来自不同的IP地址这样的场景和需求,如果小伙伴用LR是很容易实现的,用IP欺骗即可实现。那么对于用Jmeter小伙伴是不是就不能享受这一技术了呢,答案是否定的,Jmeter一样可以实现,下面就来分享Jmeter IP欺骗技术的实现及过程

方法一(模拟虚拟IP):

 配置随机IP:

X-Forwarded-For

${__Random(10,200,)}.${__Random(2,255,)}.${__Random(2,255,)}.${__Random(1,255,)}

模拟 手机mac_address 模拟手机ip_java

方法二:手动添加伪造的IP地址

第一步:在负载机上绑定IP地址

说明:负载机需要是固定的IP地址

模拟 手机mac_address 模拟手机ip_IP_02

 

在负载机的网络连接里,找到你正在使用的连接(有线或无线)右键,点击属性,然后配置IP地址的相关信息,具体过程如下:

模拟 手机mac_address 模拟手机ip_java_03

 

模拟 手机mac_address 模拟手机ip_IP_04

 

说明:这里填写的是负载机的IP地址,windows系统查看本机IP地址的方法:

(1) 运行-cmd

(2) 输入:ipconfig,就可以看到本机的IP地址了

模拟 手机mac_address 模拟手机ip_java_05

 

第二步:点击高级,添加伪造的IP地址

模拟 手机mac_address 模拟手机ip_开发语言_06

 

这里添加的IP地址需要验证是否被占用(可以通过ip扫描工具检测:Advanced IP Scanner),如果没有被占用,则可以添加到这里

第三步:新增IP地址复制到文本

模拟 手机mac_address 模拟手机ip_java_07

 

方便后续请求时读取文本的IP地址,即用文本文件实现参数化

第四步:新建参数化请求

模拟 手机mac_address 模拟手机ip_java_08

 

这里配置的是我们的IP地址的文本文件路径,关于更详细的配置内容,请参考之前分享的内容

第五步:新建压力测试脚本

模拟 手机mac_address 模拟手机ip_jmeter_09

(1) 引用我们参数化配置的变量,实现参数化

模拟 手机mac_address 模拟手机ip_jmeter_10

 

(2) Implementation选择:HttpClient3.1

第六步:配置线程数及其它的相关配置

模拟 手机mac_address 模拟手机ip_IP_11

第七步:执行压力脚本

验证结果,是否实现我们不同IP地址请求的需求

模拟 手机mac_address 模拟手机ip_IP_12

 

从以上结果看出,我们已经实现了请求来自不同的IP地址,也就实现我们的IP欺骗的技术注意事项:

(1) 我们添加的IP地址一定是未被使用的,这部分需要手动验证,这点和LR是有区别

(2) 我们添加的地址需要复制到文本文件,然后进行参数化

(3) 在压力测试脚本中需要引用参数化变量,不要忘记了

文章参考:

Jmeter模拟不同的IP地址并发请求(IP欺骗技术)

jmeter不同的IP发送请求(模拟虚拟IP) - 小哥的吃喝玩乐