De documentatie van dit product is waar mogelijk geschreven met inclusief taalgebruik. Inclusief taalgebruik wordt in deze documentatie gedefinieerd als taal die geen discriminatie op basis van leeftijd, handicap, gender, etniciteit, seksuele oriëntatie, sociaaleconomische status of combinaties hiervan weerspiegelt. In deze documentatie kunnen uitzonderingen voorkomen vanwege bewoordingen die in de gebruikersinterfaces van de productsoftware zijn gecodeerd, die op het taalgebruik in de RFP-documentatie zijn gebaseerd of die worden gebruikt in een product van een externe partij waarnaar wordt verwezen. Lees meer over hoe Cisco gebruikmaakt van inclusief taalgebruik.
Cisco heeft dit document vertaald via een combinatie van machine- en menselijke technologie om onze gebruikers wereldwijd ondersteuningscontent te bieden in hun eigen taal. Houd er rekening mee dat zelfs de beste machinevertaling niet net zo nauwkeurig is als die van een professionele vertaler. Cisco Systems, Inc. is niet aansprakelijk voor de nauwkeurigheid van deze vertalingen en raadt aan altijd het oorspronkelijke Engelstalige document (link) te raadplegen.
In dit document worden verschillende technieken voor analyse van pakketvastlegging omschreven die bedoeld zijn om netwerkproblemen effectief op te lossen.
Cisco raadt kennis van de volgende onderwerpen aan:
Voordat u begint met het analyseren van pakketopnames, is het ten zeerste aan te raden om aan deze vereisten te voldoen:
De informatie in dit document is gebaseerd op de volgende software- en hardware-versies:
De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u zorgen dat u de potentiële impact van elke opdracht begrijpt.
Packet capture is een van de meest over het hoofd geziene tools voor probleemoplossing die vandaag beschikbaar zijn. Dagelijks lost Cisco TAC veel problemen op met de analyse van vastgelegde gegevens.
Het doel van dit document is om netwerk- en beveiligingsingenieurs te helpen bij het identificeren en oplossen van veelvoorkomende netwerkproblemen, voornamelijk op basis van analyse van pakketafvang.
Alle scenario's die in dit document worden gepresenteerd, zijn gebaseerd op echte gebruikerscases in het Cisco Technical Assistance Center (TAC).
Het document behandelt de pakketopnames vanuit het oogpunt van een Cisco Next-Generation Firewall (NGFW), maar dezelfde concepten zijn ook van toepassing op andere apparaattypen.
In het geval van een Firepower toestel (1xxx, 21xx, 41xx, 93xx) en een Firepower Threat Defense (FTD) applicatie kan een pakketverwerking gevisualiseerd worden zoals getoond in de afbeelding.
Op basis van de getoonde architectuur kunnen de FTD-opnames op drie (3) verschillende plaatsen worden gemaakt:
Het proces wordt beschreven in dit document:
FXOS-opnamen kunnen alleen worden gemaakt in de ingangsrichting vanuit het oogpunt van de interne switch die hier in de afbeelding wordt weergegeven.
Hier weergegeven zijn dit twee opnamepunten per richting (vanwege de interne switch-architectuur).
Opgenomen pakketten in de punten 2, 3 en 4 hebben een virtuele netwerktag (VNTag).
Opmerking: FXOS-opnamen op chassisniveau zijn alleen beschikbaar op FP41xx- en FP93xx-platforms. FP1xxx en FP21xx bieden deze mogelijkheid niet.
Belangrijkste opnamepunten:
U kunt de gebruikersinterface van het Firepower Management Center (FMC UI) of de FTD CLI gebruiken om de FTD Lina-opnamen in te schakelen en te verzamelen.
Opname vanuit CLI inschakelen in de INSIDE-interface:
firepower# capture CAPI interface INSIDE match icmp host 192.168.103.1 host 192.168.101.1
Deze opname komt overeen met het verkeer tussen IP's 192.168.103.1 en 192.168.101.1 in beide richtingen.
Schakel ASP-opname in om alle pakketten te zien die door de FTD Lina-engine zijn gedropt:
firepower# capture ASP type asp-drop all
Een FTD Lina-opname exporteren naar een FTP-server:
firepower# copy /pcap capture:CAPI ftp://ftp_username:ftp_password@192.168.78.73/CAPI.pcap
Een FTD Lina-opname exporteren naar een TFTP-server:
firepower# copy /pcap capture:CAPI tftp://192.168.78.73
Vanaf de FMC 6.2.x-versie kunt u FTD Lina-opnamen inschakelen en verzamelen via de FMC UI.
Een andere manier om FTD-opnames te verzamelen van een door FMC beheerde firewall is deze.
Stap 1
In het geval van LINA of ASP neemt u de opname over naar de FTD-schijf.
firepower# copy /pcap capture:capin disk0:capin.pcap Source capture name [capin]? Destination filename [capin.pcap]? !!!!
Stap 2
Navigeer naar de expertmodus, zoek de opgeslagen opname en kopieer deze naar de /ngfw/var/common-locatie:
firepower# Console connection detached. > expert admin@firepower:~$ sudo su Password: root@firepower:/home/admin# cd /mnt/disk0 root@firepower:/mnt/disk0# ls -al | grep pcap -rwxr-xr-x 1 root root 24 Apr 26 18:19 CAPI.pcap -rwxr-xr-x 1 root root 30110 Apr 8 14:10 capin.pcap -rwxr-xr-x 1 root root 6123 Apr 8 14:11 capin2.pcap root@firepower:/mnt/disk0# cp capin.pcap /ngfw/var/common
Stap 3
Meld u aan bij de FMC die de FTD beheert en navigeer naar Apparaten > Apparaatbeheer. Zoek het FTD-apparaat en selecteer het pictogram Problemen oplossen:
Stap 4
Geavanceerde probleemoplossing selecteren:
Geef de naam van het vastlegbestand op en selecteer Downloaden:
Zie dit document voor meer voorbeelden over het inschakelen/verzamelen van opnames van de FMC-gebruikersinterface:
Het opnamepunt wordt hier in de afbeelding getoond.
Vastleggen op korte niveau inschakelen:
> capture-traffic Please choose domain to capture traffic from: 0 - br1 1 - Router Selection? 1 Please specify tcpdump options desired. (or enter '?' for a list of supported options) Options: -n host 192.168.101.1
Om de opname naar een bestand met de naam capture.pcap te schrijven en deze via FTP naar een externe server te kopiëren:
> capture-traffic Please choose domain to capture traffic from: 0 - br1 1 - Router Selection? 1 Please specify tcpdump options desired. (or enter '?' for a list of supported options) Options: -w capture.pcap host 192.168.101.1 CTRL + C <- to stop the capture
> file copy 10.229.22.136 ftp / capture.pcap Enter password for ftp@10.229.22.136: Copying capture.pcap Copy successful. >
Raadpleeg dit document voor meer korte opnamefilters met verschillende opnamefilters:
De topologie wordt hier in de afbeelding getoond:
Probleembeschrijving: HTTP werkt niet
Beïnvloede stroming:
SRC IP: 192.168.0.100
Dst IP: 10.10.1.100
Protocol: TCP 80
Captures inschakelen op de FTD LINA-engine:
firepower# capture CAPI int INSIDE match ip host 192.168.0.100 host 10.10.1.100 firepower# capture CAPO int OUTSIDE match ip host 192.168.0.100 host 10.10.1.100
Vastleggingen - Functioneel scenario:
Als basislijn is het altijd erg handig om opnames te hebben van een functioneel scenario.
Opname gemaakt op NGFW INSIDE interface, zoals getoond in de afbeelding:
Belangrijkste punten:
Opname genomen op NGFW OUTSIDE interface, wordt getoond in de afbeelding hier:
Belangrijkste punten:
Vastleggingen - Niet-functioneel scenario
Vanaf het apparaat zien de CLI-opnamen er als volgt uit:
firepower# show capture capture CAPI type raw-data interface INSIDE [Capturing - 484 bytes] match ip host 192.168.0.100 host 10.10.1.100 capture CAPO type raw-data interface OUTSIDE [Capturing - 0 bytes] match ip host 192.168.0.100 host 10.10.1.100
CAPI-inhoud:
firepower# show capture CAPI 6 packets captured 1: 11:47:46.911482 192.168.0.100.3171 > 10.10.1.100.80: S 1089825363:1089825363(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 2: 11:47:47.161902 192.168.0.100.3172 > 10.10.1.100.80: S 3981048763:3981048763(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 3: 11:47:49.907683 192.168.0.100.3171 > 10.10.1.100.80: S 1089825363:1089825363(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 4: 11:47:50.162757 192.168.0.100.3172 > 10.10.1.100.80: S 3981048763:3981048763(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 5: 11:47:55.914640 192.168.0.100.3171 > 10.10.1.100.80: S 1089825363:1089825363(0) win 8192 <mss 1460,nop,nop,sackOK> 6: 11:47:56.164710 192.168.0.100.3172 > 10.10.1.100.80: S 3981048763:3981048763(0) win 8192 <mss 1460,nop,nop,sackOK>
firepower# show capture CAPO 0 packet captured 0 packet shown
Dit is de afbeelding van CAPI-opname in Wireshark:
Belangrijkste punten:
Op basis van de 2 opnames kan worden geconcludeerd dat:
De acties die in deze sectie worden vermeld, hebben als doel het probleem verder te beperken.
Actie 1. Controleer het spoor van een geëmuleerd pakket.
Gebruik de packet-tracer tool om te zien hoe een pakket wordt verondersteld te worden behandeld door de firewall. Als het pakket wordt gedropt door het toegangsbeleid van de firewall, lijkt het spoor van het geëmuleerde pakket op deze uitvoer:
firepower# packet-tracer input INSIDE tcp 192.168.0.100 11111 10.10.1.100 80 Phase: 1 Type: CAPTURE Subtype: Result: ALLOW Config: Additional Information: MAC Access list Phase: 2 Type: ACCESS-LIST Subtype: Result: ALLOW Config: Implicit Rule Additional Information: MAC Access list Phase: 3 Type: ROUTE-LOOKUP Subtype: Resolve Egress Interface Result: ALLOW Config: Additional Information: found next-hop 192.168.2.72 using egress ifc OUTSIDE Phase: 4 Type: ACCESS-LIST Subtype: log Result: DROP Config: access-group CSM_FW_ACL_ global access-list CSM_FW_ACL_ advanced deny ip any any rule-id 268439946 event-log flow-start access-list CSM_FW_ACL_ remark rule-id 268439946: ACCESS POLICY: FTD_Policy - Default access-list CSM_FW_ACL_ remark rule-id 268439946: L4 RULE: DEFAULT ACTION RULE Additional Information: Result: input-interface: INSIDE input-status: up input-line-status: up output-interface: OUTSIDE output-status: up output-line-status: up Action: drop Drop-reason: (acl-drop) Flow is denied by configured rule, Drop-location: frame 0x00005647a4f4b120 flow (NA)/NA
Actie 2. Controleer de sporen van levende pakketten.
Schakel het traceren van pakketten in om te controleren hoe de echte TCP SYN-pakketten door de firewall worden behandeld. Standaard worden alleen de eerste 50 ingresspakketten getraceerd:
firepower# capture CAPI trace
Verwijder de opnamebuffer:
firepower# clear capture /all
In het geval dat het pakket wordt verwijderd door het toegangsbeleid van de firewall, ziet het traceren er ongeveer hetzelfde uit als deze uitvoer:
firepower# show capture CAPI packet-number 1 trace 6 packets captured 1: 12:45:36.279740 192.168.0.100.3630 > 10.10.1.100.80: S 2322685377:2322685377(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> Phase: 1 Type: CAPTURE Subtype: Result: ALLOW Config: Additional Information: MAC Access list Phase: 2 Type: ACCESS-LIST Subtype: Result: ALLOW Config: Implicit Rule Additional Information: MAC Access list Phase: 3 Type: ROUTE-LOOKUP Subtype: Resolve Egress Interface Result: ALLOW Config: Additional Information: found next-hop 192.168.2.72 using egress ifc OUTSIDE Phase: 4 Type: ACCESS-LIST Subtype: log Result: DROP Config: access-group CSM_FW_ACL_ global access-list CSM_FW_ACL_ advanced deny ip any any rule-id 268439946 event-log flow-start access-list CSM_FW_ACL_ remark rule-id 268439946: ACCESS POLICY: FTD_Policy - Default access-list CSM_FW_ACL_ remark rule-id 268439946: L4 RULE: DEFAULT ACTION RULE Additional Information: Result: input-interface: INSIDE input-status: up input-line-status: up output-interface: OUTSIDE output-status: up output-line-status: up Action: drop Drop-reason: (acl-drop) Flow is denied by configured rule, Drop-location: frame 0x00005647a4f4b120 flow (NA)/NA 1 packet shown
Actie 3. Controleer de FTD Lina-logs.
Als u Syslog on FTD via FMC wilt configureren, controleert u dit document:
Het wordt ten zeerste aanbevolen om een externe Syslog-server te configureren voor FTD Lina-logs. Als er geen externe Syslog-server is geconfigureerd, schakelt u lokale bufferlogboeken in de firewall in terwijl u problemen oplost. De logboekconfiguratie in dit voorbeeld is een goed startpunt:
firepower# show run logging … logging enable logging timestamp logging buffer-size 1000000 logging buffered informational
Stel de terminalpager in op 24 regels om de terminalpager te bedienen:
firepower# terminal pager 24
Verwijder de opnamebuffer:
firepower# clear logging buffer
Test de verbinding en controleer de logs met een parserfilter. In dit voorbeeld worden de pakketten gedropt door het toegangsbeleid van de firewall:
firepower# show logging | include 10.10.1.100 Oct 09 2019 12:55:51: %FTD-4-106023: Deny tcp src INSIDE:192.168.0.100/3696 dst OUTSIDE:10.10.1.100/80 by access-group "CSM_FW_ACL_" [0x97aa021a, 0x0] Oct 09 2019 12:55:51: %FTD-4-106023: Deny tcp src INSIDE:192.168.0.100/3697 dst OUTSIDE:10.10.1.100/80 by access-group "CSM_FW_ACL_" [0x97aa021a, 0x0] Oct 09 2019 12:55:54: %FTD-4-106023: Deny tcp src INSIDE:192.168.0.100/3696 dst OUTSIDE:10.10.1.100/80 by access-group "CSM_FW_ACL_" [0x97aa021a, 0x0] Oct 09 2019 12:55:54: %FTD-4-106023: Deny tcp src INSIDE:192.168.0.100/3697 dst OUTSIDE:10.10.1.100/80 by access-group "CSM_FW_ACL_" [0x97aa021a, 0x0]
Actie 4. Controleer of de firewall ASP is gevallen.
Als u vermoedt dat het pakket door de firewall is gedropt, ziet u de tellers van alle pakketten die door de firewall op softwareniveau zijn gedropt:
firepower# show asp drop Frame drop: No route to host (no-route) 234 Flow is denied by configured rule (acl-drop) 71 Last clearing: 07:51:52 UTC Oct 10 2019 by enable_15 Flow drop: Last clearing: 07:51:52 UTC Oct 10 2019 by enable_15
U kunt opnamen inschakelen om alle dalingen op ASP-softwareniveau te zien:
firepower# capture ASP type asp-drop all buffer 33554432 headers-only
Tip: als u niet geïnteresseerd bent in de inhoud van het pakket, kunt u alleen de pakketkoppen vastleggen (optie alleen voor koppen). Hierdoor kunt u veel meer pakketten vastleggen in de opnamebuffer. Daarnaast kunt u de grootte van de opnamebuffer verhogen (standaard is dit 500 Kbytes) tot een waarde van maximaal 32 Mbytes (bufferoptie). Ten slotte kunt u vanaf FTD versie 6.3 met de optie voor bestandsgrootte een vastlegbestand configureren tot 10 GBytes. In dat geval kunt u alleen de vastgelegde inhoud in een pcap-indeling zien.
Om de inhoud van de opname te controleren, kunt u een filter gebruiken om uw zoekopdracht te verfijnen:
firepower# show capture ASP | include 10.10.1.100 18: 07:51:57.823672 192.168.0.100.12410 > 10.10.1.100.80: S 1870382552:1870382552(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 19: 07:51:58.074291 192.168.0.100.12411 > 10.10.1.100.80: S 2006489005:2006489005(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 26: 07:52:00.830370 192.168.0.100.12410 > 10.10.1.100.80: S 1870382552:1870382552(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 29: 07:52:01.080394 192.168.0.100.12411 > 10.10.1.100.80: S 2006489005:2006489005(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 45: 07:52:06.824282 192.168.0.100.12410 > 10.10.1.100.80: S 1870382552:1870382552(0) win 8192 <mss 1460,nop,nop,sackOK> 46: 07:52:07.074230 192.168.0.100.12411 > 10.10.1.100.80: S 2006489005:2006489005(0) win 8192 <mss 1460,nop,nop,sackOK>
In dit geval, aangezien de pakketten al op interfaceniveau worden getraceerd, wordt de reden voor de daling niet vermeld in de ASP-opname. Vergeet niet dat een pakket slechts op één plaats kan worden getraceerd (ingress-interface of ASP-drop). In dat geval wordt aanbevolen om meerdere ASP-druppels te nemen en een specifieke ASP-valreden in te stellen. Hier is een aanbevolen aanpak:
1. Wis de huidige ASP-valtellers:
firepower# clear asp drop
2. Stuur de stroom die u problemen oplost via de firewall (voer een test uit).
3. Controleer nogmaals de ASP-valtellers en noteer de verhoogde.
firepower# show asp drop Frame drop: No route to host (no-route) 234 Flow is denied by configured rule (acl-drop) 71
4. Schakel ASP-vastlegging(en) in voor de specifieke waargenomen druppels:
firepower# capture ASP_NO_ROUTE type asp-drop no-route firepower# capture ASP_ACL_DROP type asp-drop acl-drop
5. Stuur de stroom die u problemen oplost via de firewall (voer een test uit).
6. Controleer de ASP-opnamen. In dit geval werden de pakketten gedropt vanwege een afwezige route:
firepower# show capture ASP_NO_ROUTE | include 192.168.0.100.*10.10.1.100 93: 07:53:52.381663 192.168.0.100.12417 > 10.10.1.100.80: S 3451917925:3451917925(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 95: 07:53:52.632337 192.168.0.100.12418 > 10.10.1.100.80: S 1691844448:1691844448(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 101: 07:53:55.375392 192.168.0.100.12417 > 10.10.1.100.80: S 3451917925:3451917925(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 102: 07:53:55.626386 192.168.0.100.12418 > 10.10.1.100.80: S 1691844448:1691844448(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 116: 07:54:01.376231 192.168.0.100.12417 > 10.10.1.100.80: S 3451917925:3451917925(0) win 8192 <mss 1460,nop,nop,sackOK> 117: 07:54:01.626310 192.168.0.100.12418 > 10.10.1.100.80: S 1691844448:1691844448(0) win 8192 <mss 1460,nop,nop,sackOK>
Actie 5. Controleer de FTD Lina-verbindingstabel.
Er kunnen gevallen zijn waarin u verwacht dat het pakket interface 'X' verlaat, maar om welke reden dan ook interface 'Y' verlaat. De bepaling van de firewall-uitgang is gebaseerd op deze volgorde van gebruik:
U controleert als volgt de FTD-verbindingstabel:
firepower# show conn 2 in use, 4 most used Inspect Snort: preserve-connection: 2 enabled, 0 in effect, 4 most enabled, 0 most in effect TCP DMZ 10.10.1.100:80 INSIDE 192.168.0.100:11694, idle 0:00:01, bytes 0, flags aA N1 TCP DMZ 10.10.1.100:80 INSIDE 192.168.0.100:11693, idle 0:00:01, bytes 0, flags aA N1
Belangrijkste punten:
Dit kan worden gevisualiseerd in de afbeelding hier:
Opmerking: Aangezien alle FTD-interfaces een beveiligingsniveau van 0 hebben, is de volgorde van de interface in de show conn-uitvoer gebaseerd op het interfacenummer. Concreet wordt de interface met een hoger vpif-num (virtual platform interface number) geselecteerd als binnenin, terwijl de interface met een lager vpif-num wordt geselecteerd als buiten. U kunt de vpif-waarde van de interface zien met de opdracht Interfacedetails weergeven. Gerelateerde verbetering, Cisco bug ID CSCvi15290 ENH: FTD toont de verbindingsrichting in FTD 'show conn'-output
firepower# show interface detail | i Interface number is|Interface [P|E].*is up ... Interface Ethernet1/2 "INSIDE", is up, line protocol is up Interface number is 19 Interface Ethernet1/3.202 "OUTSIDE", is up, line protocol is up Interface number is 20 Interface Ethernet1/3.203 "DMZ", is up, line protocol is up Interface number is 22
Opmerking: vanaf Firepower-softwarerelease 6.5 geeft ASA-release 9.13.x de opdrachtregeluitvoer conn long en show conn detail informatie over de verbindingsinitiator en -responder
Uitgang 1:
firepower# show conn long ... TCP OUTSIDE: 192.168.2.200/80 (192.168.2.200/80) INSIDE: 192.168.1.100/46050 (192.168.1.100/46050), flags aA N1, idle 3s, uptime 6s, timeout 30s, bytes 0 Initiator: 192.168.1.100, Responder: 192.168.2.200 Connection lookup keyid: 228982375
Uitgang 2:
firepower# show conn detail ... TCP OUTSIDE: 192.168.2.200/80 INSIDE: 192.168.1.100/46050, flags aA N1, idle 4s, uptime 11s, timeout 30s, bytes 0 Initiator: 192.168.1.100, Responder: 192.168.2.200 Connection lookup keyid: 228982375
Bovendien geeft de show conn lang de NATed IP's binnen een haakje weer in het geval van een netwerkadresvertaling:
firepower# show conn long ... TCP OUTSIDE: 192.168.2.222/80 (192.168.2.222/80) INSIDE: 192.168.1.100/34792 (192.168.2.150/34792), flags aA N1, idle 0s, uptime 0s, timeout 30s, bytes 0, xlate id 0x2b5a8a4314c0 Initiator: 192.168.1.100, Responder: 192.168.2.222 Connection lookup keyid: 262895
Actie 6. Controleer de cache van het Firewall Address Resolution Protocol (ARP).
Als de firewall de volgende hop niet kan oplossen, laat de firewall het oorspronkelijke pakket stilletjes vallen (in dit geval TCP SYN) en verzendt voortdurend ARP-verzoeken totdat het de volgende hop oplost.
Gebruik de opdracht om de ARP-cache van de firewall te bekijken:
firepower# show arp
Als u bovendien wilt controleren of er onopgeloste hosts zijn, kunt u de opdracht gebruiken:
firepower# show arp statistics Number of ARP entries in ASA: 0 Dropped blocks in ARP: 84 Maximum Queued blocks: 3 Queued blocks: 0 Interface collision ARPs Received: 0 ARP-defense Gratuitous ARPS sent: 0 Total ARP retries: 182 < indicates a possible issue for some hosts Unresolved hosts: 1 < this is the current status Maximum Unresolved hosts: 2
Als u de ARP-bewerking verder wilt controleren, kunt u een ARP-specifieke opname inschakelen:
firepower# capture ARP ethernet-type arp interface OUTSIDE firepower# show capture ARP ... 4: 07:15:16.877914 802.1Q vlan#202 P0 arp who-has 192.168.2.72 tell 192.168.2.50 5: 07:15:18.020033 802.1Q vlan#202 P0 arp who-has 192.168.2.72 tell 192.168.2.50
In deze uitvoer probeert de firewall (192.168.2.50) de next-hop (192.168.2.72) op te lossen, maar er is geen ARP-antwoord
De uitvoer hier toont een functioneel scenario met de juiste ARP-resolutie:
firepower# show capture ARP 2 packets captured 1: 07:17:19.495595 802.1Q vlan#202 P0 arp who-has 192.168.2.72 tell 192.168.2.50 2: 07:17:19.495946 802.1Q vlan#202 P0 arp reply 192.168.2.72 is-at 4c:4e:35:fc:fc:d8 2 packets shown
firepower# show arp INSIDE 192.168.1.71 4c4e.35fc.fcd8 9 OUTSIDE 192.168.2.72 4c4e.35fc.fcd8 9
Als er geen ARP-vermelding is, wordt een spoor van een levend TCP SYN-pakket weergegeven:
firepower# show capture CAPI packet-number 1 trace 6 packets captured 1: 07:03:43.270585 192.168.0.100.11997 > 10.10.1.100.80: S 4023707145:4023707145(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> Phase: 1 Type: CAPTURE Subtype: Result: ALLOW Config: Additional Information: MAC Access list Phase: 2 Type: ACCESS-LIST Subtype: Result: ALLOW Config: Implicit Rule Additional Information: MAC Access list Phase: 3 Type: ROUTE-LOOKUP Subtype: Resolve Egress Interface Result: ALLOW Config: Additional Information: found next-hop 192.168.2.72 using egress ifc OUTSIDE … Phase: 14 Type: FLOW-CREATION Subtype: Result: ALLOW Config: Additional Information: New flow created with id 4814, packet dispatched to next module … Phase: 17 Type: ROUTE-LOOKUP Subtype: Resolve Egress Interface Result: ALLOW Config: Additional Information: found next-hop 192.168.2.72 using egress ifc OUTSIDE Result: input-interface: INSIDE input-status: up input-line-status: up output-interface: OUTSIDE output-status: up output-line-status: up Action: allow
Zoals te zien is in de uitvoer, toont de trace Action: allow zelfs wanneer de volgende hop niet bereikbaar is en het pakket stilletjes door de firewall wordt gedropt! In dit geval moet ook het packet-tracer-gereedschap worden gecontroleerd, omdat het een nauwkeurigere uitvoer biedt:
firepower# packet-tracer input INSIDE tcp 192.168.0.100 1111 10.10.1.100 80 Phase: 1 Type: CAPTURE Subtype: Result: ALLOW Config: Additional Information: MAC Access list Phase: 2 Type: ACCESS-LIST Subtype: Result: ALLOW Config: Implicit Rule Additional Information: MAC Access list Phase: 3 Type: ROUTE-LOOKUP Subtype: Resolve Egress Interface Result: ALLOW Config: Additional Information: found next-hop 192.168.2.72 using egress ifc OUTSIDE … Phase: 14 Type: FLOW-CREATION Subtype: Result: ALLOW Config: Additional Information: New flow created with id 4816, packet dispatched to next module … Phase: 17 Type: ROUTE-LOOKUP Subtype: Resolve Egress Interface Result: ALLOW Config: Additional Information: found next-hop 192.168.2.72 using egress ifc OUTSIDE Result: input-interface: INSIDE input-status: up input-line-status: up output-interface: OUTSIDE output-status: up output-line-status: up Action: drop Drop-reason: (no-v4-adjacency) No valid V4 adjacency, Drop-location: frame 0x00005647a4e86109 flow (NA)/NA
In recente ASA/Firepower versies is het vorige bericht geoptimaliseerd om:
Drop-reason: (no-v4-adjacency) No valid V4 adjacency. Check ARP table (show arp) has entry for nexthop., Drop-location: f
Als u alleen een TCP SYN-pakket ziet op de ingress-interfaces, maar geen TCP SYN-pakket wordt verzonden vanuit de verwachte uitgang-interface, zijn enkele mogelijke oorzaken:
Mogelijke oorzaak |
Aanbevolen acties |
Het pakket wordt gedropt door het firewall-toegangsbeleid. |
|
Het afvangfilter is fout. |
|
Het pakket wordt verzonden naar een andere uitgang interface. |
Als het pakket naar een verkeerde interface wordt verzonden omdat het overeenkomt met een huidige verbinding, gebruikt u de opdracht om het adres van conn te wissen en geeft u de 5-dubbele verbinding op die u wilt wissen. |
Er is geen route naar de bestemming. |
|
Er is geen ARP-ingang op de uitgang-interface. |
|
De uitgang-interface is uitgeschakeld. |
Controleer de uitvoer van de opdracht show interface ip brief op de firewall en controleer de status van de interface. |
Deze afbeelding toont de topologie:
Probleembeschrijving: HTTP werkt niet
Beïnvloede stroming:
SRC IP: 192.168.0.100
Dst IP: 10.10.1.100
Protocol: TCP 80
Schakel opnames in op de FTD LINA-engine.
firepower# capture CAPI int INSIDE match ip host 192.168.0.100 host 10.10.1.100 firepower# capture CAPO int OUTSIDE match ip host 192.168.0.100 host 10.10.1.100
Vastleggingen - Niet-functioneel scenario:
Zo zien de opnamen eruit vanaf de CLI van het apparaat:
firepower# show capture capture CAPI type raw-data trace interface INSIDE [Capturing - 834 bytes] match ip host 192.168.0.100 host 10.10.1.100 capture CAPO type raw-data interface OUTSIDE [Capturing - 878 bytes] match ip host 192.168.0.100 host 10.10.1.100
CAPI-inhoud:
firepower# show capture CAPI 1: 05:20:36.654217 192.168.0.100.22195 > 10.10.1.100.80: S 1397289928:1397289928(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 2: 05:20:36.904311 192.168.0.100.22196 > 10.10.1.100.80: S 2171673258:2171673258(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 3: 05:20:36.905043 10.10.1.100.80 > 192.168.0.100.22196: R 1850052503:1850052503(0) ack 2171673259 win 0 4: 05:20:37.414132 192.168.0.100.22196 > 10.10.1.100.80: S 2171673258:2171673258(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 5: 05:20:37.414803 10.10.1.100.80 > 192.168.0.100.22196: R 31997177:31997177(0) ack 2171673259 win 0 6: 05:20:37.914183 192.168.0.100.22196 > 10.10.1.100.80: S 2171673258:2171673258(0) win 8192 <mss 1460,nop,nop,sackOK> ...
CAPO-inhoud:
firepower# show capture CAPO 1: 05:20:36.654507 802.1Q vlan#202 P0 192.168.0.100.22195 > 10.10.1.100.80: S 2866789268:2866789268(0) win 8192 <mss 1380,nop,wscale 2,nop,nop,sackOK> 2: 05:20:36.904478 802.1Q vlan#202 P0 192.168.0.100.22196 > 10.10.1.100.80: S 4785344:4785344(0) win 8192 <mss 1380,nop,wscale 2,nop,nop,sackOK> 3: 05:20:36.904997 802.1Q vlan#202 P0 10.10.1.100.80 > 192.168.0.100.22196: R 0:0(0) ack 4785345 win 0 4: 05:20:37.414269 802.1Q vlan#202 P0 192.168.0.100.22196 > 10.10.1.100.80: S 4235354730:4235354730(0) win 8192 <mss 1380,nop,wscale 2,nop,nop,sackOK> 5: 05:20:37.414758 802.1Q vlan#202 P0 10.10.1.100.80 > 192.168.0.100.22196: R 0:0(0) ack 4235354731 win 0 6: 05:20:37.914305 802.1Q vlan#202 P0 192.168.0.100.22196 > 10.10.1.100.80: S 4118617832:4118617832(0) win 8192 <mss 1380,nop,nop,sackOK>
Deze afbeelding toont de vangst van CAPI in Wireshark.
Belangrijkste punten:
Deze afbeelding toont de vangst van CAPO in Wireshark:
Belangrijkste punten:
Op basis van de 2 opnames kan worden geconcludeerd dat:
De acties die in deze sectie worden vermeld, hebben als doel het probleem verder te beperken.
Actie 1. Controleer het MAC-adres van de bron waarmee de TCP RST wordt verzonden.
Controleer of de bestemmings-MAC in het TCP SYN-pakket dezelfde is als de bron-MAC in het TCP RST-pakket heeft gezien.
Deze controle heeft als doel om 2 dingen te bevestigen:
Actie 2. Vergelijk ingress en egress pakketten.
Vergelijk visueel de 2 pakketten op Wireshark om te controleren of de firewall de pakketten niet wijzigt/corrumpeert. Enkele verwachte verschillen worden belicht.
Belangrijkste punten:
Actie 3. Neem een foto op de bestemming.
Neem indien mogelijk een foto op de bestemming zelf. Als dit niet mogelijk is, neem dan een opname zo dicht mogelijk bij de bestemming. Het doel hier is om te controleren wie de TCP RST verzendt (is de bestemmingsserver of is er een ander apparaat in het pad?).
Deze afbeelding toont de topologie:
Probleembeschrijving: HTTP werkt niet
Beïnvloede stroming:
SRC IP: 192.168.0.100
Dst IP: 10.10.1.100
Protocol: TCP 80
Schakel opnames in op de FTD LINA-engine.
firepower# capture CAPI int INSIDE match ip host 192.168.0.100 host 10.10.1.100 firepower# capture CAPO int OUTSIDE match ip host 192.168.0.100 host 10.10.1.100
Vastleggingen - Niet-functioneel scenario:
Er zijn een paar verschillende manieren waarop dit probleem zich kan manifesteren in captures.
Zowel CAPI als CAPO worden door de firewall vastgelegd en bevatten dezelfde pakketten, zoals in de afbeelding wordt getoond.
Belangrijkste punten:
De acties die in deze sectie worden vermeld, hebben als doel het probleem verder te beperken.
Actie 1. Leg de beelden zo dicht mogelijk bij de twee eindpunten vast.
De firewall-opnames geven aan dat de client-ACK niet door de server is verwerkt. Dit is gebaseerd op deze feiten:
Vastleggen op de server toont het probleem. De client ACK van de TCP 3-way handshake is nooit aangekomen:
Zowel CAPI als CAPO worden door de firewall vastgelegd en bevatten dezelfde pakketten, zoals in de afbeelding wordt getoond.
Belangrijkste punten:
Op basis van deze opname kan worden geconcludeerd dat hoewel er een TCP 3-weg handshake door de firewall lijkt het dat het nooit echt wordt voltooid op één eindpunt (de heruitzendingen geven dit aan).
Net als in geval 3.1
Zowel CAPI als CAPO worden door de firewall vastgelegd en bevatten dezelfde pakketten, zoals in de afbeelding wordt getoond.
Belangrijkste punten:
Op basis van deze vaststellingen kan worden geconcludeerd dat:
Net als in geval 3.1
Zowel de firewall capi en capo vastleggen bevatten deze pakketten, zoals weergegeven in de afbeelding.
Belangrijkste punten:
Actie: Neem foto's zo dicht mogelijk bij de server.
Een onmiddellijke TCP RST van de server kan wijzen op een slecht werkende server of een apparaat in het pad dat de TCP RST verzendt. Maak een opname op de server zelf en bepaal de bron van de TCP RST.
Deze afbeelding toont de topologie:
Probleembeschrijving: HTTP werkt niet.
Beïnvloede stroming:
SRC IP: 192.168.0.100
Dst IP: 10.10.1.100
Protocol: TCP 80
Captures inschakelen op FTD LINA-engine.
firepower# capture CAPI int INSIDE match ip host 192.168.0.100 host 10.10.1.100 firepower# capture CAPO int OUTSIDE match ip host 192.168.0.100 host 10.10.1.100
Vastleggingen - Niet-functioneel scenario:
Dit zijn de CAPI-inhoud.
firepower# show capture CAPI 14 packets captured 1: 12:32:22.860627 192.168.0.100.47078 > 10.10.1.100.80: S 4098574664:4098574664(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 2: 12:32:23.111307 192.168.0.100.47079 > 10.10.1.100.80: S 2486945841:2486945841(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 3: 12:32:23.112390 192.168.0.100.47079 > 10.10.1.100.80: R 3000518858:3000518858(0) win 0 4: 12:32:25.858109 192.168.0.100.47078 > 10.10.1.100.80: S 4098574664:4098574664(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 5: 12:32:25.868698 192.168.0.100.47078 > 10.10.1.100.80: R 1386249853:1386249853(0) win 0 6: 12:32:26.108118 192.168.0.100.47079 > 10.10.1.100.80: S 2486945841:2486945841(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> 7: 12:32:26.109079 192.168.0.100.47079 > 10.10.1.100.80: R 3000518858:3000518858(0) win 0 8: 12:32:26.118295 192.168.0.100.47079 > 10.10.1.100.80: R 3000518858:3000518858(0) win 0 9: 12:32:31.859925 192.168.0.100.47078 > 10.10.1.100.80: S 4098574664:4098574664(0) win 8192 <mss 1460,nop,nop,sackOK> 10: 12:32:31.860902 192.168.0.100.47078 > 10.10.1.100.80: R 1386249853:1386249853(0) win 0 11: 12:32:31.875229 192.168.0.100.47078 > 10.10.1.100.80: R 1386249853:1386249853(0) win 0 12: 12:32:32.140632 192.168.0.100.47079 > 10.10.1.100.80: R 3000518858:3000518858(0) win 0 13: 12:32:32.159995 192.168.0.100.47079 > 10.10.1.100.80: S 2486945841:2486945841(0) win 8192 <mss 1460,nop,nop,sackOK> 14: 12:32:32.160956 192.168.0.100.47079 > 10.10.1.100.80: R 3000518858:3000518858(0) win 0 14 packets shown
Dit zijn de CAPO-inhoud:
firepower# show capture CAPO 11 packets captured 1: 12:32:22.860780 802.1Q vlan#202 P0 192.168.0.100.47078 > 10.10.1.100.80: S 1386249852:1386249852(0) win 8192 <mss 1380,nop,wscale 2,nop,nop,sackOK> 2: 12:32:23.111429 802.1Q vlan#202 P0 192.168.0.100.47079 > 10.10.1.100.80: S 3000518857:3000518857(0) win 8192 <mss 1380,nop,wscale 2,nop,nop,sackOK> 3: 12:32:23.112405 802.1Q vlan#202 P0 192.168.0.100.47079 > 10.10.1.100.80: R 3514091874:3514091874(0) win 0 4: 12:32:25.858125 802.1Q vlan#202 P0 192.168.0.100.47078 > 10.10.1.100.80: S 1386249852:1386249852(0) win 8192 <mss 1380,nop,wscale 2,nop,nop,sackOK> 5: 12:32:25.868729 802.1Q vlan#202 P0 192.168.0.100.47078 > 10.10.1.100.80: R 2968892337:2968892337(0) win 0 6: 12:32:26.108240 802.1Q vlan#202 P0 192.168.0.100.47079 > 10.10.1.100.80: S 3822259745:3822259745(0) win 8192 <mss 1380,nop,wscale 2,nop,nop,sackOK> 7: 12:32:26.109094 802.1Q vlan#202 P0 192.168.0.100.47079 > 10.10.1.100.80: R 40865466:40865466(0) win 0 8: 12:32:31.860062 802.1Q vlan#202 P0 192.168.0.100.47078 > 10.10.1.100.80: S 4294058752:4294058752(0) win 8192 <mss 1380,nop,nop,sackOK> 9: 12:32:31.860917 802.1Q vlan#202 P0 192.168.0.100.47078 > 10.10.1.100.80: R 1581733941:1581733941(0) win 0 10: 12:32:32.160102 802.1Q vlan#202 P0 192.168.0.100.47079 > 10.10.1.100.80: S 4284301197:4284301197(0) win 8192 <mss 1380,nop,nop,sackOK> 11: 12:32:32.160971 802.1Q vlan#202 P0 192.168.0.100.47079 > 10.10.1.100.80: R 502906918:502906918(0) win 0 11 packets shown
De firewall-logs tonen:
firepower# show log | i 47741 Oct 13 2019 13:57:36: %FTD-6-302013: Built inbound TCP connection 4869 for INSIDE:192.168.0.100/47741 (192.168.0.100/47741) to OUTSIDE:10.10.1.100/80 (10.10.1.100/80) Oct 13 2019 13:57:36: %FTD-6-302014: Teardown TCP connection 4869 for INSIDE:192.168.0.100/47741 to OUTSIDE:10.10.1.100/80 duration 0:00:00 bytes 0 TCP Reset-O from INSIDE Oct 13 2019 13:57:39: %FTD-6-302013: Built inbound TCP connection 4870 for INSIDE:192.168.0.100/47741 (192.168.0.100/47741) to OUTSIDE:10.10.1.100/80 (10.10.1.100/80) Oct 13 2019 13:57:39: %FTD-6-302014: Teardown TCP connection 4870 for INSIDE:192.168.0.100/47741 to OUTSIDE:10.10.1.100/80 duration 0:00:00 bytes 0 TCP Reset-O from INSIDE Oct 13 2019 13:57:45: %FTD-6-302013: Built inbound TCP connection 4871 for INSIDE:192.168.0.100/47741 (192.168.0.100/47741) to OUTSIDE:10.10.1.100/80 (10.10.1.100/80) Oct 13 2019 13:57:45: %FTD-6-302014: Teardown TCP connection 4871 for INSIDE:192.168.0.100/47741 to OUTSIDE:10.10.1.100/80 duration 0:00:00 bytes 0 TCP Reset-O from INSIDE
Deze logs geven aan dat er een TCP RST is die binnenkomt op de firewall INSIDE-interface
CAPI-vangst in Wireshark:
Volg de eerste TCP-stream, zoals weergegeven in de afbeelding.
Navigeer onder Wireshark naar Bewerken > Voorkeuren > Protocollen > TCP en schakel de optie Relatieve reeksnummers uit zoals in de afbeelding wordt weergegeven.
Deze afbeelding toont de inhoud van de eerste stroom in CAPI-opname:
Belangrijkste punten:
Dezelfde stroom in CAPO-opname bevat:
Belangrijkste punten:
Op basis van de twee opnames kan worden geconcludeerd dat:
De acties die in deze sectie worden vermeld, hebben als doel het probleem verder te beperken.
Actie 1. Neem een foto van de klant.
Op basis van de opnamen die op de firewall zijn verzameld, is er een sterke indicatie van een asymmetrische stroom. Dit is gebaseerd op het feit dat de client een TCP RST verzendt met een waarde van 1386249853 (het gerandomiseerde ISN):
Belangrijkste punten:
Dit kan als volgt worden weergegeven:
Actie 2. Controleer de routering tussen de client en de firewall.
Bevestigen dat:
Er zijn scenario's waarbij de RST afkomstig is van een apparaat dat tussen de firewall en de client zit terwijl er een asymmetrische routering in het interne netwerk is. Een typisch geval wordt getoond in de afbeelding:
In dit geval heeft de opname deze inhoud. Let op het verschil tussen het MAC-adres van de bron van het TCP SYN-pakket en het MAC-adres van de bron van het TCP RST en het MAC-adres van de bestemming van het TCP SYN/ACK-pakket:
firepower# show capture CAPI detail 1: 13:57:36.730217 4c4e.35fc.fcd8 00be.75f6.1dae 0x0800 Length: 66 192.168.0.100.47740 > 10.10.1.100.80: S [tcp sum ok] 3045001876:3045001876(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> (DF) (ttl 127, id 25661) 2: 13:57:36.981104 4c4e.35fc.fcd8 00be.75f6.1dae 0x0800 Length: 66 192.168.0.100.47741 > 10.10.1.100.80: S [tcp sum ok] 3809380540:3809380540(0) win 8192 <mss 1460,nop,wscale 2,nop,nop,sackOK> (DF) (ttl 127, id 25662) 3: 13:57:36.981776 00be.75f6.1dae a023.9f92.2a4d 0x0800 Length: 66 10.10.1.100.80 > 192.168.0.100.47741: S [tcp sum ok] 1304153587:1304153587(0) ack 3809380541 win 8192 <mss 1380,nop,wscale 8,nop,nop,sackOK> (DF) (ttl 127, id 23339) 4: 13:57:36.982126 a023.9f92.2a4d 00be.75f6.1dae 0x0800 Length: 54 192.168.0.100.47741 > 10.10.1.100.80: R [tcp sum ok] 3809380541:3809380541(0) ack 1304153588 win 8192 (ttl 255, id 48501) ...
Probleembeschrijving:
SFTP-overdracht tussen hosts 10.11.4.171 en 10.77.19.11 is traag. Hoewel de minimale bandbreedte (BW) tussen de 2 hosts 100 Mbps is, gaat de overdrachtssnelheid niet verder dan 5 Mbps.
Tegelijkertijd is de overdrachtssnelheid tussen hosts 10.11.2.124 en 172.25.18.134 behoorlijk hoger.
Achtergrondinformatie:
De maximale overdrachtssnelheid voor een enkele TCP-stroom wordt bepaald door het Bandwidth Delay Product (BDP). De gebruikte formule wordt getoond in de afbeelding:
Voor meer informatie over de BDP, bekijk de bronnen hier:
Deze afbeelding toont de topologie:
Beïnvloede stroming:
SRC IP: 10.11.4.171
Dst IP: 10 77 19 11
Protocol: SFTP (FTP over SSH)
Captures inschakelen op FTD LINA-engine:
firepower# capture CAPI int INSIDE buffer 33554432 match ip host 10.11.4.171 host 10.77.19.11 firepower# capture CAPO int OUTSIDE buffer 33554432 match ip host 10.11.4.171 host 10.77.19.11
Waarschuwing: LINA-vastleggingen op FP1xxx en FP21xx hebben invloed op de overdrachtssnelheid van verkeer dat door de FTD gaat. Schakel LINA-opnamen niet in op FP1xxx- en FP21xxx-platforms wanneer u problemen met de prestaties oplost (trage overdracht via de FTD). Gebruik in plaats daarvan SPAN of een HW Tap-apparaat naast opnames op de bron- en bestemmingshosts. Het probleem is gedocumenteerd in Cisco bug ID CSCvo30697.
firepower# capture CAPI type raw-data trace interface inside match icmp any any WARNING: Running packet capture can have an adverse impact on performance.
De acties die in deze sectie worden vermeld, hebben als doel het probleem verder te beperken.
Berekening van de retourreistijd (RTT)
Identificeer eerst de overdrachtsstroom en volg deze:
Wijzig de wireshark-weergave om de seconden weer te geven sinds het vorige weergegeven pakket. Dit vergemakkelijkt de berekening van de RTT:
De RTT kan worden berekend door de tijdwaarden tussen 2 pakketuitwisselingen (één richting de bron en één richting de bestemming) op te tellen. In dit geval toont pakket # 2 de RTT tussen de firewall en het apparaat dat het SYN / ACK-pakket (server) heeft verzonden. Pakket #3 toont de RTT tussen de firewall en het apparaat dat het ACK-pakket (client) heeft verzonden. De toevoeging van de 2 getallen geeft een goede schatting over de end-to-end RTT:
RTT ≈ 80 msec
Berekening van de grootte van het TCP-venster
Vouw een TCP-pakket uit, vouw de TCP-header uit, selecteer Berekende venstergrootte en selecteer Toepassen als kolom:
Controleer de kolom Berekende venstergrootte om te zien wat de maximale venstergrootte was tijdens de TCP-sessie. U kunt ook de kolomnaam selecteren en de waarden sorteren.
Als u een bestandsdownload test (server > client), moet u de waarden controleren die door de server worden geadverteerd. De maximale venstergrootte die door de server wordt geadverteerd, bepaalt de maximale bereikte overdrachtssnelheid.
In dit geval is de grootte van het TCP-venster ongeveer 50000 bytes
Op basis van deze waarden en met het gebruik van de Bandwidth Delay Product formule krijgt u de maximale theoretische bandbreedte die onder deze omstandigheden kan worden bereikt: 50000 * 8 / 0,08 = 5 Mbps maximale theoretische bandbreedte.
Dit komt overeen met wat de klant in dit geval ervaart.
Controleer de TCP 3-weg handshake goed. Beide zijden, en nog belangrijker de server, adverteren met een vensterschaalwaarde van 0, wat 2 ^ 0 = 1 betekent (geen Windows-schaling). Dit heeft een negatieve invloed op de overdrachtssnelheid:
Op dit punt is het nodig om een opname op de server te maken, te bevestigen dat het degene is die vensterschaal = 0 adverteert en deze opnieuw te configureren (controleer de serverdocumentatie voor hoe u dit doet).
Laten we nu het goede scenario bekijken (snelle overdracht via hetzelfde netwerk):
Topologie:
De stroom van interesse:
SRC IP: 10.11.2.124
Dst IP: 172 25 18 134
Protocol: SFTP (FTP over SSH)
Captures inschakelen op FTD LINA-engine
firepower# capture CAPI int INSIDE buffer 33554432 match ip host 10.11.2.124 host 172.25.18.134 firepower# capture CAPO int OUTSIDE buffer 33554432 match ip host 10.11.2.124 host 172.25.18.134
Round Trip Time (RTT) Berekening: In dit geval is de RTT ≈ 300 msec.
TCP-venstergrootteberekening: de server adverteert met een TCP-vensterschaalfactor van 7.
De grootte van het TCP-venster van de server is ≈ 1600000 bytes:
Op basis van deze waarden geeft de Bandwidth Delay Product formule:
1600000*8/0,3 = maximale theoretische overdrachtssnelheid van 43 Mbps
Probleembeschrijving: FTP-bestandsoverdracht (downloaden) via de firewall is traag.
Deze afbeelding toont de topologie:
Beïnvloede stroming:
SRC IP: 192 168 2 220
Dst IP: 192 168 1 220
Protocol: FTP
Schakel opnames in op de FTD LINA-engine.
firepower# capture CAPI type raw-data buffer 33554432 interface INSIDE match tcp host 192.168.2.220 host 192.168.1.220 firepower# cap CAPO type raw-data buffer 33554432 interface OUTSIDE match tcp host 192.168.2.220 host 192.168.1.220
Selecteer een FTP-DATA-pakket en volg het FTP Data Channel on FTD INSIDE capture (CAPI):
De inhoud van de FTP-DATA-stream:
De CAPO-inhoud vastleggen:
Belangrijkste punten:
Tip: sla de opnamen op terwijl u navigeert naar Bestand > Gespecificeerde pakketten exporteren. Sla vervolgens alleen het weergegeven pakketbereik op
De acties die in deze sectie worden vermeld, hebben als doel het probleem verder te beperken.
Actie 1. Identificeer de locatie van het pakketverlies.
In dit soort gevallen moet u gelijktijdig opnamen maken en de methode voor verdelen en veroveren gebruiken om het netwerksegment of de netwerksegmenten te identificeren die pakketverlies veroorzaken. Vanuit het oogpunt van de firewall zijn er 3 hoofdscenario's:
Verlies van pakketten veroorzaakt door de firewall: om te bepalen of het verlies van pakketten wordt veroorzaakt door de firewall, moet de ingress-opname worden vergeleken met de egress-opname. Er zijn veel manieren om 2 verschillende opnames te vergelijken. In dit gedeelte wordt een manier getoond om deze taak uit te voeren.
Procedure om 2 opnames te vergelijken om het pakketverlies te identificeren
Stap 1. Zorg ervoor dat de 2 opnamen pakketten uit hetzelfde tijdvenster bevatten. Dit betekent dat er geen pakketjes in de ene opname mogen zitten die voor of na de andere opname zijn vastgelegd. Er zijn een paar manieren om dit te doen:
In dit voorbeeld kunt u zien dat de eerste pakketten van elke opname dezelfde IP-ID-waarden hebben:
In het geval dat ze niet hetzelfde zijn:
(frame.time >= "16 okt 2019 16:13:43.244692000") &&(frame.time <= "16 okt 2019 16:20:21.785130000")
3. Exporteer de opgegeven pakketten naar een nieuwe opname, selecteer Bestand > Gespecificeerde pakketten exporteren en sla de weergegeven pakketten op. Op dit punt moeten beide opnamen pakketten bevatten die hetzelfde tijdvenster beslaan. U kunt nu beginnen met de vergelijking van de 2 opnames.
Stap 2. Geef op welk pakketveld wordt gebruikt voor de vergelijking tussen de 2 opnamen. Voorbeelden van velden die kunnen worden gebruikt:
Maak een tekstversie van elke opname die het veld bevat voor elk pakket dat u in stap 1 hebt opgegeven. Om dit te doen, laat u alleen de kolom van belang achter, bijvoorbeeld als u pakketten wilt vergelijken op basis van IP-identificatie en wijzigt u de opname zoals weergegeven in de afbeelding.
Het resultaat:
Stap 3. Maak een tekstversie van de opname (Bestand > Dissecties van pakketten exporteren > Als onbewerkte tekst...), zoals in de afbeelding wordt weergegeven:
Schakel de optie Kolomkoppen en pakketdetails opnemen uit om alleen de waarden van het weergegeven veld te exporteren, zoals in de afbeelding wordt weergegeven:
Stap 4. Sorteer de pakketten in de bestanden. Je kunt de Linux sorteeropdracht gebruiken om dit te doen:
# sort CAPI_IDs > file1.sorted # sort CAPO_IDs > file2.sorted
Stap 5. Gebruik een tekstvergelijkingstool (bijvoorbeeld WinMerge) of de Linux diff-opdracht om de verschillen tussen de 2 opnamen te vinden.
In dit geval zijn CAPI- en CAPO-vastlegging voor het FTP-gegevensverkeer identiek. Dit bewijst dat het pakketverlies niet door de firewall is veroorzaakt.
Identificeer upstream/downstream pakketverlies.
Belangrijkste punten:
1. Dit pakket is een TCP-hertransmissie. Concreet is het een TCP SYN-pakket dat van de client naar de server wordt verzonden voor FTP-gegevens in de passieve modus. Aangezien de client het pakket opnieuw verzendt en u de initiële SYN (pakket # 1) kunt zien, is het pakket stroomopwaarts naar de firewall verloren gegaan.
In dit geval bestaat de mogelijkheid dat het SYN-pakket de server heeft bereikt, maar dat het SYN/ACK-pakket op de terugweg verloren is gegaan:
2. Er is een pakket van de server en Wireshark heeft vastgesteld dat het vorige segment niet is gezien/vastgelegd. Aangezien het niet-vastgelegde pakket van de server naar de client is verzonden en niet is gezien in de firewall-opname, betekent dit dat het pakket verloren is gegaan tussen de server en de firewall.
Dit geeft aan dat er pakketverlies is tussen de FTP-server en de firewall.
Actie 2. Neem extra opnamen.
Neem extra opnamen samen met opnamen op de eindpunten. Probeer de verdeel- en veroveringsmethode toe te passen om het problematische segment dat het pakketverlies veroorzaakt verder te isoleren.
Belangrijkste punten:
Wat betekenen duplicaat-ACK's?
Actie 3. Bereken de firewallverwerkingstijd voor doorvoerpakketten.
Dezelfde opname toepassen op 2 verschillende interfaces:
firepower# capture CAPI buffer 33554432 interface INSIDE match tcp host 192.168.2.220 host 192.168.1.220 firepower# capture CAPI interface OUTSIDE
Probleembeschrijving:
Draadloze client (192.168.21.193) probeert verbinding te maken met een bestemmingsserver (192.168.14.250 - HTTP) en er zijn 2 verschillende scenario's:
Deze afbeelding toont de topologie:
Beïnvloede stroming:
SRC IP: 192 168 21 193
Dst IP: 192 168 14 250
Protocol: TCP 80
Captures inschakelen op FTD LINA-engine:
firepower# capture CAPI int INSIDE match ip host 192.168.21.193 host 192.168.14.250 firepower# capture CAPO int OUTSIDE match ip host 192.168.21.193 host 192.168.14.250
Vastleggingen - Functioneel scenario:
Als basislijn is het altijd erg handig om opnames te hebben van een bekend goed scenario.
Deze afbeelding toont de opname gemaakt op NGFW INSIDE interface
Deze afbeelding toont de opname gemaakt op NGFW OUTSIDE interface.
Belangrijkste punten:
Vastleggingen - Bekend foutief scenario:
De inhoud van de ingress capture (CAPI).
Belangrijkste punten:
Deze afbeelding toont de inhoud van de regresopname (CAPO).
Belangrijkste punten:
De 2 opnamen zijn bijna identiek (overweeg de ISN-randomisatie):
Controleer het verkeerd gevormde pakket:
Belangrijkste punten:
De acties die in deze sectie worden vermeld, hebben als doel het probleem verder te beperken.
Actie 1. Neem extra foto's. Neem opnamen op de eindpunten op en probeer indien mogelijk de methode voor verdelen en veroveren toe te passen om de bron van de pakketbeschadiging te isoleren, bijvoorbeeld:
In dit geval werden de 2 extra Bytes toegevoegd door de switch 'A' interfacestuurprogramma en de oplossing was om de switch die de corruptie veroorzaakt te vervangen.
Probleembeschrijving: Syslog-berichten (UDP 514) worden niet weergegeven op de bestemmingsserver Syslog.
Deze afbeelding toont de topologie:
Beïnvloede stroming:
SRC IP: 192 168 1 81
Dst IP: 10.10.1.73
Protocol: UDP 514
Captures inschakelen op FTD LINA-engine:
firepower# capture CAPI int INSIDE trace match udp host 192.168.1.81 host 10.10.1.73 eq 514 firepower# capture CAPO int OUTSIDE match udp host 192.168.1.81 host 10.10.1.73 eq 514
FTD-opnamen tonen geen pakketten:
firepower# show capture capture CAPI type raw-data trace interface INSIDE [Capturing - 0 bytes] match udp host 192.168.1.81 host 10.10.1.73 eq syslog capture CAPO type raw-data interface OUTSIDE [Capturing - 0 bytes] match udp host 192.168.1.81 host 10.10.1.73 eq syslog
De acties die in deze sectie worden vermeld, hebben als doel het probleem verder te beperken.
Actie 1. Controleer de FTD-verbindingstabel.
Als u een specifieke verbinding wilt controleren, kunt u deze syntaxis gebruiken:
firepower# show conn address 192.168.1.81 port 514 10 in use, 3627189 most used Inspect Snort: preserve-connection: 6 enabled, 0 in effect, 74 most enabled, 0 most in effect UDP INSIDE 10.10.1.73:514 INSIDE 192.168.1.81:514, idle 0:00:00, bytes 480379697, flags -oN1
Belangrijkste punten:
Actie 2. Neem opnamen op chassisniveau.
Maak verbinding met de Firepower-chassismanager en schakel vastlegging in op de ingangsinterface (E1/2 in dit geval) en backplane-interfaces (E1/9 en E1/10), zoals weergegeven in de afbeelding:
Na een paar seconden:
Tip: in Wireshark sluiten de VN-gelabelde pakketten uit om de pakketduplicatie op het fysieke interfaceniveau te elimineren
Vóór:
Na:
Belangrijkste punten:
Actie 3. Gebruik packet-tracer.
Aangezien de pakketten niet door de firewall LINA-engine gaan, kunt u geen live-trace (vastleggen met trace) uitvoeren, maar u kunt een geëmuleerd pakket traceren met packet-tracer:
firepower# packet-tracer input INSIDE udp 10.10.1.73 514 192.168.1.81 514 Phase: 1 Type: CAPTURE Subtype: Result: ALLOW Config: Additional Information: MAC Access list Phase: 2 Type: ACCESS-LIST Subtype: Result: ALLOW Config: Implicit Rule Additional Information: MAC Access list Phase: 3 Type: FLOW-LOOKUP Subtype: Result: ALLOW Config: Additional Information: Found flow with id 25350892, using existing flow Phase: 4 Type: SNORT Subtype: Result: ALLOW Config: Additional Information: Snort Verdict: (fast-forward) fast forward this flow Phase: 5 Type: ROUTE-LOOKUP Subtype: Resolve Egress Interface Result: ALLOW Config: Additional Information: found next-hop 192.168.1.81 using egress ifc INSIDE Phase: 6 Type: ADJACENCY-LOOKUP Subtype: next-hop and adjacency Result: ALLOW Config: Additional Information: adjacency Active next-hop mac address a023.9f92.2a4d hits 1 reference 1 Phase: 7 Type: CAPTURE Subtype: Result: ALLOW Config: Additional Information: MAC Access list Result: input-interface: INSIDE input-status: up input-line-status: up output-interface: INSIDE output-status: up output-line-status: up Action: allow
Actie 4. Bevestig de FTD-routering.
Controleer de routeringstabel van de firewall om te zien of er routeringsproblemen zijn:
firepower# show route 10.10.1.73 Routing entry for 10.10.1.0 255.255.255.0 Known via "eigrp 1", distance 90, metric 3072, type internal Redistributing via eigrp 1 Last update from 192.168.2.72 on OUTSIDE, 0:03:37 ago Routing Descriptor Blocks: * 192.168.2.72, from 192.168.2.72, 0:02:37 ago, via OUTSIDE Route metric is 3072, traffic share count is 1 Total delay is 20 microseconds, minimum bandwidth is 1000000 Kbit Reliability 255/255, minimum MTU 1500 bytes Loading 29/255, Hops 1
Belangrijkste punten:
Actie 5. Bevestig de uptime van de verbinding.
Controleer de uptime van de verbinding om te zien wanneer deze verbinding tot stand is gebracht:
firepower# show conn address 192.168.1.81 port 514 detail 21 in use, 3627189 most used Inspect Snort: preserve-connection: 19 enabled, 0 in effect, 74 most enabled, 0 most in effect Flags: A - awaiting responder ACK to SYN, a - awaiting initiator ACK to SYN, b - TCP state-bypass or nailed, C - CTIQBE media, c - cluster centralized, D - DNS, d - dump, E - outside back connection, e - semi-distributed, F - initiator FIN, f - responder FIN, G - group, g - MGCP, H - H.323, h - H.225.0, I - initiator data, i - incomplete, J - GTP, j - GTP data, K - GTP t3-response k - Skinny media, L - decap tunnel, M - SMTP data, m - SIP media N - inspected by Snort (1 - preserve-connection enabled, 2 - preserve-connection in effect) n - GUP, O - responder data, o - offloaded, P - inside back connection, p - passenger flow q - SQL*Net data, R - initiator acknowledged FIN, R - UDP SUNRPC, r - responder acknowledged FIN, T - SIP, t - SIP transient, U - up, V - VPN orphan, v - M3UA W - WAAS, w - secondary domain backup, X - inspected by service module, x - per session, Y - director stub flow, y - backup stub flow, Z - Scansafe redirection, z - forwarding stub flow UDP INSIDE: 10.10.1.73/514 INSIDE: 192.168.1.81/514, flags -oN1, idle 0s, uptime 3m49s, timeout 2m0s, bytes 4801148711
Kernpunt:
Actie 6. Wis de tot stand gebrachte verbinding.
In dit geval komen de pakketten overeen met een gevestigde verbinding en worden ze naar een verkeerde uitgang-interface geleid; dit veroorzaakt een lus. Dit komt door de volgorde van de firewall:
Aangezien de verbinding nooit vervalt (de Syslog-client verzendt continu pakketten terwijl de time-out van de UDP-console 2 minuten is), is het nodig om de verbinding handmatig te wissen:
firepower# clear conn address 10.10.1.73 address 192.168.1.81 protocol udp port 514 1 connection(s) deleted.
Controleer of er een nieuwe verbinding tot stand is gebracht:
firepower# show conn address 192.168.1.81 port 514 detail | b 10.10.1.73.*192.168.1.81 UDP OUTSIDE: 10.10.1.73/514 INSIDE: 192.168.1.81/514, flags -oN1, idle 1m15s, uptime 1m15s, timeout 2m0s, bytes 408
Actie 7. Floating Conn Time-out configureren.
Dit is de juiste oplossing om het probleem aan te pakken en suboptimale routering te voorkomen, vooral voor UDP-stromen. Navigeer naar Apparaten > Platforminstellingen > Time-outs en stel de waarde in:
Meer informatie over de time-out voor floating conn vindt u in de opdrachtverwijzing:
Situatie 9. Probleem met HTTPS-connectiviteit (scenario 1)
Probleembeschrijving: HTTPS-communicatie tussen client 192.168.201.105 en server 192.168.202.101 kan niet worden vastgesteld
Deze afbeelding toont de topologie:
Beïnvloede stroming:
SRC IP: 192 168 201 111
Dst IP: 192 168 202 111
TCP 443 (HTTPS)
Captures inschakelen op FTD LINA-engine:
Het IP-adres dat wordt gebruikt bij de externe vastlegging is anders vanwege de configuratie voor de vertaling van het poortadres.
firepower# capture CAPI int INSIDE match ip host 192.168.201.111 host 192.168.202.111 firepower# capture CAPO int OUTSIDE match ip host 192.168.202.11 host 192.168.202.111
Deze afbeelding toont de opname gemaakt op NGFW INSIDE interface:
Belangrijkste punten:
Deze afbeelding toont de opname gemaakt op NGFW OUTSIDE interface.
Belangrijkste punten:
De acties die in deze sectie worden vermeld, hebben als doel het probleem verder te beperken.
Actie 1. Neem extra foto's.
Een opname die op de server is gemaakt, laat zien dat de server de TLS Client Hellos heeft ontvangen met een beschadigde TCP-checksum en deze stilletjes laat vallen (er is geen TCP RST of een ander antwoordpakket naar de client):
Als je alles bij elkaar legt:
In dit geval, om te begrijpen, is het nodig om Wireshark in te schakelen op de optie Valideer de TCP-checksum indien mogelijk. Navigeer naar Bewerken > Voorkeuren > Protocollen > TCP, zoals weergegeven in de afbeelding.
In dit geval is het handig om de opnames naast elkaar te plaatsen om het volledige beeld te krijgen:
Belangrijkste punten:
Ter referentie:
Firepower TLS/SSL-handshake-verwerking
Probleembeschrijving: registratie FMC Smart-licentie mislukt.
Deze afbeelding toont de topologie:
Beïnvloede stroming:
SRC IP: 192.168.0.100
DST: tools.cisco.com
TCP 443 (HTTPS)
Opname inschakelen op de FMC-beheerinterface:
Probeer je opnieuw te registreren. Zodra de foutmelding verschijnt, drukt u op CTRL-C om de opname te stoppen:
root@firepower:/Volume/home/admin# tcpdump -i eth0 port 443 -s 0 -w CAP.pcap HS_PACKET_BUFFER_SIZE is set to 4. tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes ^C264 packets captured <- CTRL-C 264 packets received by filter 0 packets dropped by kernel root@firepower:/Volume/home/admin#
Verzamel de opname vanuit de FMC (Systeem > Gezondheid > Monitor, selecteer het apparaat en selecteer Geavanceerde probleemoplossing), zoals in de afbeelding wordt weergegeven:
De afbeelding toont de FMC-opname op Wireshark:
Tip: Als u wilt controleren of alle nieuwe TCP-sessies zijn vastgelegd, gebruikt u het weergavefilter tcp.flags==0x2 op Wireshark. Hiermee worden alle TCP SYN-pakketten die zijn vastgelegd, gefilterd.
Tip: Als kolom toepassen in het veld Servernaam van de SSL-client Hello.
Tip: Pas dit weergavefilter toe om alleen de Hello-berichten van de client te zien ssl.handshake.type == 1
Opmerking: op het moment van schrijven gebruikt het Smart Licensing-portaal (tools.cisco.com) deze IP's: 72.163.4.38, 173.37.145.8
Volg een van de TCP-stromen (Volgen > TCP Stream), zoals weergegeven in de afbeelding.
Belangrijkste punten:
Selecteer het servercertificaat en vouw het veld uitgevende instelling uit om de commonName te zien. In dit geval onthult de Common Name een apparaat dat Man-in-the-middle (MITM) doet.
Dit wordt getoond in deze afbeelding:
De acties die in deze sectie worden vermeld, hebben als doel het probleem verder te beperken.
Actie 1. Neem extra foto's.
Maak opnamen op het firewallapparaat voor doorvoer:
CAPI toont:
CAPO toont:
Deze opnames bewijzen dat de transitfirewall het servercertificaat (MITM) wijzigt
Actie 2. Controleer de apparaatlogboeken.
U kunt de FMC TS-bundel verzamelen zoals beschreven in dit document:
In dit geval toont het bestand /dir-archives/var-log/process_stdout.log berichten als deze:
SOUT: 10-23 05:45:14 2019-10-23 05:45:36 sla[10068]: *Wed .967 UTC: CH-LIB-ERROR: ch_pf_curl_send_msg[494],
failed to perform, err code 60, err string "SSL peer certificate or SSH remote key was not OK" ...
SOUT: 10-23 05:45:14 2019-10-23 05:45:36 sla[10068]: *Wed .967 UTC: CH-LIB-TRACE: ch_pf_curl_is_cert_issue[514],
cert issue checking, ret 60, url "https://tools.cisco.com/its/
Aanbevolen oplossing
Schakel de MITM uit voor de specifieke stroom, zodat FMC zich met succes kan registreren in de Smart Licensing-cloud.
Situatie 11. IPv6-verbindingsprobleem
Probleembeschrijving: interne hosts (die zich achter de INSIDE-interface van de firewall bevinden) kunnen niet communiceren met externe hosts (hosts die zich achter de OUTSIDE-interface van de firewall bevinden).
Deze afbeelding toont de topologie:
Beïnvloede stroming:
SRC IP: fc00:1:1:1:100
Dst IP: fc00:1:1:2:2
Protocol: elke
Captures inschakelen op FTD LINA-engine.
firepower# capture CAPI int INSIDE match ip any6 any6 firepower# capture CAPO int OUTSIDE match ip any6 any6
Vastleggingen - Niet-functioneel scenario
Deze opnames werden parallel met een ICMP-connectiviteitstest van IP fc00:1:1:1:1:100 (binnenrouter) naar IP fc00:1:1:2:2 (upstream router) gemaakt.
De capture on firewall INSIDE-interface bevat:
Belangrijkste punten:
De capture on firewall OUTSIDE-interface bevat:
Belangrijkste punten:
Punt 4 is zeer interessant. Normaal gesproken vraagt de upstream router om de MAC van de firewall OUTSIDE-interface (fc00: 1: 1: 2: 2), maar in plaats daarvan vraagt het om de fc00: 1: 1: 1: 100. Dit is een indicatie van een misconfiguratie.
De acties die in deze sectie worden vermeld, hebben als doel het probleem verder te beperken.
Actie 1. Controleer de IPv6-buurttabel.
De firewall IPv6 Neighbor Table is correct gevuld.
firepower# show ipv6 neighbor | i fc00 fc00:1:1:2::2 58 4c4e.35fc.fcd8 STALE OUTSIDE fc00:1:1:1::100 58 4c4e.35fc.fcd8 STALE INSIDE
Actie 2. Controleer de IPv6-configuratie.
Dit is de firewallconfiguratie.
firewall# show run int e1/2 ! interface Ethernet1/2 nameif INSIDE cts manual propagate sgt preserve-untag policy static sgt disabled trusted security-level 0 ip address 192.168.0.1 255.255.255.0 ipv6 address fc00:1:1:1::1/64 ipv6 enable firewall# show run int e1/3.202 ! interface Ethernet1/3.202 vlan 202 nameif OUTSIDE cts manual propagate sgt preserve-untag policy static sgt disabled trusted security-level 0 ip address 192.168.103.96 255.255.255.0 ipv6 address fc00:1:1:2::1/64 ipv6 enable
De upstream apparaatconfiguratie laat de verkeerde configuratie zien:
Router# show run interface g0/0.202 ! interface GigabitEthernet0/0.202 encapsulation dot1Q 202 vrf forwarding VRF202 ip address 192.168.2.72 255.255.255.0 ipv6 address FC00:1:1:2::2/48
Vastleggingen - Functioneel scenario
De verandering van het subnetmasker (van /48 naar /64) loste het probleem op. Dit is de CAPI-opname in het functionele scenario.
Kernpunt:
CAPO-inhoud:
Belangrijkste punten:
Probleembeschrijving: interne hosts (192.168.0.x/24) hebben intermitterende verbindingsproblemen met hosts in hetzelfde subnet
Deze afbeelding toont de topologie:
Beïnvloede stroming:
SRC IP: 192.168.0.x/24
Dst IP: 192.168.0.x/24
Protocol: elke
De ARP-cache van een interne host lijkt te zijn vergiftigd:
Een opname inschakelen op de FTD LINA-engine
Met deze opname worden alleen ARP-pakketten vastgelegd op de INSIDE-interface:
firepower# capture CAPI_ARP interface INSIDE ethernet-type arp
Vastleggingen - Niet-functioneel scenario:
De opname op de firewall INSIDE-interface bevat.
Belangrijkste punten:
De acties die in deze sectie worden vermeld, hebben als doel het probleem verder te beperken.
Actie 1. Controleer de NAT-configuratie.
Met betrekking tot de NAT-configuratie zijn er gevallen waarin het zoekwoord no-proxy-arp het eerdere gedrag kan voorkomen:
firepower# show run nat nat (INSIDE,OUTSIDE) source static NET_1.1.1.0 NET_2.2.2.0 destination static NET_192.168.0.0 NET_4.4.4.0 no-proxy-arp
Actie 2. Schakel de proxy-arp-functionaliteit op de firewall-interface uit.
Als het zoekwoord 'no-proxy-arp' het probleem niet oplost, probeer dan proxy-ARP op de interface zelf uit te schakelen. In het geval van FTD moet u op het moment van schrijven FlexConfig gebruiken en de opdracht implementeren (geef de juiste interfacenaam op).
sysopt noproxyarp INSIDE
Deze case laat zien hoe bepaalde SNMP OID's voor geheugenpolling werden geïdentificeerd als de hoofdoorzaak van CPU-hogs (prestatieprobleem) op basis van de analyse van SNMP versie 3 (SNMPv3) pakketopnames.
Probleembeschrijving: Overruns op data-interfaces nemen voortdurend toe. Verder onderzoek toonde aan dat er ook CPU-hogs zijn (veroorzaakt door het SNMP-proces) die de hoofdoorzaak zijn van de interface-overruns.
De volgende stap in het probleemoplossingsproces was het identificeren van de hoofdoorzaak van de CPU-hogs veroorzaakt door het SNMP-proces en in het bijzonder het beperken van de reikwijdte van het probleem om de SNMP Object Identifiers (OID) te identificeren die, wanneer gepolst, mogelijk kunnen resulteren in CPU-hogs.
Momenteel biedt de FTD LINA-engine geen 'show'-opdracht voor SNMP-OID's die in realtime worden gepolst.
De lijst met SNMP-OID's voor polling kan worden opgehaald uit de SNMP-monitoringtool, maar in dit geval waren er deze preventieve factoren:
Aangezien de FTD-beheerder over de referenties voor de SNMP versie 3-verificatie en gegevenscodering beschikte, werd dit actieplan voorgesteld:
SNMP-pakketopnamen configureren op de interface die wordt gebruikt in de hostconfiguratie van de snmp-server:
firepower# show run snmp-server | include host snmp-server host management 192.168.10.10 version 3 netmonv3 firepower# show ip address management System IP Address: Interface Name IP address Subnet mask Method Management0/0 management 192.168.5.254 255.255.255.0 CONFIG Current IP Address: Interface Name IP address Subnet mask Method Management0/0 management 192.168.5.254 255.255.255.0 CONFIG firepower# capture capsnmp interface management buffer 10000000 match udp host 192.168.10.10 host 192.168.5.254 eq snmp firepower# show capture capsnmp capture capsnmp type raw-data buffer 10000000 interface outside [Capturing - 9512 bytes] match udp host 192.168.10.10 host 192.168.5.254 eq snmp
Belangrijkste punten:
De acties die in deze sectie worden vermeld, hebben als doel het probleem verder te beperken.
Actie 1. De SNMP-opnamen decoderen.
Sla de vastgelegde bestanden op en bewerk de voorkeuren van het Wireshark SNMP-protocol om de referenties van SNMP versie 3 op te geven om de pakketten te decoderen.
firepower# copy /pcap capture: tftp: Source capture name [capsnmp]? Address or name of remote host []? 192.168.10.253 Destination filename [capsnmp]? capsnmp.pcap !!!!!! 64 packets copied in 0.40 secs
Open het opnamebestand op Wireshark, selecteer een SNMP-pakket en navigeer naar Protocolvoorkeuren > Tabel Gebruikers, zoals weergegeven in de afbeelding:
In de SNMP-gebruikerstabel zijn de SNMP versie 3-gebruikersnaam, het verificatiemodel, het verificatiewachtwoord, het privacyprotocol en het privacywachtwoord opgegeven (de daadwerkelijke referenties worden hieronder niet weergegeven):
Nadat de SNMP-gebruikersinstellingen waren toegepast, toonde Wireshark gedecodeerde SNMP-PDU's:
Belangrijkste punten:
Actie 2. Identificeer de SNMP OID's.
SNMP Object Navigator toonde aan dat OID 1.3.6.1.4.1.9.9.221.1 behoort tot de Management Information Base (MIB) met de naam CISCO-ENHANCED-MEMPOOL-MIB, zoals weergegeven in de afbeelding:
De OID's in een leesbaar formaat in Wireshark weergeven:
2. In Wireshark is in Bewerken > Voorkeuren > Naam resolutie het venster OID-resolutie inschakelen ingeschakeld. Geef in het venster MIB- en PIB-paden de map op met de gedownloade MIB's en in SMI-modules (MIB- en PIB-modules). De CISCO-ENHANCED-MEMPOOL-MIB wordt automatisch toegevoegd aan de lijst met modules:
3. Zodra Wireshark opnieuw is gestart, wordt de OID-resolutie geactiveerd:
Op basis van de gedecodeerde uitvoer van het vastleggingsbestand werd het SNMP-monitoringprogramma periodiek (met een interval van 10 seconden) gebruikt om gegevens te peilen over het gebruik van geheugenpools op de FTD. Zoals uitgelegd in het TechNote-artikel ASA SNMP Polling for Memory-Related Statistics, resulteert het pollen van het gebruik van de Global Shared Pool (GSP) met SNMP in een hoog CPU-gebruik. In dit geval van de opnames was het duidelijk dat het gebruik van de Global Shared Pool periodiek werd gepolst als onderdeel van SNMP getBulkRequest primitive.
Om de CPU-hogs veroorzaakt door het SNMP-proces te minimaliseren, werd aanbevolen om de mitigatiestappen voor de CPU Hogs voor SNMP te volgen die in het artikel worden genoemd en te voorkomen dat de OID's met betrekking tot GSP worden ondervraagd. Zonder de SNMP-enquête voor de OID's die betrekking hebben op GSP werden geen CPU-hogs waargenomen die werden veroorzaakt door het SNMP-proces en nam de snelheid van overschrijdingen aanzienlijk af.
Revisie | Publicatiedatum | Opmerkingen |
---|---|---|
3.0 |
31-Jul-2024
|
Hercertificering, Alt Text, vaste kopteksten, interpunctie en HTML SEO-optimalisatie. |
2.0 |
02-Jun-2023
|
hercertificering |
1.0 |
21-Nov-2019
|
Eerste vrijgave |