bnv

ip欺骗

上一篇 / 下一篇  2008-10-15 09:55:13 / 个人分类:进步一点点

转载http://www.51testing.com/?75241/action_viewspace_itemid_94850.html 

设置IP欺骗的原因

1、 当某个IP的访问过于频繁,或者访问量过大是,服务器会拒绝访问请求,这时候通过IP欺骗可以增加访问频率和访问量,以达到压力测试的效果。

2、 某些服务器配置了负载均衡,使用同一个IP不能测出系统的实际性能。LR中的IP欺骗通过调用不同的IP,可很大程度上的模拟实际使用中多IP访问和并测试服务器均衡处理的能力。

IP地址的设置

      IP地址的设置较为简单,可直接在本地连接中增加IP,或者通过LR自带的工具“IP wizard”设置,当然也可以使用其它软件设置。唯一需要注意的就是注意设置的IP的有效性。

 

“选项”中的
IP设置

使用“选项”对话框中的“常规”选项卡,可以选择IP地址模式。只有在专家模式下操作 Controller 时,才显示该选项卡。

要设置常规专家模式设置,请执行下列操作:

1.    选择“工具”>“选项”。将显示“选项”对话框。选择“常规”选项卡。

2.    选择多个 IP 地址模式。

需要注意的是,这里的IP地址模式和运行时设置中的常规设置的不同,会导致IP欺骗失效。具体该怎么设置,这里就不讲了,很简单的东西。

启用IP欺骗

 从 Controller 启用多个 IP 地址

定义多个 IP 地址后,您就可以设置一个选项,让 Controller 使用该功能。

要从 Controller 启用多个 IP 地址,请执行下列操作:

在 Controller“设计”视图中,选择“场景”>“启用 IP 欺骗器”。

注意:必须在连接到负载生成器之前选择该选项。

IP欺骗功能验证

       IP欺骗已经设置了,但是是不是有效呢?通常会有这样的疑问。下面我们通过一个简单的试验,来验证是否有效。

      在脚本的Action()部分增加如下代码:

       char * 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");

然后通过控制器设置并运行场景.

对于这段代码我始终是看不到他在那输出,所以我用了一个极端的方法,就是将lr_vuser_status_message”函数改为“lr_error_message”这样我就可以很容易看到是不是虚拟ip是否有效。  哈哈,这片文章就这一句话是原创。

 

易错点

 

    1、和Generator搞混。以为添加多个IP后,需要添加多个IP对应的Generator才可以使用。(同一个Generator只需要以其某一个IP添加到Generator列表中即可以使用其它的IP。)

    2、在上一个错误基础上,对于同一个脚本,创建多个Vuser执行组,然后以不同IP选择同一个物理Generator来执行。( 实际上,在场景中除非需要在这个Generator上运行多个不同脚本,否则没有必要多次以不同IP选择。)

    其实只要记住两个要素即可使用这个功能:

     1、 用IP wizard 添加多个IP;

     2、在Controller中通过Enable IP Spoofing。

    而在使用IP欺骗功能上应该注意三点:

     1、虚拟IP是同一个Generator上的多个IP,这种分配过程由Controller自动来进行;

     2、对于同一个Generator,你模拟的用户数量多于IP数量时,将会发生IP重复的现象,否则将随机分配不同的IP。

     3、对于同一个Generator,以其某一个IP添加到Generator中即可,不需要用不同的IP添加多次。

 

 

 

 


TAG: 进步一点点

 

评分:0

我来说两句

Open Toolbar