【文章內(nèi)容簡(jiǎn)介】
techsupport”和NetScreen防火墻“get techsupport”命令類似,BIGIP系統(tǒng)也有對(duì)應(yīng)信息收集工具叫F5 Qkview Diagnostic Tool。在CLI界面中執(zhí)行“qkview”,Qkview工具執(zhí)行完成后將輸出信息保存在文件/var/tmp/hostname”中。在進(jìn)行故障診斷和尋求高級(jí)技術(shù)支持,別忘了執(zhí)行本命令??梢酝ㄟ^(guò)Web界面執(zhí)行qkview命令全面采集系統(tǒng)日志信息并下載下來(lái)。通過(guò)Qkview工具可以采集BIGIP上的配置信息及日志信息,以供離線的故障診斷。如果可以通過(guò)Web界面進(jìn)行管理,則可由System224。Support中運(yùn)行Qkview工具,運(yùn)行過(guò)程如下:Qkview運(yùn)行過(guò)程大概會(huì)持續(xù)3至5分鐘,執(zhí)行結(jié)果如下:點(diǎn)擊Download下載Qkview的輸出文件 。注意修改下載文件的文件名以免雙機(jī)的文件重名沖突。 如何查詢?cè)O(shè)備的序列號(hào)?負(fù)載均衡器的序列號(hào)可能從設(shè)備前面板右邊的機(jī)架安裝處獲得,是在一個(gè)條形碼標(biāo)簽下面以bip開(kāi)頭的一串字串。如果設(shè)備已經(jīng)上架,不方便查看設(shè)備的序列號(hào)的話,也可以通過(guò)License文件,獲取設(shè)備的序列號(hào)。License文件保存在/config/。在文件中搜尋以下信息(示例):Registration Key : J36062221005459581538313024Licensed version : Platform ID : Z100 如何使用TCPDUMP進(jìn)行Troubleshooting?當(dāng)業(yè)務(wù)無(wú)法正常工作時(shí),經(jīng)常需要在BIGIP上抓包進(jìn)行分析定位是什么原因?qū)е聰?shù)據(jù)包沒(méi)有被常轉(zhuǎn)發(fā)。BIGIP上提供了TCPDUMP抓包分析工具。TCPDUMP是Unix系統(tǒng)常用的報(bào)文分析工具,TCPDUMP經(jīng)常用于故障定位,如會(huì)話保持失效、SNAT通信問(wèn)題等。本文講述TCPDUMP命令的基本用法,更詳細(xì)的使用說(shuō)明請(qǐng)參見(jiàn)“man tcpdump”。命令語(yǔ)法: tcpdump [ adeflnNOpqRStvxX ] [ c count ] [ F file ] [ i interface ] [ m module ] [ r file ] [ s snaplen ] [ T type ] [ w file ] [ E algo:secret ] [ expression ]其中:216。 i 報(bào)文捕獲監(jiān)聽(tīng)的接口,如果不指定,默認(rèn)為系統(tǒng)最小編號(hào)的接口(不包括loopback接口),一般對(duì)指定Vlan名稱進(jìn)行監(jiān)控,如i external 是對(duì)external vlan進(jìn)行監(jiān)控;也可以對(duì)指定端口進(jìn)行監(jiān)控如 –i 。注意:當(dāng)vlan 名稱過(guò)長(zhǎng)時(shí),i后面直接用vlan名稱,tcpdump會(huì)出現(xiàn)錯(cuò)誤提示,這時(shí)需要將vlan名改由vlan加vlan ID代替。如有一vlan名稱為bip_external,vlan ID為2022,如要對(duì)bip_external vlan進(jìn)行監(jiān)聽(tīng),需采用i vlan2022的方式。216。 nn 不將IP地址或端口號(hào)轉(zhuǎn)化為域名或協(xié)議名稱注:與老版本的TCPDUMP命令不一樣,在BIGIP V10里面必須用兩個(gè)nn才能使IP地址與端口不會(huì)被轉(zhuǎn)化為域名或協(xié)議名稱顯示。216。 r 從文件中讀?。ㄔ撐募蓋選項(xiàng)創(chuàng)建)216。 s 確定捕獲報(bào)文大小216。 w 直接將捕獲報(bào)文寫(xiě)入文件,而不是對(duì)其進(jìn)行解析并通過(guò)屏幕顯示(與r選項(xiàng)對(duì)應(yīng))注:如果要將TCPDUMP所抓的包保存到文件,建議采用s1600 –w /var/tmp/filename的方式,s1600可以保證抓取完整的數(shù)據(jù)包,而/var/tmp使抓包文件保存在/var/tmp目錄。216。 x 每個(gè)報(bào)文以十六進(jìn)制方式顯示216。 X 每個(gè)報(bào)文同時(shí)以文本和十六進(jìn)制顯示216。 expression 匹配表達(dá)式的分組將進(jìn)行解析。如果不指定表達(dá)式,系統(tǒng)對(duì)所有分組進(jìn)行捕獲分析。復(fù)雜表達(dá)式可以使用“and”與、“or”或以及“not”非操作進(jìn)行組合。表達(dá)式有三種:252。 type 三種種類:host、net和port。比如:host 。如果不指定類型,默認(rèn)為host。252。 dir 有src、dst、 src or dst和src and dst四種方向。默認(rèn)為src or dst,即雙向。 252。 proto 常見(jiàn)協(xié)議有:ip、arp、tcp、udp、icmp等。如果不指定協(xié)議類型,默認(rèn)為所有協(xié)議。 舉例1:。端口不指定tcp和udp,默認(rèn)為同時(shí)對(duì)tcp和udp進(jìn)行報(bào)文捕獲。本命令不解析IP地址/端口號(hào)為主機(jī)名/服務(wù)名稱,同時(shí)顯示報(bào)文十二進(jìn)制和文本信息,報(bào)文最大為1500字節(jié)。f51:~ tcpdump i external nn X s 1600 port 1433 and host tcpdump: listening on external 21:48: : . 302192826:302192827(1) ack 558871968 win 64360 (DF) 0x0000 012c 0800 4500 0029 38cf 4000 7f06 c3b2 .,..E..)8.@..... 0x0010 8bd4 6002 0a4b 092c 04b1 0599 1203 18ba ..`..K.,........ 0x0020 214f b5a0 5010 fb68 a926 0000 00 !O..P..h.amp。... 21:48: : . ack 1 win 64636 (DF) 0x0000 012c 0800 4500 0028 cb2d 4000 7f06 3155 .,..E..(.@...1U 0x0010 0a4b 092c 8bd4 6002 0599 04b1 214f b5a0 .K.,..`.....!O.. 0x0020 1203 18bb 5010 fc7c a812 0000 0000 0000 ....P..|........ 0x0030 0000 .. 21:48: : . 304974934:304974935(1) ack 565108263 win 64882 (DF) 0x0000 012c 0800 4500 0029 38f7 4000 7f06 c38a .,..E..)8.@..... 0x0010 8bd4 6002 0a4b 092c 04b6 0599 122d 8c56 ..`..K.,..... 0x0020 21ae de27 5010 fd72 0a6b 0000 00 !..39。P..... 21:48: : . ack 1 win 65267 (DF) 0x0000 012c 0800 4500 0028 d3a6 4000 7f06 28dc .,..E..(..@...(. 0x0010 0a4b 092c 8bd4 6002 0599 04b6 21ae de27 .K.,..`.....!..39。 0x0020 122d 8c57 5010 fef3 08ea 0000 0000 0000 ............ 0x0030 0000 .. 舉例2:。本命令不解析IP地址/端口號(hào)為主機(jī)名/服務(wù)名稱,報(bào)文最大為1600字節(jié),捕獲信息以“/var/tmp/intdump”文件保存: tcpdump s 1600 i internal w /var/tmp/intdump host and host and port 8080如果查看該捕獲文件,請(qǐng)用tcpdump –r /var/tmp/intdump命令。也可以將捕獲的文件下載下來(lái)用Ethereal工具解包分析。 對(duì)某一Virtual Server用TCPDUMP命令無(wú)法抓到包如何處理?可能是該Virtual Server的屬性中選用了Performance Layer4類型,導(dǎo)致數(shù)據(jù)包由四層加層ASIC芯片處理而沒(méi)有流經(jīng)CPU引起,碰到這種情況,選取該Virtual Server將type由Performance Layer4臨時(shí)改為Standard再來(lái)用TCPDUMP命令抓包,抓包以后,改回到Performance Layer4。 TCPDUMP出現(xiàn)“truncatedip 1215 bytes missing!”信息是不是說(shuō)明網(wǎng)絡(luò)上有丟包?在BIGIP里面出現(xiàn)”TruncatedIP xxxx bytes missing”信息,一般來(lái)說(shuō)并不是網(wǎng)絡(luò)上有丟包引起的,而是在執(zhí)行TCPDUMP命令時(shí)沒(méi)有加上 –s0或s1600參數(shù)時(shí),而數(shù)據(jù)包大小超過(guò)TCPDUMP缺省的抓包大?。ㄈ绻患觭0或s1600參數(shù),則缺省的每個(gè)數(shù)據(jù)包只抓前面400byes),就會(huì)出現(xiàn)truncatedip的情況。出現(xiàn)這種情況,只需要重新輸入tcpdump命令,加上s0或s1600即可。 TCPDUMP 命令中的i interface中的interface用VLAN名稱(如external或internal)與接口編號(hào)()有什么區(qū)別?如果采用VLAN名稱作為i的參數(shù),TCPDUMP收集的數(shù)據(jù)包是經(jīng)由內(nèi)部接口到達(dá)TMM進(jìn)程經(jīng)由中央CPU處理的數(shù)據(jù)包。采用VLAN名稱作為i參數(shù)的局限性在于,由于PVA四層加速芯片時(shí)位于BIGIP的交換板(Swithboard)上,并不需要經(jīng)由主機(jī)板與交換機(jī)板的內(nèi)部接口到達(dá)中央CPU,因此TCPDUMP無(wú)法抓取這些四層加速的數(shù)據(jù)包。因此采用VLAN名稱作為i的參數(shù)一般是用于對(duì)采用Standard作為Virtual Server類型的應(yīng)用抓包時(shí)采用。注:如果Virtual Server是用PVA四層加速芯片作加速處理,則在Virtual Server的屬性中PVA Acceleration顯示為Full。(The PVA handles accelerated traffic in the following order: The PVA receives accelerated traffic from the switch subsystem The PVA transforms the packet in order to redirect the packet to the appropriate pool member The PVA sends the packet back to the switch subsystemFully accelerated traffic never reaches the internal trunk and is not processed by TMM. ) 如果采用接口編號(hào)作為i的參數(shù),則進(jìn)出該接口的數(shù)據(jù)包將先被鏡像給SCCP(SCCP是BIGIP的管理子系統(tǒng)),然后送到主機(jī)板上通過(guò)TCPDUMP抓包。由于是直接鏡像了端口,因此經(jīng)由四層加速芯處理的數(shù)據(jù)包也能被TCPDUMP獲取。采用接口編號(hào)作為i的參數(shù)的局限性在于,由于數(shù)據(jù)包是經(jīng)由SCCP(管理子系統(tǒng))轉(zhuǎn)發(fā)給主機(jī)板,數(shù)據(jù)包的處理速度有限,每秒只能處理200個(gè)數(shù)據(jù)包。因此采用接口編號(hào)作為i的參數(shù)一般是用于做基本網(wǎng)絡(luò)故障診斷時(shí)。(When tcpdump is run on an interface, the packet is copied on switch ingress to the SCCP, which then sends it to the host to be captured by tcpdump.LimitationsRunning tcpdump on a switch interface is ratelimited to 200 packets per second. Therefore, if you run tcpdump on an interface that is processing more than 200 packets per second, the captured tcpdump file will not include all of the packets.For example, the following mand will capture PVA accelerated traffic, but the syntax will result in a rate limit of 200 packets per second。)