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 wordt beschreven hoe u datapath-pakkettracering voor Cisco IOS® XE-software kunt uitvoeren via de functie Packet Trace.
Cisco raadt u aan kennis te hebben van deze informatie:
De packet-trace-functie is beschikbaar in Cisco IOS-XE versie 3.10 en later uitgebracht op de QFP (Quantum Flow Processor) gebaseerde routeringsplatforms, waaronder de ASR1000, ISR4000, ISR1000, Catalyst 1000, Catalyst 8000, CSR1000v en Catalyst 8000v-serie routers. Deze functie wordt niet ondersteund op de routers voor aggregatieservices uit de ASR900-reeks of de switches uit de Catalyst-reeks waarop Cisco IOS-XE-software wordt uitgevoerd.
Opmerking: de functie voor het traceren van pakketten werkt niet op de speciale beheerinterface, GigabitEthernet0 op de routers uit de ASR1000-reeks, omdat pakketten die op die interface worden doorgestuurd, niet door de QFP worden verwerkt.
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.
Om problemen zoals verkeerde configuratie, overbelasting van capaciteit of zelfs de gewone softwarebug tijdens het oplossen van problemen te identificeren, is het noodzakelijk om te begrijpen wat er gebeurt met een pakket binnen een systeem. De Cisco IOS-XE Packet Trace-functie voorziet in deze behoefte. Het biedt een veldveilige methode die wordt gebruikt voor de boekhouding en om de procesdetails per pakket vast te leggen op basis van een klasse van door de gebruiker gedefinieerde voorwaarden.
Dit diagram illustreert de topologie die wordt gebruikt voor de voorbeelden die in dit document worden beschreven:
Ter illustratie van het gebruik van de pakkettraceringsfunctie wordt in het voorbeeld dat in deze sectie wordt gebruikt, een tracering beschreven van het Internet Control Message Protocol (ICMP)-verkeer van het lokale werkstation 172.16.10.2 (achter de ASR1K) naar de externe host 172.16.20.2 in de ingangsrichting op interface GigabitEthernet0/0/1 op de ASR1K.
U kunt pakketten op de ASR1K traceren met deze twee stappen:
Hier is een snelstartgids als u al bekend bent met de inhoud van dit document en een sectie wilt voor een snelle blik op de CLI. Dit zijn slechts enkele voorbeelden om het gebruik van de tool te illustreren. Raadpleeg de latere secties waarin de syntaxen in detail worden besproken en zorg ervoor dat u de configuratie gebruikt die geschikt is voor uw vereiste.
debug platform condition ipv4 10.0.0.1/32 both --> matches in and out packets with source
or destination as 10.0.0.1/32
debug platform condition ipv4 access-list 198 egress --> (Ensure access-list 198 is
defined prior to configuring this command) - matches egress packets corresponding
to access-list 198
debug platform condition interface gig 0/0/0 ingress --> matches all ingress packets
on interface gig 0/0/0
debug platform condition mpls 10 1 ingress --> matches MPLS packets with top ingress
label 10
debug platform condition ingress --> matches all ingress packets on all interfaces
(use cautiously)
Nadat een platformvoorwaarde is geconfigureerd, start u de platformvoorwaarden met deze CLI-opdracht:
debug platform condition start
debug platform packet-trace packet 1024 -> basic path-trace, and automatically stops
tracing packets after 1024 packets. You can use "circular" option if needed debug platform packet-trace packet 1024 fia-trace -> enables detailed fia trace, stops
tracing packets after 1024 packets debug platform packet-trace drop [code] -> if you want to trace/capture only
packets that are dropped. Refer to Drop Trace section for more details.
Opmerking: In eerdere versies van Cisco IOS-XE 3.x is het opdrachtdebugplatform packet-trace inschakelen ook vereist om de pakkettraceringsfunctie te starten. Dit is niet langer vereist in Cisco IOS-XE 16.x-releases.
Voer deze opdracht in om de traceringsbuffer te wissen en packet-trace opnieuw in te stellen:
clear platform packet-trace statistics --> clear the packet trace buffer
De opdracht om zowel de platformvoorwaarden als de pakkettraceringsconfiguratie te wissen is:
clear platform condition all --> clears both platform conditions and the packet trace configuration
Opdrachten weergeven
Controleer de platformconditie en pakkettraceringsconfiguratie nadat u de vorige opdrachten hebt toegepast om ervoor te zorgen dat u hebt wat u nodig hebt.
show platform conditions --> shows the platform conditions configured
show platform packet-trace configuration --> shows the packet-trace configurations
show debugging --> this can show both platform conditions and platform packet-trace configured
Hier zijn de opdrachten om de getraceerde/vastgelegde pakketten te controleren:
show platform packet-trace statistics --> statistics of packets traced
show platform packet-trace summary --> summary of all the packets traced, with input and
output interfaces, processing result and reason. show platform packet-trace packet 12 -> Display path trace of FIA trace details for the 12th packet in the trace buffer
De Packet Trace-functie is afhankelijk van de voorwaardelijke debug-infrastructuur om te bepalen welke pakketten moeten worden getraceerd. De voorwaardelijke debug-infrastructuur biedt de mogelijkheid om verkeer te filteren op basis van:
Deze voorwaarden bepalen waar en wanneer de filters op een pakket worden toegepast.
Voor het verkeer dat in dit voorbeeld wordt gebruikt, schakelt u voorwaardelijke platformfouten in de ingangsrichting in voor ICMP-pakketten van 172.16.10.2 tot 172.16.20.2. Met andere woorden, selecteer het verkeer dat u wilt traceren. Er zijn verschillende opties die u kunt gebruiken om dit verkeer te selecteren.
ASR1000#debug platform condition ?
egress Egress only debug
feature For a specific feature
ingress Ingress only debug
interface Set interface for conditional debug
ipv4 Debug IPv4 conditions
ipv6 Debug IPv6 conditions
start Start conditional debug
stop Stop conditional debug
In dit voorbeeld wordt een toegangslijst gebruikt om de voorwaarde te definiëren, zoals hier wordt weergegeven:
ASR1000#show access-list 150
Extended IP access list 150
10 permit icmp host 172.16.10.2 host 172.16.20.2
ASR1000#debug platform condition interface gig 0/0/1 ipv4
access-list 150 ingress
Voer deze opdracht in om voorwaardelijk foutopsporing te starten:
ASR1000#debug platform condition start
Opmerking: Als u de voorwaardelijke foutopsporingsinfrastructuur wilt stoppen of uitschakelen, voert u de opdracht voor het stopzetten van de foutopsporingsplatformvoorwaarde in.
Voer deze opdracht in om de geconfigureerde voorwaardelijke foutopsporingsfilters te bekijken:
ASR1000#show platform conditions
Conditional Debug Global State: Start
Conditions Direction
----------------------------------------------------------------------|---------
GigabitEthernet0/0/1 & IPV4 ACL [150] ingress
Feature Condition Format Value
-----------------------|-----------------------|--------------------------------
ASR1000#
Samengevat is deze configuratie tot nu toe toegepast:
access-list 150 permit icmp host 172.16.10.2 host 172.16.20.2
debug platform condition interface gig 0/0/1 ipv4 access-list 150 ingress
debug platform condition start
Opmerking: in dit gedeelte worden de pakket- en kopieeropties gedetailleerd beschreven en de andere opties worden verderop in het document beschreven.
Packet traces worden ondersteund op zowel de fysieke als de logische interfaces, zoals Tunnel- of Virtual-Access-interfaces.
Hier is de packet trace CLI-syntaxis:
ASR1000#debug platform packet-trace ?
copy Copy packet data
drop Trace drops only
inject Trace injects only
packet Packet count
punt Trace punts only
debug platform packet-trace packet[fia-trace | summary-only]
[circular] [data-size]
Hier zijn beschrijvingen voor de sleutelwoorden van dit commando:
debug platform packet-trace copy packet {in | out | both} [L2 | L3 | L4]
[size]
Hier zijn beschrijvingen voor de sleutelwoorden van dit commando:
In dit voorbeeld is dit de opdracht die wordt gebruikt om packet trace in te schakelen voor het verkeer dat is geselecteerd met de voorwaardelijke foutopsporingsinfrastructuur:
ASR1000#debug platform packet-trace packet 16
Voer deze opdracht in om de pakkettraceringsconfiguratie te bekijken:
ASR1000#show platform packet-trace configuration
debug platform packet-trace packet 16 data-size 2048
U kunt ook de opdracht show debugging invoeren om zowel de voorwaardelijke foutopsporing van het platform als de pakkettraceringsconfiguraties te bekijken:
ASR1000# show debugging
IOSXE Conditional Debug Configs:
Conditional Debug Global State: Start
Conditions
Direction
----------------------------------------------------------------------|---------
GigabitEthernet0/0/1 & IPV4 ACL [150] ingress
...
IOSXE Packet Tracing Configs:
Feature Condition Format Value
-----------------------|-----------------------|--------------------------------
Feature Type Submode Level
-------|--------------|----------------------------------------------|----------
IOSXE Packet Tracing Configs:
debug platform packet-trace packet 16 data-size 2048
Opmerking: Voer de opdracht voor het wissen van alle platformvoorwaarden in om alle foutopsporingsvoorwaarden voor het platform en de pakkettraceringsconfiguraties en -gegevens te wissen.
Samengevat zijn deze configuratiegegevens tot nu toe gebruikt om packet-trace mogelijk te maken:
debug platform packet-trace packet 16
De voorwaarden definiëren de voorwaardelijke filters en wanneer ze worden toegepast op een pakket. Bijvoorbeeld, debug platform condition interface g0/0/0 egress betekent dat een pakket wordt geïdentificeerd als een match wanneer het de output FIA bereikt op interface g0/0/0, dus elke pakketverwerking die plaatsvindt vanaf ingress tot dat punt wordt gemist.
Opmerking: Cisco raadt u ten zeerste aan om ingangsvoorwaarden te gebruiken voor pakketsporen om de meest volledige en zinvolle gegevens mogelijk te krijgen. De uitstapvoorwaarden kunnen worden gebruikt, maar houd rekening met de beperkingen.
Opmerking: in deze sectie wordt ervan uitgegaan dat padtracering is ingeschakeld.
De packet trace biedt drie specifieke inspectieniveaus:
Wanneer vijf ICMP-aanvraagpakketten worden verzonden van 172.16.10.2 tot 172.16.20.2, kunnen deze opdrachten worden gebruikt om de resultaten van het volgen van pakketten weer te geven:
ASR1000#show platform packet-trace statistics
Packets Traced: 5
Ingress 5
Inject 0
Forward 5
Punt 0
Drop 0
Consume 0
ASR1000#show platform packet-trace summary
Pkt Input Output State Reason
0 Gi0/0/1 Gi0/0/0 FWD
1 Gi0/0/1 Gi0/0/0 FWD
2 Gi0/0/1 Gi0/0/0 FWD
3 Gi0/0/1 Gi0/0/0 FWD
4 Gi0/0/1 Gi0/0/0 FWD
ASR1000#show platform packet-trace packet 0
Packet: 0 CBUG ID: 4
Summary
Input : GigabitEthernet0/0/1
Output : GigabitEthernet0/0/0
State : FWD
Timestamp
Start : 1819281992118 ns (05/17/2014 06:42:01.207240 UTC)
Stop : 1819282095121 ns (05/17/2014 06:42:01.207343 UTC)
Path Trace
Feature: IPV4
Source : 172.16.10.2
Destination : 172.16.20.2
Protocol : 1 (ICMP)
ASR1000#
Opmerking: De derde opdracht geeft een voorbeeld dat illustreert hoe u de pakkettrace voor elk pakket kunt bekijken. In dit voorbeeld wordt het eerste getraceerde pakket getoond.
Aan de hand van deze uitgangen kunt u zien dat vijf pakketten worden getraceerd en dat u de invoerinterface, de uitvoerinterface, de status en het pad kunt bekijken.
Toestand | bemerking |
FWD | Het pakket is gepland / in de wachtrij voor levering, om via een uitgang-interface naar de volgende hop te worden doorgestuurd. |
SCHROEF | Het pakket wordt gepunteerd van de Forwarding Processor (FP) naar de Route Processor (RP) (control plane). |
AFWIJZING | Het pakket wordt op de FP gedropt. Voer FIA-trace uit, gebruik globale droptellers of gebruik foutopsporingssoftware voor datapath om meer details te vinden voor dropredenen. |
NADELEN | Het pakket wordt verbruikt tijdens een pakketproces, zoals tijdens het ICMP-pingverzoek of de cryptopakketten. |
De ingress- en injecteer-tellers in de uitvoer van de pakkettracerstatistieken komen overeen met de pakketten die via een externe interface binnenkomen en pakketten die worden gezien als geïnjecteerd vanuit het controlevlak.
De FIA heeft de lijst met functies die sequentieel worden uitgevoerd door de Packet Processor Engines (PPE) in de Quantum Flow Processor (QFP) wanneer een pakket wordt doorgestuurd, hetzij ingress of egress. De functies zijn gebaseerd op de configuratiegegevens die op de machine worden toegepast. Zo helpt een FIA-tracering om de stroom van het pakket door het systeem te begrijpen terwijl het pakket wordt verwerkt.
U moet deze configuratiegegevens toepassen om packet trace met FIA mogelijk te maken:
ASR1000#debug platform packet-trace packet 16 fia-trace
Opmerking: in deze sectie wordt ervan uitgegaan dat FIA-trace is ingeschakeld. Wanneer u de huidige pakkettraceringsopdrachten toevoegt of wijzigt, worden de gebufferde pakkettraceringsgegevens gewist, zodat u weer verkeer moet verzenden zodat u het kunt traceren.
Verzend vijf ICMP-pakketten van 172.16.10.2 tot 172.16.20.2 nadat u de opdracht hebt ingevoerd die wordt gebruikt om de FIA-trace in te schakelen, zoals beschreven in de vorige sectie.
ASR1000#show platform packet-trace summary
Pkt Input Output State Reason
0 Gi0/0/1 Gi0/0/0 FWD
1 Gi0/0/1 Gi0/0/0 FWD
2 Gi0/0/1 Gi0/0/0 FWD
3 Gi0/0/1 Gi0/0/0 FWD
4 Gi0/0/1 Gi0/0/0 FWD
ASR1000#show platform packet-trace packet 0
Packet: 0 CBUG ID: 9
Summary
Input : GigabitEthernet0/0/1
Output : GigabitEthernet0/0/0
State : FWD
Timestamp
Start : 1819281992118 ns (05/17/2014 06:42:01.207240 UTC)
Stop : 1819282095121 ns (05/17/2014 06:42:01.207343 UTC)
Path Trace
Feature: IPV4
Source : 172.16.10.2
Destination : 172.16.20.2
Protocol : 1 (ICMP)
Feature: FIA_TRACE
Entry : 0x8059dbe8 - DEBUG_COND_INPUT_PKT
Timestamp : 3685243309297
Feature: FIA_TRACE
Entry : 0x82011a00 - IPV4_INPUT_DST_LOOKUP_CONSUME
Timestamp : 3685243311450
Feature: FIA_TRACE
Entry : 0x82000170 - IPV4_INPUT_FOR_US_MARTIAN
Timestamp : 3685243312427
Feature: FIA_TRACE
Entry : 0x82004b68 - IPV4_OUTPUT_LOOKUP_PROCESS
Timestamp : 3685243313230
Feature: FIA_TRACE
Entry : 0x8034f210 - IPV4_INPUT_IPOPTIONS_PROCESS
Timestamp : 3685243315033
Feature: FIA_TRACE
Entry : 0x82013200 - IPV4_OUTPUT_GOTO_OUTPUT_FEATURE
Timestamp : 3685243315787
Feature: FIA_TRACE
Entry : 0x80321450 - IPV4_VFR_REFRAG
Timestamp : 3685243316980
Feature: FIA_TRACE
Entry : 0x82014700 - IPV6_INPUT_L2_REWRITE
Timestamp : 3685243317713
Feature: FIA_TRACE
Entry : 0x82000080 - IPV4_OUTPUT_FRAG
Timestamp : 3685243319223
Feature: FIA_TRACE
Entry : 0x8200e500 - IPV4_OUTPUT_DROP_POLICY
Timestamp : 3685243319950
Feature: FIA_TRACE
Entry : 0x8059aff4 - PACTRAC_OUTPUT_STATS
Timestamp : 3685243323603
Feature: FIA_TRACE
Entry : 0x82016100 - MARMOT_SPA_D_TRANSMIT_PKT
Timestamp : 3685243326183
ASR1000#
Wanneer u voorwaardelijke foutopsporing op het platform inschakelt, wordt voorwaardelijke foutopsporing toegevoegd aan de FIA als een functie. Op basis van de functie volgorde van verwerking op de interface, moet het voorwaardelijke filter dienovereenkomstig worden ingesteld, bijvoorbeeld of het pre- of post-NAT-adres moet worden gebruikt in het voorwaardelijke filter.
Deze uitvoer toont de volgorde van de functies in de FIA voor het voorwaardelijke debuggen van het platform dat is ingeschakeld in de ingangsrichting:
ASR1000#show platform hardware qfp active interface if-name GigabitEthernet 0/0/1
General interface information
Interface Name: GigabitEthernet0/0/1
Interface state: VALID
Platform interface handle: 10
QFP interface handle: 8
Rx uidb: 1021
Tx uidb: 131064
Channel: 16
Interface Relationships
BGPPA/QPPB interface configuration information
Ingress: BGPPA/QPPB not configured. flags: 0000
Egress : BGPPA not configured. flags: 0000
ipv4_input enabled.
ipv4_output enabled.
layer2_input enabled.
layer2_output enabled.
ess_ac_input enabled.
Features Bound to Interface:
2 GIC FIA state
48 PUNT INJECT DB
39 SPA/Marmot server
40 ethernet
1 IFM
31 icmp_svr
33 ipfrag_svr
34 ipreass_svr
36 ipvfr_svr
37 ipv6vfr_svr
12 CPP IPSEC
Protocol 0 - ipv4_input
FIA handle - CP:0x108d99cc DP:0x8070f400
IPV4_INPUT_DST_LOOKUP_ISSUE (M)
IPV4_INPUT_ARL_SANITY (M)
CBUG_INPUT_FIA
DEBUG_COND_INPUT_PKT
IPV4_INPUT_DST_LOOKUP_CONSUME (M)
IPV4_INPUT_FOR_US_MARTIAN (M)
IPV4_INPUT_IPSEC_CLASSIFY
IPV4_INPUT_IPSEC_COPROC_PROCESS
IPV4_INPUT_IPSEC_RERUN_JUMP
IPV4_INPUT_LOOKUP_PROCESS (M)
IPV4_INPUT_IPOPTIONS_PROCESS (M)
IPV4_INPUT_GOTO_OUTPUT_FEATURE (M)
Protocol 1 - ipv4_output
FIA handle - CP:0x108d9a34 DP:0x8070eb00
IPV4_OUTPUT_VFR
MC_OUTPUT_GEN_RECYCLE (D)
IPV4_VFR_REFRAG (M)
IPV4_OUTPUT_IPSEC_CLASSIFY
IPV4_OUTPUT_IPSEC_COPROC_PROCESS
IPV4_OUTPUT_IPSEC_RERUN_JUMP
IPV4_OUTPUT_L2_REWRITE (M)
IPV4_OUTPUT_FRAG (M)
IPV4_OUTPUT_DROP_POLICY (M)
PACTRAC_OUTPUT_STATS
MARMOT_SPA_D_TRANSMIT_PKT
DEF_IF_DROP_FIA (M)
Protocol 8 - layer2_input
FIA handle - CP:0x108d9bd4 DP:0x8070c700
LAYER2_INPUT_SIA (M)
CBUG_INPUT_FIA
DEBUG_COND_INPUT_PKT
LAYER2_INPUT_LOOKUP_PROCESS (M)
LAYER2_INPUT_GOTO_OUTPUT_FEATURE (M)
Protocol 9 - layer2_output
FIA handle - CP:0x108d9658 DP:0x80714080
LAYER2_OUTPUT_SERVICEWIRE (M)
LAYER2_OUTPUT_DROP_POLICY (M)
PACTRAC_OUTPUT_STATS
MARMOT_SPA_D_TRANSMIT_PKT
DEF_IF_DROP_FIA (M)
Protocol 14 - ess_ac_input
FIA handle - CP:0x108d9ba0 DP:0x8070cb80
PPPOE_GET_SESSION
ESS_ENTER_SWITCHING
PPPOE_HANDLE_UNCLASSIFIED_SESSION
DEF_IF_DROP_FIA (M)
QfpEth Physical Information
DPS Addr: 0x11215eb8
Submap Table Addr: 0x00000000
VLAN Ethertype: 0x8100
QOS Mode: Per Link
ASR1000#
Opmerking: De CBUG_INPUT_FIA en de DEBUG_COND_INPUT_PKT komen overeen met de voorwaardelijke foutopsporingsfuncties die op de router zijn geconfigureerd.
U kunt de pakketten kopiëren en dumpen terwijl ze worden getraceerd, zoals in dit gedeelte wordt beschreven. In dit voorbeeld wordt getoond hoe u maximaal 2.048 bytes van de pakketten in de ingangsrichting kunt kopiëren (172.16.10.2 tot 172.16.20.2).
Hier is het extra commando dat nodig is:
ASR1000#debug platform packet-trace copy packet input size 2048
Opmerking: de grootte van het pakket dat wordt gekopieerd, ligt tussen 16 en 2.048 bytes.
Voer deze opdracht in om de gekopieerde pakketten te dumpen:
ASR1000#show platform packet-trace packet 0
Packet: 0 CBUG ID: 14
Summary
Input : GigabitEthernet0/0/1
Output : GigabitEthernet0/0/0
State : FWD
Timestamp
Start : 1819281992118 ns (05/17/2014 06:40:01.207240 UTC)
Stop : 1819282095121 ns (05/17/2014 06:40:01.207343 UTC)
Path Trace
Feature: IPV4
Source : 172.16.10.2
Destination : 172.16.20.2
Protocol : 1 (ICMP)
Feature: FIA_TRACE
Entry : 0x8059dbe8 - DEBUG_COND_INPUT_PKT
Timestamp : 4458180580929
<some content excluded>
Feature: FIA_TRACE
Entry : 0x82016100 - MARMOT_SPA_D_TRANSMIT_PKT
Timestamp : 4458180593896
Packet Copy In
a4934c8e 33020023 33231379 08004500 00640160 0000ff01 5f16ac10 0201ac10
01010800 1fd40024 00000000 000184d0 d980abcd abcdabcd abcdabcd abcdabcd
abcdabcd abcdabcd abcdabcd abcdabcd abcdabcd abcdabcd abcdabcd abcdabcd
abcdabcd abcdabcd abcdabcd abcdabcd abcd
ASR1000#
Drop trace is beschikbaar in Cisco IOS-XE Software Release 3.11 en hoger. Het maakt packet trace alleen mogelijk voor gedropte pakketten. Hier zijn enkele hoogtepunten van de functie:
Hier is de opdrachtsyntaxis die wordt gebruikt om droptype pakketsporen in te schakelen:
debug platform packet-trace drop [code]
De dropcode is hetzelfde als de drop-ID, zoals gerapporteerd in de show platform hardware qfp active statistics drop detail command output:
ASR1000#show platform hardware qfp active statistics drop detail
--------------------------------------------------------------------------------
ID Global Drop Stats Packets Octets
--------------------------------------------------------------------------------
60 IpTtlExceeded 3 126
8 Ipv4Acl 32 3432
Pas deze ACL toe op de Gig 0/0/0-interface van de ASR1K om het verkeer van 172.16.10.2 tot 172.16.20.2 te verminderen:
access-list 199 deny ip host 172.16.10.2 host 172.16.20.2
access-list 199 permit ip any any
interface Gig 0/0/0
ip access-group 199 out
Met de ACL op zijn plaats, die het verkeer van de lokale host naar de externe host laat vallen, past u deze drop-trace-configuratie toe:
debug platform condition interface Gig 0/0/1 ingress
debug platform condition start
debug platform packet-trace packet 1024 fia-trace
debug platform packet-trace drop
Verzend vijf ICMP-aanvraagpakketten van 172.16.10.2 tot 172.16.20.2. De droptrace legt deze pakketten vast die door de ACL worden gedropt, zoals wordt weergegeven:
ASR1000#show platform packet-trace statistics
Packets Summary
Matched 5
Traced 5
Packets Received
Ingress 5
Inject 0
Packets Processed
Forward 0
Punt 0
Drop 5
Count Code Cause
5 8 Ipv4Acl
Consume 0
ASR1000#show platform packet-trace summary
Pkt Input Output State Reason
0 Gi0/0/1 Gi0/0/0 DROP 8 (Ipv4Acl)
1 Gi0/0/1 Gi0/0/0 DROP 8 (Ipv4Acl)
2 Gi0/0/1 Gi0/0/0 DROP 8 (Ipv4Acl)
3 Gi0/0/1 Gi0/0/0 DROP 8 (Ipv4Acl)
4 Gi0/0/1 Gi0/0/0 DROP 8 (Ipv4Acl)
ASR1K#debug platform condition stop
ASR1K#show platform packet-trace packet 0
Packet: 0 CBUG ID: 140
Summary
Input : GigabitEthernet0/0/1
Output : GigabitEthernet0/0/0
State : DROP 8 (Ipv4Acl)
Timestamp
Start : 1819281992118 ns (05/17/2014 06:42:01.207240 UTC)
Stop : 1819282095121 ns (05/17/2014 06:42:01.207343 UTC)
Path Trace
Feature: IPV4
Source : 172.16.10.2
Destination : 172.16.20.2
Protocol : 1 (ICMP)
Feature: FIA_TRACE
Entry : 0x806c7eac - DEBUG_COND_INPUT_PKT
Lapsed time: 1031 ns
Feature: FIA_TRACE
Entry : 0x82011c00 - IPV4_INPUT_DST_LOOKUP_CONSUME
Lapsed time: 657 ns
Feature: FIA_TRACE
Entry : 0x806a2698 - IPV4_INPUT_ACL
Lapsed time: 2773 ns
Feature: FIA_TRACE
Entry : 0x82000170 - IPV4_INPUT_FOR_US_MARTIAN
Lapsed time: 1013 ns
Feature: FIA_TRACE
Entry : 0x82004500 - IPV4_OUTPUT_LOOKUP_PROCESS
Lapsed time: 2951 ns
Feature: FIA_TRACE
Entry : 0x8041771c - IPV4_INPUT_IPOPTIONS_PROCESS
Lapsed time: 373 ns
Feature: FIA_TRACE
Entry : 0x82013400 - MPLS_INPUT_GOTO_OUTPUT_FEATURE
Lapsed time: 2097 ns
Feature: FIA_TRACE
Entry : 0x803c60b8 - IPV4_MC_OUTPUT_VFR_REFRAG
Lapsed time: 373 ns
Feature: FIA_TRACE
Entry : 0x806db148 - OUTPUT_DROP
Lapsed time: 1297 ns
Feature: FIA_TRACE
Entry : 0x806a0c98 - IPV4_OUTPUT_ACL
Lapsed time: 78382 ns
ASR1000#
De injectie- en puntpakkettraceringsfunctie werd toegevoegd in Cisco IOS-XE Software Release 3.12 en later om puntpakketten (pakketten die op de FP worden ontvangen en op het controlevlak worden gepunteerd) en injecteerpakketten (pakketten die vanuit het controlevlak in de FP worden geïnjecteerd) te traceren.
Opmerking: de punttrace kan werken zonder de algemene of interfacevoorwaarden, net als een droptrace. De voorwaarden moeten echter worden gedefinieerd voor een inspuitspoor naar het werk.
Hier is een voorbeeld van eenpunt
en inject packet trace
wanneer u van de ASR1K naar een aangrenzende router gaat:
ASR1000#debug platform condition ipv4 172.16.10.2/32 both
ASR1000#debug platform condition start
ASR1000#debug platform packet-trace punt
ASR1000#debug platform packet-trace inject
ASR1000#debug platform packet-trace packet 16
ASR1000#
ASR1000#ping 172.16.10.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.10.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 14/14/15 ms
ASR1000#
Nu kunt u depunt
resultaten ennject trace
r
resultaten verifiëren:
ASR1000#show platform packet-trace summary
Pkt Input Output State Reason
0 INJ.2 Gi0/0/1 FWD
1 Gi0/0/1 internal0/0/rp:0 PUNT 11 (For-us data)
2 INJ.2 Gi0/0/1 FWD
3 Gi0/0/1 internal0/0/rp:0 PUNT 11 (For-us data)
4 INJ.2 Gi0/0/1 FWD
5 Gi0/0/1 internal0/0/rp:0 PUNT 11 (For-us data)
6 INJ.2 Gi0/0/1 FWD
7 Gi0/0/1 internal0/0/rp:0 PUNT 11 (For-us data)
8 INJ.2 Gi0/0/1 FWD
9 Gi0/0/1 internal0/0/rp:0 PUNT 11 (For-us data)
ASR1000#show platform packet-trace packet 0
Packet: 0 CBUG ID: 120
Summary
Input : INJ.2
Output : GigabitEthernet0/0/1
State : FWD
Timestamp
Start : 115612780360228 ns (05/29/2014 15:02:55.467987 UTC)
Stop : 115612780380931 ns (05/29/2014 15:02:55.468008 UTC)
Path Trace
Feature: IPV4
Source : 172.16.10.1
Destination : 172.16.10.2
Protocol : 1 (ICMP)
ASR1000#
ASR1000#show platform packet-trace packet 1
Packet: 1 CBUG ID: 121
Summary
Input : GigabitEthernet0/0/1
Output : internal0/0/rp:0
State : PUNT 11 (For-us data)
Timestamp
Start : 115612781060418 ns (05/29/2014 15:02:55.468687 UTC)
Stop : 115612781120041 ns (05/29/2014 15:02:55.468747 UTC)
Path Trace
Feature: IPV4
Source : 172.16.10.2
Destination : 172.16.10.1
Protocol : 1 (ICMP)
Packet Trace Enhancement met IOSd en LFTS Punt/Injecteer Trace en UDF Matching (nieuw in 17.3.1)
De pakkettraceringsfunctie is verder verbeterd om aanvullende traceringsinformatie te bieden voor pakketten die zijn ontstaan of bestemd zijn voor IOSd of andere BinOS-processen in Cisco IOS-XE versie 17.3.1.
Met deze verbetering wordt packet tracing uitgebreid naar IOSd en kan informatie worden verstrekt over pakketdruppels in IOSd, die meestal worden gerapporteerd in de uitvoer van showip-verkeer. Er is geen extra configuratie vereist om droptracing van IOSd in te schakelen. Hier is een voorbeeld van een UDP-pakket dat door IOSd is gevallen vanwege een fout in de controlesom:
Router#debug platform condition ipv4 10.118.74.53/32 both Router#debug platform condition start Router#debug platform packet-trace packet 200 Packet count rounded up from 200 to 256 Router# Router#show plat pack pa 0 Packet: 0 CBUG ID: 674 Summary Input : GigabitEthernet1 Output : internal0/0/rp:0 State : PUNT 11 (For-us data) Timestamp Start : 17756544435656 ns (06/29/2020 18:19:17.326313 UTC) Stop : 17756544469451 ns (06/29/2020 18:19:17.326346 UTC) Path Trace Feature: IPV4(Input) Input : GigabitEthernet1 Output : <unknown> Source : 10.118.74.53 Destination : 172.18.124.38 Protocol : 17 (UDP) SrcPort : 2640 DstPort : 500 IOSd Path Flow: Packet: 0 CBUG ID: 674 Feature: INFRA Pkt Direction: IN Packet Rcvd From DATAPLANE Feature: IP Pkt Direction: IN Packet Enqueued in IP layer Source : 10.118.74.53 Destination : 172.18.124.38 Interface : GigabitEthernet1 Feature: IP Pkt Direction: IN FORWARDED To transport layer Source : 10.118.74.53 Destination : 172.18.124.38 Interface : GigabitEthernet1 Feature: UDP Pkt Direction: IN DROPPED UDP: Checksum error: dropping Source : 10.118.74.53(2640) Destination : 172.18.124.38(500)
Packet trace is verbeterd om de path trace en protocolverwerkingsinformatie weer te geven, omdat het pakket afkomstig is van IOSd en in de richting van het netwerk wordt verzonden. Er is geen extra configuratie vereist om de traceringsinformatie van het IOS-toegangspad vast te leggen. Hier is een voorbeeld van het traceren van het uitgaand pad voor een SSH-pakket dat de router reguleert:
Router#show platform packet-trace packet 2 Packet: 2 CBUG ID: 2 IOSd Path Flow: Feature: TCP Pkt Direction: OUTtcp0: O SYNRCVD 172.18.124.38:22 172.18.124.55:52774 seq 3052140910 OPTS 4 ACK 2346709419 SYN WIN 4128 Feature: TCP Pkt Direction: OUT FORWARDED TCP: Connection is in SYNRCVD state ACK : 2346709419 SEQ : 3052140910 Source : 172.18.124.38(22) Destination : 172.18.124.55(52774) Feature: IP Pkt Direction: OUTRoute out the generated packet.srcaddr: 172.18.124.38, dstaddr: 172.18.124.55 Feature: IP Pkt Direction: OUTInject and forward successful srcaddr: 172.18.124.38, dstaddr: 172.18.124.55 Feature: TCP Pkt Direction: OUTtcp0: O SYNRCVD 172.18.124.38:22 172.18.124.55:52774 seq 3052140910 OPTS 4 ACK 2346709419 SYN WIN 4128 Summary Input : INJ.2 Output : GigabitEthernet1 State : FWD Timestamp Start : 490928006866 ns (06/29/2020 13:31:30.807879 UTC) Stop : 490928038567 ns (06/29/2020 13:31:30.807911 UTC) Path Trace Feature: IPV4(Input) Input : internal0/0/rp:0 Output : <unknown> Source : 172.18.124.38 Destination : 172.18.124.55 Protocol : 6 (TCP) SrcPort : 22 DstPort : 52774 Feature: IPSec Result : IPSEC_RESULT_DENY Action : SEND_CLEAR SA Handle : 0 Peer Addr : 172.18.124.55 Local Addr: 172.18.124.38
LFTS (Linux Forwarding Transport Service) is een transportmechanisme om pakketten die van de CPP naar andere toepassingen dan IOSd worden gepunteerd, door te sturen. LFTS packet tracing enhancement heeft tracing informatie toegevoegd voor dergelijke pakketten in de path trace output. Er is geen aanvullende configuratie vereist om de LFTS-traceringsinformatie te verkrijgen. Hier is een voorbeeld van uitvoer van LFTS-tracering voor punted packet naar de NETCONF-toepassing:
Router#show plat packet-trace pac 0 Packet: 0 CBUG ID: 461 Summary Input : GigabitEthernet1 Output : internal0/0/rp:0 State : PUNT 11 (For-us data) Timestamp Start : 647999618975 ns (06/30/2020 02:18:06.752776 UTC) Stop : 647999649168 ns (06/30/2020 02:18:06.752806 UTC) Path Trace Feature: IPV4(Input) Input : GigabitEthernet1 Output : <unknown> Source : 10.118.74.53 Destination : 172.18.124.38 Protocol : 6 (TCP) SrcPort : 65365 DstPort : 830 LFTS Path Flow: Packet: 0 CBUG ID: 461 Feature: LFTS Pkt Direction: IN Punt Cause : 11 subCause : 0
In Cisco IOS-XE release17.3.1 wordt ook een nieuw pakketmatchingmechanisme toegevoegd aan de ASR1000-productfamilies om te matchen op willekeurig veld in een pakket op basis van de User Defined Filter (UDF)-infrastructuur. Dit maakt flexibele pakketmatching mogelijk op basis van velden die geen deel uitmaken van de standaard L2/L3/L4-kopstructuur. Het volgende voorbeeld toont een UDF-definitie die overeenkomt met 2 bytes door de gebruiker gedefinieerd patroon van 0x4D2 dat begint met een offset van 26 bytes van de L3-kop van het buitenste protocol.
udf grekey header outer l3 26 2 ip access-list extended match-grekey 10 permit ip any any udf grekey 0x4D2 0xFFFF debug plat condition ipv4 access-list match-grekey both debug plat condition start debug plat packet-trace pack 100
In dit gedeelte vindt u enkele voorbeelden waar de functie voor het traceren van pakketten nuttig is voor het oplossen van problemen.
In dit voorbeeld wordt een broninterface Network Address Translation (NAT) geconfigureerd op de WAN-interface van een ASR1K (Gig0/0/0) voor het lokale subnet (172.16.10.0/24).
Hier is de platformconditie en pakkettraceringsconfiguratie die wordt gebruikt om het verkeer te traceren van 172.16.10.2 tot 172.16.20.2, dat wordt vertaald (NAT) op de Gig0/0/0-interface:
debug platform condition interface Gig 0/0/1 ingress
debug platform condition start
debug platform packet-trace packet 1024 fia-trace
Wanneer vijf ICMP-pakketten worden verzonden van 172.16.10.2 tot 172.16.20.2 met een NAT-configuratie van de interfacebron, zijn dit de resultaten voor het traceren van pakketten:
ASR1000#show platform packet-trace summary
Pkt Input Output State Reason
0 Gi0/0/1 Gi0/0/0 FWD
1 Gi0/0/1 Gi0/0/0 FWD
2 Gi0/0/1 Gi0/0/0 FWD
3 Gi0/0/1 Gi0/0/0 FWD
4 Gi0/0/1 Gi0/0/0 FWD
ASR1000#show platform packet-trace statistics
Packets Summary
Matched 5
Traced 5
Packets Received
Ingress 5
Inject 0
Packets Processed
Forward 5
Punt 0
Drop 0
Consume 0
ASR1000#show platform packet-trace packet 0
Packet: 0 CBUG ID: 146
Summary
Input : GigabitEthernet0/0/1
Output : GigabitEthernet0/0/0
State : FWD
Timestamp
Start : 3010217805313 ns (05/17/2014 07:01:52.227836 UTC)
Stop : 3010217892847 ns (05/17/2014 07:01:52.227923 UTC)
Path Trace
Feature: IPV4
Source : 172.16.10.2
Destination : 172.16.20.2
Protocol : 1 (ICMP)
Feature: FIA_TRACE
Entry : 0x806c7eac - DEBUG_COND_INPUT_PKT
Lapsed time: 1031 ns
Feature: FIA_TRACE
Entry : 0x82011c00 - IPV4_INPUT_DST_LOOKUP_CONSUME
Lapsed time: 462 ns
Feature: FIA_TRACE
Entry : 0x82000170 - IPV4_INPUT_FOR_US_MARTIAN
Lapsed time: 355 ns
Feature: FIA_TRACE
Entry : 0x803c6af4 - IPV4_INPUT_VFR
Lapsed time: 266 ns
Feature: FIA_TRACE
Entry : 0x82004500 - IPV4_OUTPUT_LOOKUP_PROCESS
Lapsed time: 942 ns
Feature: FIA_TRACE
Entry : 0x8041771c - IPV4_INPUT_IPOPTIONS_PROCESS
Lapsed time: 88 ns
Feature: FIA_TRACE
Entry : 0x82013400 - MPLS_INPUT_GOTO_OUTPUT_FEATURE
Lapsed time: 568 ns
Feature: FIA_TRACE
Entry : 0x803c6900 - IPV4_OUTPUT_VFR
Lapsed time: 266 ns
Feature: NAT
Direction : IN to OUT
Action : Translate Source
Old Address : 172.16.10.2 00028
New Address : 192.168.10.1 00002
Feature: FIA_TRACE
Entry : 0x8031c248 - IPV4_NAT_OUTPUT_FIA
Lapsed time: 55697 ns
Feature: FIA_TRACE
Entry : 0x801424f8 - IPV4_OUTPUT_THREAT_DEFENSE
Lapsed time: 693 ns
Feature: FIA_TRACE
Entry : 0x803c60b8 - IPV4_MC_OUTPUT_VFR_REFRAG
Lapsed time: 88 ns
Feature: FIA_TRACE
Entry : 0x82014900 - IPV6_INPUT_L2_REWRITE
Lapsed time: 444 ns
Feature: FIA_TRACE
Entry : 0x82000080 - IPV4_OUTPUT_FRAG
Lapsed time: 88 ns
Feature: FIA_TRACE
Entry : 0x8200e600 - IPV4_OUTPUT_DROP_POLICY
Lapsed time: 1457 ns
Feature: FIA_TRACE
Entry : 0x82017980 - MARMOT_SPA_D_TRANSMIT_PKT
Lapsed time: 7431 ns
ASR1000#
Met dit voorbeeld wordt een site-to-site VPN-tunnel gebruikt tussen de ASR1K en de Cisco IOS-router om het verkeer te beschermen dat stroomt tussen 172.16.10.0/24 en 172.16.20.0/24 (lokale en externe subnetten).
Hier is de platformconditie en packet trace-configuratie die wordt gebruikt om het VPN-verkeer te traceren dat van 172.16.10.2 naar 172.16.20.2 stroomt op de Gig 0/0/1-interface:
debug platform condition interface Gig 0/0/1 ingress
debug platform condition start
debug platform packet-trace packet 1024 fia-trace
Wanneer vijf ICMP-pakketten worden verzonden van 172.16.10.2 naar 172.16.20.2, die in dit voorbeeld worden gecodeerd door de VPN-tunnel tussen de ASR1K en de Cisco IOS-router, zijn dit de packet trace-uitgangen:
Opmerking: De pakketsporen tonen de QFP Security Association (SA) -handle in de trace die wordt gebruikt om het pakket te coderen, wat handig is wanneer u IPsec VPN-problemen oplost om te controleren of de juiste SA wordt gebruikt voor codering.
ASR1000#show platform packet-trace summary
Pkt Input Output State Reason
0 Gi0/0/1 Gi0/0/0 FWD
1 Gi0/0/1 Gi0/0/0 FWD
2 Gi0/0/1 Gi0/0/0 FWD
3 Gi0/0/1 Gi0/0/0 FWD
4 Gi0/0/1 Gi0/0/0 FWD
ASR1000#show platform packet-trace packet 0
Packet: 0 CBUG ID: 211
Summary
Input : GigabitEthernet0/0/1
Output : GigabitEthernet0/0/0
State : FWD
Timestamp
Start : 4636921551459 ns (05/17/2014 07:28:59.211375 UTC)
Stop : 4636921668739 ns (05/17/2014 07:28:59.211493 UTC)
Path Trace
Feature: IPV4
Source : 172.16.10.2
Destination : 172.16.20.2
Protocol : 1 (ICMP)
Feature: FIA_TRACE
Entry : 0x806c7eac - DEBUG_COND_INPUT_PKT
Lapsed time: 622 ns
Feature: FIA_TRACE
Entry : 0x82011c00 - IPV4_INPUT_DST_LOOKUP_CONSUME
Lapsed time: 462 ns
Feature: FIA_TRACE
Entry : 0x82000170 - IPV4_INPUT_FOR_US_MARTIAN
Lapsed time: 320 ns
Feature: FIA_TRACE
Entry : 0x82004500 - IPV4_OUTPUT_LOOKUP_PROCESS
Lapsed time: 1102 ns
Feature: FIA_TRACE
Entry : 0x8041771c - IPV4_INPUT_IPOPTIONS_PROCESS
Lapsed time: 88 ns
Feature: FIA_TRACE
Entry : 0x82013400 - MPLS_INPUT_GOTO_OUTPUT_FEATURE
Lapsed time: 586 ns
Feature: FIA_TRACE
Entry : 0x803c6900 - IPV4_OUTPUT_VFR
Lapsed time: 266 ns
Feature: FIA_TRACE
Entry : 0x80757914 - MC_OUTPUT_GEN_RECYCLE
Lapsed time: 195 ns
Feature: FIA_TRACE
Entry : 0x803c60b8 - IPV4_MC_OUTPUT_VFR_REFRAG
Lapsed time: 88 ns
Feature: IPSec
Result : IPSEC_RESULT_SA
Action : ENCRYPT
SA Handle : 6
Peer Addr : 192.168.20.1
Local Addr: 192.168.10.1
Feature: FIA_TRACE
Entry : 0x8043caec - IPV4_OUTPUT_IPSEC_CLASSIFY
Lapsed time: 9528 ns
Feature: FIA_TRACE
Entry : 0x8043915c - IPV4_OUTPUT_IPSEC_DOUBLE_ACL
Lapsed time: 355 ns
Feature: FIA_TRACE
Entry : 0x8043b45c - IPV4_IPSEC_FEATURE_RETURN
Lapsed time: 657 ns
Feature: FIA_TRACE
Entry : 0x8043ae28 - IPV4_OUTPUT_IPSEC_RERUN_JUMP
Lapsed time: 888 ns
Feature: FIA_TRACE
Entry : 0x80436f10 - IPV4_OUTPUT_IPSEC_POST_PROCESS
Lapsed time: 2186 ns
Feature: FIA_TRACE
Entry : 0x8043b45c - IPV4_IPSEC_FEATURE_RETURN
Lapsed time: 675 ns
Feature: FIA_TRACE
Entry : 0x82014900 - IPV6_INPUT_L2_REWRITE
Lapsed time: 1902 ns
Feature: FIA_TRACE
Entry : 0x82000080 - IPV4_OUTPUT_FRAG
Lapsed time: 71 ns
Feature: FIA_TRACE
Entry : 0x8200e600 - IPV4_OUTPUT_DROP_POLICY
Lapsed time: 1582 ns
Feature: FIA_TRACE
Entry : 0x82017980 - MARMOT_SPA_D_TRANSMIT_PKT
Lapsed time: 3964 ns
ASR1000#
Packet trace-buffers verbruiken QFP DRAM, dus houd rekening met de hoeveelheid geheugen die een configuratie vereist en de hoeveelheid geheugen die beschikbaar is.
De invloed op de prestaties varieert, afhankelijk van de opties voor het traceren van pakketten die zijn ingeschakeld. Het traceren van pakketten heeft alleen invloed op de doorstuurprestaties van de getraceerde pakketten, zoals pakketten die overeenkomen met de door de gebruiker geconfigureerde voorwaarden. Hoe gedetailleerder en gedetailleerder de informatie is die u configureert om het pakketspoor vast te leggen, hoe groter de impact op de bronnen.
Zoals bij elke probleemoplossing, is het het beste om een iteratieve aanpak te volgen en alleen de meer gedetailleerde traceringsopties in te schakelen wanneer een foutopsporingssituatie dit rechtvaardigt.
Het gebruik van QFP DRAM's kan met deze formule worden geschat:
Geheugen nodig = (overheadstatistieken) + aantal PKT's * (overzichtsgrootte + padgegevensgrootte + kopieergrootte)
Opmerking: Wanneer de overheadstatistieken en de overzichtsgrootte zijn vastgesteld op respectievelijk 2 KB en 128 B, kunnen de padgegevens en de kopieergrootte door de gebruiker worden geconfigureerd.
Revisie | Publicatiedatum | Opmerkingen |
---|---|---|
2.0 |
17-Feb-2023
|
Eerste vrijgave |
1.0 |
24-Jul-2014
|
Eerste vrijgave |