查看腳本執(zhí)行過程中是否使用了設(shè)置的虛擬ip,,可以如下設(shè)置
在腳本中添加代碼:
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,,IP欺騙設(shè)置問題總結(jié)
1,、 本地的IP設(shè)置不能為“自動獲取”,必須指定一個靜態(tài)IP
如果本地是動態(tài)獲取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地址改成靜態(tài)IP地址就可以了
2,、 所添加的IP只能是局域網(wǎng)內(nèi)的網(wǎng)段
只能添加192段,127段,,10段IP地址
3,、添加IP地址
第一步:
運行Mercury LoadRunner- Tools-IP Wizard
第二步:
選擇create new setting,點擊“下一步”
此時出現(xiàn)的頁面是讓輸入服務(wù)器的IP地址,,loadrunner通過該地址更新路由表,。
客戶端計算機上添加新的IP地址后,服務(wù)器需要將該地址添加到路由表,,以便能夠識別返回到客戶端的路由,。如果服務(wù)器和客戶端具有相同的子網(wǎng)掩碼、IP 類和網(wǎng)絡(luò),,則不需要修改服務(wù)器的路由表,。
注意: 如果客戶端和服務(wù)器計算機之間有一個路由器,則服務(wù)器需要識別經(jīng)過該
路由器的路徑,。確保將以下路由添加到服務(wù)器路由表:從 Web 服務(wù)器到路由器
的路由,,以及從路由器到負載生成器計算機上的所有 IP 地址的路由。
第三步:
在輸入服務(wù)器地址的頁面中不輸入任何地址,,直接點擊“下一步”
進入IP添加頁面
點擊“add”進行添加
第四步:
在from ip 輸入框中輸入起始ip,,在Number to輸入框中輸入ip地址的位數(shù)
輸入正確的子網(wǎng)掩碼
選中“verify that new ip addresses are not already used”
點擊“ok”,此時IP Wizard會自動按照設(shè)置生成IP地址,,并且將已經(jīng)占用的IP列出
第五步:
確認可用IP地址列表內(nèi)容后,,點擊“ok”
此時IP Wizard提示需要重新啟動計算機,,點擊“save as”保存IP列表
點擊“ok”,重新啟動計算機
第六步:
計算機重新啟動后,,在運行行中輸入:CMD,,在DOS命令窗口中輸入:IPCONFIG,此時便可看到虛擬的IP地址均已經(jīng)被啟用
4,、在loadrunner中使用虛擬IP
第一步:
打開controller,,在controller中,選擇 Scenario-〉Enable IP Spoofer,,此項設(shè)置允許使用IP欺騙,。注意:必須在連接到負載生成器之前選擇該選項。
第二步:
設(shè)計場景:
有兩種方案來設(shè)計場景
1,、 本地使用虛擬IP設(shè)計場景(不帶負載生成器使用localhost進行測試)
在設(shè)置該類場景時,,在場景中添加一個錄制好的腳本,該腳本中添加如下代碼便可看到虛擬用戶在使用哪個IP地址進行消息發(fā)送,,該場景是通過線程方式進行性能測試,。
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中執(zhí)行該腳本時,,查看虛擬用戶運行狀態(tài),,便可看到當前虛擬用戶使用的哪個IP地址發(fā)送消息
2、 負載生成器使用虛擬IP設(shè)計場景
在設(shè)置該類場景時,,需要添加負載生成器,,建立負載生成器時輸入創(chuàng)建的虛擬IP,每個負載生成器為一個虛擬用戶組,,該場景是通過進程方式進行性能測試,。
如何添加負載生成器創(chuàng)建場景在這里就不多描述了。
但需要注意,,選中Tools下的Expert mode,,啟動專家模式
再點擊Tools下的options
在Genearl選項卡中設(shè)置已線程方式或進程方式進行性能測試,這個選項一定要與當前場景的模式相匹配,,也就是說使用本地虛擬IP測試時需要選中線程方式,,使用負載生成器使用虛擬IP測試時需要選中進程方式
注意:在場景中進行設(shè)置虛擬ip設(shè)置后,運行場景報錯提示socket descriptor not found,,解決的方法是:
1)在場景中選擇Diagnostics——>Configuration中 Web Page Diagnostics的disable改為Eable(win7中LR11解決)
2)在controller里面,,Tool--->Option...---->Breakdown標簽里面,把Enable Web Page Breakdown選項取消掉就ok了
5,、使用虛擬IP測試完成后
打開IP Wizard,,釋放所有虛擬IP。
重新啟動計算機
注意:
利用 ip wizard增加的ip地址,,可以通過在cmd輸入ipconfig /all命令進行察看ip,,還可以在網(wǎng)上鄰居—屬性—本地連接—屬性—internet協(xié)議(tcp/ip)的屬性—高級—ip設(shè)置中察看ip地址,,我們可以在這里添加ip地址,刪除ip地址,。其中這里的添加ip地址功能等于利用loadrunner中的ip wizard增加的ip地址,。
1、設(shè)置的虛擬ip地址與是否在自己網(wǎng)段內(nèi)沒有影響,,如:自己的ip為:154.16.45.84,,設(shè)置的10個虛擬ip:192.168.1.1.....192.168.1.10。
2,、最好是設(shè)置完ip后要重新啟動機器,,ping一下,在cmd中察看一下(config /all),。
3,、在controller中打開Scenario - Enable IP Spoofer,和Tools > Expert mode(這一項我不知道有什么用途,,請高手指名---作用是啟動專家模式)
4、一定要把程序中的LoadRunner Agent Process打開,,要不然連接不上,。Advanced settings 》 Agent configurations進行相應(yīng)的設(shè)置。
5,、要虛擬很多IP的情況:在一臺機上虛擬的IP跨網(wǎng)段的處理,可通過在服務(wù)器端添加路由來實現(xiàn),。
例:
【服務(wù)器】IP:192.168.0.1
【測試機】IP:192.168.0.2
測試機上添加的虛擬IP: 192.168.10.1~254
那么在【服務(wù)器】端執(zhí)行以下命令:
route add 192.168.10.0 mask 255.255.255.0 192.168.0.2
注:【格式: route add 虛擬IP網(wǎng)段號 mask 255.255.255.0 測試
同意mfktafd的說法,如果和服務(wù)器在同一網(wǎng)段,,直接使用IP spooler就可以了,,設(shè)置一下IP地址的范圍,重新啟動負載生成器,,在Controller中直接使用IP欺騙就行了,。
現(xiàn)在還沒有試過不在同一網(wǎng)段中使用IP欺騙的情況, ...
更改一下其中的內(nèi)容就可了,
如果不想更改腳本,只接手動更新路由表也可以,
登陸服務(wù)器,執(zhí)行相關(guān)命令,
如WINDOWS
route add 10.0.0.0 mask 255.255.255.0 192.168.1.88 metric 1[增加的IP為10.0.0.1-255,本機IP為88]
linux 基本相同
route add -net 10.0.0.0 netmask 255.255.255.0 dev eth0
設(shè)置好了之后必須重啟電腦,。還有必須打開agent