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 het gebruik van de opdrachten ping en traceroute op Cisco-routers beschreven.
Er zijn geen specifieke vereisten van toepassing op dit document.
Dit document is niet beperkt tot specifieke 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.
Raadpleeg Cisco Technical Tips Conventions (Conventies voor technische tips van Cisco) voor meer informatie over documentconventies.
Opmerking: Het gebruik van debug-opdrachten op een productierouter kan ernstige problemen veroorzaken. Lees de sectie Gebruik van de debug-opdracht voordat u debug-opdrachten uitvoert.
In dit document wordt de volgende basisconfiguratie gebruikt voor voorbeelden:
De opdracht ping is een veelgebruikte methode voor het troubleshooten van problemen met de toegankelijkheid van apparaten. Hierbij wordt een reeks ICMP-echoberichten (Internet Control Message Protocol) gebruikt om het volgende te bepalen:
Of een externe host actief of inactief is.
De round-trip vertraging bij communicatie met de host.
Pakketverlies.
Met de opdracht ping wordt eerst een pakket met een echoaanvraag naar een adres verzonden en vervolgens wordt gewacht op een respons. De ping is alleen succesvol als:
de echoaanvraag de bestemming bereikt, en
de bestemming in staat is om binnen een vooraf gedefinieerde tijdsduur (de time-out) een echorespons naar de bron van de ping te verzenden. De standaardwaarde van deze time-out is twee seconden op Cisco-routers.
De TTL-waarde van een ping-pakket kan niet worden gewijzigd.
Hierna volgt een codevoorbeeld van de opdracht ping nadat de opdracht debug ip packet detail is uitgevoerd.
Waarschuwing: Het gebruik van de opdracht debug ip packet detail op een productierouter kan hoog CPU-gebruik tot gevolg hebben. Dit kan leiden tot ernstige prestatieachteruitgang of netwerkuitval.
Router1#debug ip packet detail IP packet debugging is on (detailed) Router1#ping 172.16.0.12 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.0.12, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 4/6/8 ms Router1# Jan 20 15:54:47.487: IP: s=172.16.12.1 (local), d=172.16.0.12 (Serial0), len 100, sending Jan 20 15:54:47.491: ICMP type=8, code=0 !--- This is the ICMP packet 172.16.12.1 sent to 172.16.0.12.
!--- ICMP type=8 corresponds to the echo message. Jan 20 15:54:47.523: IP: s=172.16.0.12 (Serial0), d=172.16.12.1 (Serial0), len 100, rcvd 3 Jan 20 15:54:47.527: ICMP type=0, code=0 !--- This is the answer we get from 172.16.0.12. !--- ICMP type=0 corresponds to the echo reply message.
!--- By default, the repeat count is five times, so there will be five
!--- echo requests, and five echo replies.
Mogelijke ICMP-typewaarden
ICMP-type | Letterlijke waarde |
---|---|
0 | echo-reply |
3 | destination unreachable code 0 = net onbereikbaar 1 = host onbereikbaar 2 = protocol onbereikbaar 3 = poort onbereikbaar 4 = fragmentatie nodig maar DF-bit ingesteld 5 = bronroute mislukt |
4 | source-quench |
5 | redirect code 0 = datagrammen voor het netwerk omleiden 1 = datagrammen voor host 2 omleiden = datagrammen voor type service en netwerk omleiden 3 = datagrammen voor type service en host omleiden |
6 | alternate-address |
8 | echo |
9 | router-advertisement |
10 | router-solicitation |
11 | time-exceeded code 0 = TTL overschreden tijdens verzending 1 = tijdsduur voor opnieuw samenstellen van fragment overschreden |
12 | parameter-problem |
13 | timestamp-request |
14 | timestamp-reply |
15 | information-request |
16 | information-reply |
17 | mask-request |
18 | mask-reply |
31 | conversion-error |
32 | mobile-redirect |
Mogelijke uitvoertekens van de ping-functie
Teken | Beschrijving |
---|---|
! | Elk uitroepteken duidt op de ontvangst van een respons. |
. | Met elke punt wordt aangegeven dat op de netwerkserver een time-out is opgetreden in afwachting van een respons. |
U | Er is een PDU ontvangen met de fout ‘Bestemming onbereikbaar’. |
Q | Bron is afgesloten (bestemming te druk). |
M | Kan niet fragmenteren. |
? | Onbekend pakkettype. |
& | Levensduur van pakket is overschreden. |
Als u een IP-adres niet kunt pingen, overweeg dan de oorzaken die in deze sectie worden genoemd.
Hierna volgen voorbeelden van mislukte pings, hoe het probleem kan worden vastgesteld en hoe u het probleem kunt oplossen. In dit voorbeeld is het volgende diagram van de netwerktopologie van toepassing:
Router1# ! interface Serial0 ip address 172.16.12.1 255.255.255.0 no fair-queue clockrate 64000 ! Router2# ! interface Serial0 ip address 10.0.2.23 255.255.255.0 no fair-queue clockrate 64000 ! interface Serial1 ip address 172.16.0.12 255.255.255.0 ! Router3# ! interface Serial0 ip address 172.16.3.34 255.255.255.0 no fair-queue ! interface Serial1 ip address 10.0.3.23 255.255.255.0 ! Router4# ! interface Serial0 ip address 172.16.4.34 255.255.255.0 no fair-queue clockrate 64000 !
Probeer Router4 te pingen vanaf Router1:
Router1#ping 172.16.4.34 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.4.34, timeout is 2 seconds: ..... Success rate is 0 percent (0/5)
Resultaten:
Router1#debug ip packet IP packet debugging is on
Waarschuwing: Het gebruik van de opdracht debug ip packet op een productierouter kan hoog CPU-gebruik tot gevolg hebben. Dit kan leiden tot ernstige prestatieachteruitgang of netwerkuitval.
Router1#ping 172.16.4.34 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.4.34, timeout is 2 seconds: Jan 20 16:00:25.603: IP: s=172.16.12.1 (local), d=172.16.4.34, len 100, unroutable. Jan 20 16:00:27.599: IP: s=172.16.12.1 (local), d=172.16.4.34, len 100, unroutable. Jan 20 16:00:29.599: IP: s=172.16.12.1 (local), d=172.16.4.34, len 100, unroutable. Jan 20 16:00:31.599: IP: s=172.16.12.1 (local), d=172.16.4.34, len 100, unroutable. Jan 20 16:00:33.599: IP: s=172.16.12.1 (local), d=172.16.4.34, len 100, unroutable. Success rate is 0 percent (0/5)
Aangezien er geen routingprotocollen op Router1 worden uitgevoerd, weet deze niet waar het pakket naartoe moet worden verzonden en wordt het bericht ‘unroutable’ (niet routeerbaar) gegenereerd.
Voeg een statische route naar Router1 toe:
Router1#configure terminal Enter configuration commands, one per line. End with CNTL/Z. Router1(config)#ip route 0.0.0.0 0.0.0.0 Serial0
Resultaten:
Router1#debug ip packet detail IP packet debugging is on (detailed) Router1#ping 172.16.4.34 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.4.34, timeout is 2 seconds: U.U.U Success rate is 0 percent (0/5) Jan 20 16:05:30.659: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 100, sending Jan 20 16:05:30.663: ICMP type=8, code=0 Jan 20 16:05:30.691: IP: s=172.16.0.12 (Serial0), d=172.16.12.1 (Serial0), len 56, rcvd 3 Jan 20 16:05:30.695: ICMP type=3, code=1 Jan 20 16:05:30.699: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 100, sending Jan 20 16:05:30.703: ICMP type=8, code=0 Jan 20 16:05:32.699: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 100, sending Jan 20 16:05:32.703: ICMP type=8, code=0 Jan 20 16:05:32.731: IP: s=172.16.0.12 (Serial0), d=172.16.12.1 (Serial0), len 56, rcvd 3 Jan 20 16:05:32.735: ICMP type=3, code=1 Jan 20 16:05:32.739: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 100, sending Jan 20 16:05:32.743: ICMP type=8, code=0
Kijk wat er mis is op Router2:
Router2#debug ip packet detail IP packet debugging is on (detailed) Router2# Jan 20 16:10:41.907: IP: s=172.16.12.1 (Serial1), d=172.16.4.34, len 100, unroutable Jan 20 16:10:41.911: ICMP type=8, code=0 Jan 20 16:10:41.915: IP: s=172.16.0.12 (local), d=172.16.12.1 (Serial1), len 56, sending Jan 20 16:10:41.919: ICMP type=3, code=1 Jan 20 16:10:41.947: IP: s=172.16.12.1 (Serial1), d=172.16.4.34, len 100, unroutable Jan 20 16:10:41.951: ICMP type=8, code=0 Jan 20 16:10:43.943: IP: s=172.16.12.1 (Serial1), d=172.16.4.34, len 100, unroutable Jan 20 16:10:43.947: ICMP type=8, code=0 Jan 20 16:10:43.951: IP: s=172.16.0.12 (local), d=172.16.12.1 (Serial1), len 56, sending Jan 20 16:10:43.955: ICMP type=3, code=1 Jan 20 16:10:43.983: IP: s=172.16.12.1 (Serial1), d=172.16.4.34, len 100, unroutable Jan 20 16:10:43.987: ICMP type=8, code=0 Jan 20 16:10:45.979: IP: s=172.16.12.1 (Serial1), d=172.16.4.34, len 100, unroutable Jan 20 16:10:45.983: ICMP type=8, code=0 Jan 20 16:10:45.987: IP: s=172.16.0.12 (local), d=172.16.12.1 (Serial1), len 56, sending Jan 20 16:10:45.991: ICMP type=3, code=1
Router1 verzendt de pakketten correct naar Router2, maar Router2 weet niet hoe toegang kan worden verkregen tot adres 172.16.4.34. Router2 stuurt het bericht ‘unreachable ICMP’ (onbereikbare ICMP) terug naar Router1.
Schakel Routing Information Protocol (RIP) in op Router2 en Router3:
Router2# router rip network 172.16.0.7 network 10.0.7.23 Router3# router rip network 10.0.7.23 network 172.16.0.34
Resultaten:
Router1#debug ip packet IP packet debugging is on Router1#ping 172.16.4.34 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.4.34, timeout is 2 seconds: Jan 20 16:16:13.367: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 100, sending. Jan 20 16:16:15.363: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 100, sending. Jan 20 16:16:17.363: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 100, sending. Jan 20 16:16:19.363: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 100, sending. Jan 20 16:16:21.363: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 100, sending. Success rate is 0 percent (0/5)
Router1 verzendt de pakketten naar Router4, maar Router4 stuurt geen respons.
Mogelijk probleem op Router4:
Router4#debug ip packet IP packet debugging is on Router4# Jan 20 16:18:45.903: IP: s=172.16.12.1 (Serial0), d=172.16.4.34 (Serial0), len 100, rcvd 3 Jan 20 16:18:45.911: IP: s=172.16.4.34 (local), d=172.16.12.1, len 100, unroutable Jan 20 16:18:47.903: IP: s=172.16.12.1 (Serial0), d=172.16.4.34 (Serial0), len 100, rcvd 3 Jan 20 16:18:47.907: IP: s=172.16.4.34 (local), d=172.16.12.1, len 100, unroutable Jan 20 16:18:49.903: IP: s=172.16.12.1 (Serial0), d=172.16.4.34 (Serial0), len 100, rcvd 3 Jan 20 16:18:49.907: IP: s=172.16.4.34 (local), d=172.16.12.1, len 100, unroutable Jan 20 16:18:51.903: IP: s=172.16.12.1 (Serial0), d=172.16.4.34 (Serial0), len 100, rcvd 3 Jan 20 16:18:51.907: IP: s=172.16.4.34 (local), d=172.16.12.1, len 100, unroutable Jan 20 16:18:53.903: IP: s=172.16.12.1 (Serial0), d=172.16.4.34 (Serial0), len 100, rcvd 3 Jan 20 16:18:53.907: IP: s=172.16.4.34 (local), d=172.16.12.1, len 100, unroutable
Router4 ontvangt de ICMP-pakketten en probeert een respons te sturen naar 172.16.12.1, maar omdat er geen route naar dit netwerk is lukt dat niet.
Voeg een statische route naar Router4 toe:
Router4(config)#ip route 0.0.0.0 0.0.0.0 Serial0
Nu hebben beide kanten toegang tot elkaar:
Router1#ping 172.16.4.34 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.4.34, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 32/35/36 ms
Dit is een situatie waarbij de interface niet meer werkt. In het volgende voorbeeld wordt geprobeerd Router4 te pingen vanaf Router1:
Router1#ping 172.16.4.34 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.4.34, timeout is 2 seconds: U.U.U Success rate is 0 percent (0/5)
Aangezien de routing juist is, moet het probleem stapsgewijs worden getroubleshoot. Probeer Router2 te pingen:
Router1#ping 172.16.0.12 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.0.12, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/4 ms
Uit het voorgaande voorbeeld blijkt dat het probleem ligt tussen Router2 en Router3. Mogelijk is de seriële interface op Router3 uitgeschakeld:
Router3#show ip interface brief Serial0 172.16.3.34 YES manual up up Serial1 10.0.3.23 YES manual administratively down down
Dit is eenvoudig op te lossen:
Router3#configure terminal Enter configuration commands, one per line. End with CNTL/Z. Router3(config)#interface serial1 Router3(config-if)#no shutdown Router3(config-if)# Jan 20 16:20:53.900: %LINK-3-UPDOWN: Interface Serial1, changed state to up Jan 20 16:20:53.910: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1, changed state to up
In dit scenario mag alleen Telnet-verkeer Router4 binnenkomen via interface Serial0.
Router4(config)# access-list 100 permit tcp any any eq telnet Router4(config)#interface serial0 Router4(config-if)#ip access-group 100 in Router1#configure terminal Enter configuration commands, one per line. End with CNTL/Z. Router1(config)#access-list 100 permit ip host 172.16.12.1 host 172.16.4.34 Router1(config)#access-list 100 permit ip host 172.16.4.34 host 172.16.12.1 Router1(config)#end Router1#debug ip packet 100 IP packet debugging is on Router1#debug ip icmp ICMP packet debugging is on
Probeer Router4 te pingen:
Router1#ping 172.16.4.34 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.4.34, timeout is 2 seconds: U.U.U Success rate is 0 percent (0/5) Jan 20 16:34:49.207: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 100, sending Jan 20 16:34:49.287: IP: s=172.16.4.34 (Serial0), d=172.16.12.1 (Serial0), len 56, rcvd 3 Jan 20 16:34:49.291: ICMP: dst (172.16.12.1) administratively prohibited unreachable rcv from 172.16.4.34 Jan 20 16:34:49.295: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 100, sending Jan 20 16:34:51.295: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 100, sending Jan 20 16:34:51.367: IP: s=172.16.4.34 (Serial0), d=172.16.12.1 (Serial0), len 56, rcvd 3 Jan 20 16:34:51.371: ICMP: dst (172.16.12.1) administratively prohibited unreachable rcv from 172.16.4.34 Jan 20 16:34:51.379: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 100, sending
Aan het einde van een opdracht access-list is er altijd een impliciete deny all. Dit betekent dat de ICMP-pakketten die bij de interface Serial0 op Router4 binnenkomen, worden geweigerd en dat Router4 een ICMP-melding 'administratively prohibited unreachable' (administratief verboden en onbereikbaar) naar de bron van het oorspronkelijke pakket stuurt, zoals wordt getoond in het debug-bericht. De oplossing is om de volgende regel toe te voegen aan de opdracht access-list:
Router4(config)#access-list 100 permit icmp any any
In dit scenario is dat de Ethernet-verbinding:
Router4#ping 172.16.100.5 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.100.5, timeout is 2 seconds: Jan 20 17:04:05.167: IP: s=172.16.100.4 (local), d=172.16.100.5 (Ethernet0), len 100, sending Jan 20 17:04:05.171: IP: s=172.16.100.4 (local), d=172.16.100.5 (Ethernet0), len 100, encapsulation failed. Jan 20 17:04:07.167: IP: s=172.16.100.4 (local), d=172.16.100.5 (Ethernet0), len 100, sending Jan 20 17:04:07.171: IP: s=172.16.100.4 (local), d=172.16.100.5 (Ethernet0), len 100, encapsulation failed. Jan 20 17:04:09.175: IP: s=172.16.100.4 (local), d=172.16.100.5 (Ethernet0), len 100, sending Jan 20 17:04:09.183: IP: s=172.16.100.4 (local), d=172.16.100.5 (Ethernet0), len 100, encapsulation failed. Jan 20 17:04:11.175: IP: s=172.16.100.4 (local), d=172.16.100.5 (Ethernet0), len 100, sending Jan 20 17:04:11.179: IP: s=172.16.100.4 (local), d=172.16.100.5 (Ethernet0), len 100, encapsulation failed. Jan 20 17:04:13.175: IP: s=172.16.100.4 (local), d=172.16.100.5 (Ethernet0), len 100, sending Jan 20 17:04:13.179: IP: s=172.16.100.4 (local), d=172.16.100.5 (Ethernet0), len 100, encapsulation failed. Success rate is 0 percent (0/5) Router4#
In dit voorbeeld werkt de ping niet vanwege 'encapsulation failed' (inkapseling mislukt). Dit betekent dat de router weet via welke interface het pakket moet worden verzonden, maar niet hoe. In dit geval moet u weten hoe Address Resolution Protocol (ARP) werkt.
ARP is een protocol dat wordt gebruikt om het Layer 2-adres (MAC-adres) toe te wijzen aan een Layer 3-adres (IP-adres). U kunt deze toewijzing controleren met de opdracht show arp:
Router4#show arp Protocol Address Age (min) Hardware Addr Type Interface Internet 172.16.100.4 - 0000.0c5d.7a0d ARPA Ethernet0 Internet 172.16.100.7 10 0060.5cf4.a955 ARPA Ethernet0
Ga terug naar het probleem 'encapsulation failed' (inkapseling mislukt), maar gebruik deze keer de opdracht debug arp:
Router4#debug arp ARP packet debugging is on Router4#ping 172.16.100.5 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.100.5, timeout is 2 seconds: Jan 20 17:19:43.843: IP ARP: creating incomplete entry for IP address: 172.16.100.5 interface Ethernet0 Jan 20 17:19:43.847: IP ARP: sent req src 172.16.100.4 0000.0c5d.7a0d, dst 172.16.100.5 0000.0000.0000 Ethernet0. Jan 20 17:19:45.843: IP ARP: sent req src 172.16.100.4 0000.0c5d.7a0d, dst 172.16.100.5 0000.0000.0000 Ethernet0. Jan 20 17:19:47.843: IP ARP: sent req src 172.16.100.4 0000.0c5d.7a0d, dst 172.16.100.5 0000.0000.0000 Ethernet0. Jan 20 17:19:49.843: IP ARP: sent req src 172.16.100.4 0000.0c5d.7a0d, dst 172.16.100.5 0000.0000.0000 Ethernet0. Jan 20 17:19:51.843: IP ARP: sent req src 172.16.100.4 0000.0c5d.7a0d, dst 172.16.100.5 0000.0000.0000 Ethernet0. Success rate is 0 percent (0/5)
De bovenstaande uitvoer laat zien dat Router4 pakketten uitzendt en deze naar het Ethernet-broadcastadres FFFF.FFFF.FFFF stuurt. Hier betekent 0000.0000.0000 dat Router4 op zoek is naar het MAC-adres van bestemming 172.16.100.5. Omdat het MAC-adres onbekend is tijdens het ARP-verzoek in dit voorbeeld, wordt 0000.0000.000 gebruikt als placeholder in de broadcastframes die worden verzonden via interface Ethernet0, waarbij wordt gevraagd welk MAC-adres overeenkomt met 172.16.100.5. Als we geen respons krijgen, wordt het bij het IP-adres behorende MAC-adres in de uitvoer van show arp gemarkeerd als onvolledig:
Router4#show arp Protocol Address Age (min) Hardware Addr Type Interface Internet 172.16.100.4 - 0000.0c5d.7a0d ARPA Ethernet0 Internet 172.16.100.5 0 Incomplete ARPA Internet 172.16.100.7 2 0060.5cf4.a955 ARPA Ethernet0
Na een vooraf bepaalde tijdsduur wordt deze onvolledige vermelding verwijderd uit de ARP-tabel. Zolang het bijbehorende MAC-adres niet in de ARP-tabel staat, mislukt het pingen als gevolg van 'encapsulation failed' (inkapseling mislukt).
Als u niet binnen twee seconden een respons van de andere zijde ontvangt, mislukt de ping standaard:
Router1#ping 172.16.0.12 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.0.12, timeout is 2 seconds: ..... Success rate is 0 percent (0/5)
Op netwerken met een langzame verbinding of een lange vertraging zijn twee seconden onvoldoende. U kunt deze standaardwaarde wijzigen met een uitgebreide ping:
Router1#ping Protocol [ip]: Target IP address: 172.16.0.12 Repeat count [5]: Datagram size [100]: Timeout in seconds [2]: 30 Extended commands [n]: Sweep range of sizes [n]: Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.0.12, timeout is 30 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 1458/2390/6066 ms
Raadpleeg Understand the Extended Ping and Extended Traceroute Commands (Inzicht in de uitgebreide opdrachten ping en traceroute) voor meer informatie over de uitgebreide opdracht ping.
In het voorgaande voorbeeld kon wel worden gepingd toen de time-out werd verlengd.
Opmerking: De gemiddelde round-trip tijd is meer dan twee seconden.
Het volgende voorbeeld betreft een veelvoorkomend scenario:
Voeg een LAN-interface toe aan Router1:
Router1(config)#interface ethernet0 Router1(config-if)#ip address 10.0.0.1 255.255.255.0
Vanaf een station op het LAN kunt u Router1 pingen. Vanaf Router1 kunt u Router2 pingen. Maar vanaf een station op het LAN kunt u Router2 niet pingen.
Vanaf Router1 kunt u Router2 pingen, omdat u standaard het IP-adres van de uitgaande interface gebruikt als het bronadres in uw ICMP-pakket. Router2 heeft geen informatie over dit nieuwe LAN. Als de router een respons moet sturen op een pakket afkomstig vanaf dit netwerk, weet deze niet hoe hiermee moet worden omgegaan.
Router1#debug ip packet IP packet debugging is on
Waarschuwing: Het gebruik van de opdracht debug ip packet op een productierouter kan hoog CPU-gebruik tot gevolg hebben. Dit kan leiden tot ernstige prestatieachteruitgang of netwerkuitval.
Router1#ping 172.16.0.12 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.0.12, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 4/7/9 ms Router1# Jan 20 16:35:54.227: IP: s=172.16.12.1 (local), d=172.16.0.12 (Serial0), len 100, sending Jan 20 16:35:54.259: IP: s=172.16.0.12 (Serial0), d=172.16.12.1 (Serial0), len 100, rcvd 3
Het bovenstaande uitvoervoorbeeld werkt, omdat het bronadres van het verzonden pakket 172.16.12.1 is. Om een pakket te simuleren dat van het LAN afkomstig is, moet een uitgebreide ping worden gebruikt:
Router1#ping Protocol [ip]: Target IP address: 172.16.0.12 Repeat count [5]: Datagram size [100]: Timeout in seconds [2]: Extended commands [n]: y Source address or interface: 10.0.0.1 Type of service [0]: Set DF bit in IP header? [no]: Validate reply data? [no]: Data pattern [0xABCD]: Loose, Strict, Record, Timestamp, Verbose[none]: Sweep range of sizes [n]: Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.0.12, timeout is 2 seconds: Jan 20 16:40:18.303: IP: s=10.0.0.1 (local), d=172.16.0.12 (Serial0), len 100, sending. Jan 20 16:40:20.303: IP: s=10.0.0.1 (local), d=172.16.0.12 (Serial0), len 100, sending. Jan 20 16:40:22.303: IP: s=10.0.0.1 (local), d=172.16.0.12 (Serial0), len 100, sending. Jan 20 16:40:24.303: IP: s=10.0.0.1 (local), d=172.16.0.12 (Serial0), len 100, sending Jan 20 16:40:26.303: IP: s=10.0.0.1 (local), d=172.16.0.12 (Serial0), len 100, sending. Success rate is 0 percent (0/5)
Deze keer is het bronadres 10.0.0.1, en het werkt niet. Er worden pakketten verzonden maar er wordt geen respons ontvangen. Om dit probleem op te lossen, voegt u een route toe aan 10.0.0.0 in Router2. De basisregel is dat het gepingde apparaat ook moet weten hoe de respons naar de bron van de ping moet worden gestuurd.
Wanneer een pakket de router binnenkomt, probeert de router dit op interrupt-niveau door te sturen. Als geen overeenkomst kan worden gevonden in een toepasselijke cachetabel, wordt het pakket ter verwerking in de invoerwachtrij van de inkomende interface geplaatst. Sommige pakketten worden altijd verwerkt, maar met de juiste configuratie en in stabiele netwerken mag de snelheid van verwerkte pakketten de invoerwachtrij nooit overbelasten. Als de invoerwachtrij vol is, wordt het pakket verwijderd (afgewezen).
Hoewel de interface actief is en u het apparaat niet kunt pingen vanwege veel afwijzingen in invoerwachtrijen. U kunt controleren op afwijzingen met de opdracht show interface.
Router1#show interface Serial0/0/0 Serial0/0/0 is up, line protocol is up MTU 1500 bytes, BW 1984 Kbit, DLY 20000 usec, reliability 255/255, txload 69/255, rxload 43/255 Encapsulation HDLC, loopback not set Keepalive set (10 sec) Last input 00:00:02, output 00:00:00, output hang never Last clearing of "show interface" counters 01:28:49 Input queue: 76/75/5553/0 (size/max/drops/flushes); Total output drops: 1760 Queueing strategy: Class-based queueing Output queue: 29/1000/64/1760 (size/max total/threshold/drops) Conversations 7/129/256 (active/max active/max total) Reserved Conversations 4/4 (allocated/max allocated) Available Bandwidth 1289 kilobits/sec !--- Output supressed
Zoals blijkt uit de uitvoer is er sprake van veel afwijzingen in invoerwachtrijen. Raadpleeg Afwijzingen in invoerwachtrijen en afwijzingen in uitvoerwachtrijen troubleshooten om problemen met afwijzingen in invoerwachtrijen en uitvoerwachtrijen te troubleshooten.
De opdracht traceroute wordt gebruikt om de routes te ontdekken die pakketten daadwerkelijk nemen wanneer deze zich naar hun bestemming verplaatsen. Het apparaat (bijvoorbeeld een router of een pc) verzendt een reeks UDP-datagrammen (User Datagram Protocol) naar een ongeldig poortadres op de externe host.
Eerst worden drie datagrammen verzonden, elk met een TTL-veldwaarde (Time-To-Live) van 1. De TTL-waarde 1 veroorzaakt een time-out van het datagram zodra het de eerste router in het pad bereikt. Deze router reageert vervolgens met een ICMP-bericht over tijdsoverschrijding (Time Exceeded Message, of TEM) waarin wordt aangegeven dat het datagram is verlopen.
Er worden nu nog drie UDP-berichten verzonden, elk met de TTL-waarde ingesteld op 2, waardoor de tweede router ICMP-berichten over tijdsoverschrijding retourneert. Dit proces gaat door totdat de pakketten daadwerkelijk de andere bestemming bereiken. Aangezien deze datagrammen proberen toegang te krijgen tot een ongeldige poort op de bestemmingshost, worden ICMP-berichten dat een poort onbereikbaar is teruggestuurd. Hiermee wordt aangegeven dat het programma traceroute is voltooid.
Het doel van de opdracht traceroute is het vastleggen van de bron van elk ICMP-bericht over tijdsoverschrijding om een trace te bieden van het pad dat het pakket heeft afgelegd om de bestemming te bereiken.
Router1#traceroute 172.16.4.34 Type escape sequence to abort. Tracing the route to 172.16.4.34 1 172.16.0.12 4 msec 4 msec 4 msec 2 10.0.3.23 20 msec 16 msec 16 msec 3 172.16.4.34 16 msec * 16 msec Jan 20 16:42:48.611: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 28, sending Jan 20 16:42:48.615: UDP src=39911, dst=33434 Jan 20 16:42:48.635: IP: s=172.16.0.12 (Serial0), d=172.16.12.1 (Serial0), len 56, rcvd 3 Jan 20 16:42:48.639: ICMP type=11, code=0 !--- ICMP Time Exceeded Message from Router2. Jan 20 16:42:48.643: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 28, sending Jan 20 16:42:48.647: UDP src=34237, dst=33435 Jan 20 16:42:48.667: IP: s=172.16.0.12 (Serial0), d=172.16.12.1 (Serial0), len 56, rcvd 3 Jan 20 16:42:48.671: ICMP type=11, code=0 Jan 20 16:42:48.675: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 28, sending Jan 20 16:42:48.679: UDP src=33420, dst=33436 Jan 20 16:42:48.699: IP: s=172.16.0.12 (Serial0), d=172.16.12.1 (Serial0), len 56, rcvd 3 Jan 20 16:42:48.703: ICMP type=11, code=0
Dit is de eerste reeks pakketten die wordt verzenden met TTL=1. De eerste router, in dit geval Router2 (172.16.0.12), wijst het pakket af en stuurt een ICMP-bericht type=11 terug naar de bron (172.16.12.1). Dit komt overeen met het bericht over tijdsoverschrijding.
Jan 20 16:42:48.707: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 28, sending Jan 20 16:42:48.711: UDP src=35734, dst=33437 Jan 20 16:42:48.743: IP: s=10.0.3.23 (Serial0), d=172.16.12.1 (Serial0), len 56, rcvd 3 Jan 20 16:42:48.747: ICMP type=11, code=0 !--- ICMP Time Exceeded Message from Router3. Jan 20 16:42:48.751: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 28, sending Jan 20 16:42:48.755: UDP src=36753, dst=33438 Jan 20 16:42:48.787: IP: s=10.0.3.23 (Serial0), d=172.16.12.1 (Serial0), len 56, rcvd 3 Jan 20 16:42:48.791: ICMP type=11, code=0 Jan 20 16:42:48.795: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 28, sending Jan 20 16:42:48.799: UDP src=36561, dst=33439 Jan 20 16:42:48.827: IP: s=10.0.3.23 (Serial0), d=172.16.12.1 (Serial0), len 56, rcvd 3 Jan 20 16:42:48.831: ICMP type=11, code=0
Hetzelfde proces vindt plaats voor Router3 (10.0.3.23) met TTL=2:
Jan 20 16:42:48.839: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 28, sending Jan 20 16:42:48.843: UDP src=34327, dst=33440 Jan 20 16:42:48.887: IP: s=172.16.4.34 (Serial0), d=172.16.12.1 (Serial0), len 56, rcvd 3 Jan 20 16:42:48.891: ICMP type=3, code=3 !--- Port Unreachable message from Router4. Jan 20 16:42:48.895: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 28, sending Jan 20 16:42:48.899: UDP src=37534, dst=33441 Jan 20 16:42:51.895: IP: s=172.16.12.1 (local), d=172.16.4.34 (Serial0), len 28, sending Jan 20 16:42:51.899: UDP src=37181, dst=33442 Jan 20 16:42:51.943: IP: s=172.16.4.34 (Serial0), d=172.16.12.1 (Serial0), len 56, rcvd 3 Jan 20 16:42:51.947: ICMP type=3, code=3
Met TTL=3 wordt eindelijk Router4 bereikt. Aangezien de poort niet geldig is, stuurt Router4 deze keer een ICMP-bericht terug naar Router1 met type=3 (bestemming onbereikbaar) en code=3, wat aangeeft dat de poort onbereikbaar is.
In de onderstaande tabel staan de tekens die kunnen voorkomen in de uitvoer van de opdracht traceroute.
IP Traceroute – teksttekens
Teken | Beschrijving |
---|---|
nn msec | Voor elk knooppunt de round-trip tijd in milliseconden voor het opgegeven aantal probes |
* | Time-out van probe |
A | Administratief verboden (voorbeeld access-list) |
Q | Bron is afgesloten (bestemming te druk) |
I | De gebruiker heeft de test onderbroken |
U | Poort onbereikbaar |
H | Host onbereikbaar |
N | Netwerk onbereikbaar |
P | Protocol onbereikbaar |
T | Timeout |
? | Onbekend pakkettype |
Met de opdrachten ping en traceroute kunt u de round-trip tijd (RTT) bepalen. Dat is de tijd die nodig is om een echopakket te verzenden en een respons te krijgen. Op die manier kunt u een idee krijgen van de vertraging op de link. Deze cijfers zijn echter niet nauwkeurig genoeg om te worden gebruikt voor prestatie-evaluatie.
Wanneer een pakketbestemming de router zelf is, moet dit pakket proces-switched worden. De processor moet de informatie uit dit pakket verwerken en een respons sturen. Dat is niet het hoofddoel van een router. Per definitie is een router gebouwd om pakketten te routeren. Een respons sturen op een ping wordt aangeboden als een best-effort service.
Ter illustratie volgt hierna een voorbeeld van een ping van Router1 naar Router2:
Router1#ping 172.16.0.12 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.0.12, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/4 ms
De RTT is ongeveer vier milliseconden. Nadat u enkele procesintensieve functies op Router2 heeft ingeschakeld, probeert u Router2 te pingen vanaf Router1.
Router1#ping 172.16.0.12 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.0.12, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 24/25/28 ms
De RTT is hier ongekend toegenomen. Router2 heeft het behoorlijk druk en het sturen van een respons op de ping heeft geen prioriteit. De routerprestaties kunnen beter worden getest met verkeer dat via de router loopt.
Het verkeer wordt dan fast-switched en met de hoogste prioriteit door de router verwerkt. Dit wordt duidelijk uit het basisnetwerk:
Ping Router3 vanaf Router1:
Router1#ping 10.0.3.23 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 10.0.3.23, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 32/32/32 ms
Het verkeer gaat via Router2 en wordt nu fast-switched. Schakel de procesintensieve functie op Router2 in:
Router1#ping 10.0.3.23 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 10.0.3.23, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 32/32/36 ms
Er is bijna geen verschil. Dat komt doordat de pakketten op Router2 nu op interrupt-niveau worden verwerkt.
Raadpleeg Important Information on Debug Commands (Belangrijke informatie over opdrachten met debug) voordat u debug-opdrachten opgeeft.
De verschillende debug-opdrachten die in deze sectie zijn gebruikt, bieden inzicht in wat er gebeurt als een opdracht ping of traceroute wordt gebruikt. Met deze opdrachten kunt u problemen troubleshooten. In een productieomgeving moeten debug-opdrachten echter met de nodige voorzichtigheid worden gebruikt. Als uw CPU niet krachtig is, of als u veel proces-switched pakketten heeft, kunnen deze uw apparaat gemakkelijk vertragen. Er zijn een aantal manieren om de impact van de debug-opdracht op de router te minimaliseren. U kunt bijvoorbeeld toegangslijsten gebruiken om het specifieke verkeer dat u wilt monitoren te beperken.
Hierna volgt een voorbeeld:
Router4#debug ip packet ? <1-199> Access list <1300-2699> Access list (expanded range) detail Print more debugging detail Router4#configure terminal Router4(config)#access-list 150 permit ip host 172.16.12.1 host 172.16.4.34 Router4(config)#^Z Router4#debug ip packet 150 IP packet debugging is on for access list 150 Router4#show debug Generic IP: IP packet debugging is on for access list 150 Router4#show access-list Extended IP access list 150 permit ip host 172.16.12.1 host 172.16.4.34 (5 matches)
Met deze configuratie drukt Router4 alleen het debug-bericht af dat overeenkomt met access-list 150. Een ping van Router1 leidt ertoe dat het volgende bericht wordt getoond:
Router4# Jan 20 16:51:16.911: IP: s=172.16.12.1 (Serial0), d=172.16.4.34 (Serial0), len 100, rcvd 3 Jan 20 16:51:17.003: IP: s=172.16.12.1 (Serial0), d=172.16.4.34 (Serial0), len 100, rcvd 3 Jan 20 16:51:17.095: IP: s=172.16.12.1 (Serial0), d=172.16.4.34 (Serial0), len 100, rcvd 3 Jan 20 16:51:17.187: IP: s=172.16.12.1 (Serial0), d=172.16.4.34 (Serial0), len 100, rcvd 3 Jan 20 16:51:17.279: IP: s=172.16.12.1 (Serial0), d=172.16.4.34 (Serial0), len 100, rcvd 3
De oplossing van het probleem ligt niet bij Router4 omdat deze pakketten niet overeenkomen met de access-list. Voeg het volgende toe:
Router4(config)#access-list 150 permit ip host 172.16.12.1 host 172.16.4.34 Router4(config)#access-list 150 permit ip host 172.16.4.34 host 172.16.12.1
Resultaten:
Jan 20 16:53:16.527: IP: s=172.16.12.1 (Serial0), d=172.16.4.34 (Serial0), len 100, rcvd 3 Jan 20 16:53:16.531: IP: s=172.16.4.34 (local), d=172.16.12.1 (Serial0), len 100, sending Jan 20 16:53:16.627: IP: s=172.16.12.1 (Serial0), d=172.16.4.34 (Serial0), len 100, rcvd 3 Jan 20 16:53:16.635: IP: s=172.16.4.34 (local), d=172.16.12.1 (Serial0), len 100, sending Jan 20 16:53:16.727: IP: s=172.16.12.1 (Serial0), d=172.16.4.34 (Serial0), len 100, rcvd 3 Jan 20 16:53:16.731: IP: s=172.16.4.34 (local), d=172.16.12.1 (Serial0), len 100, sending Jan 20 16:53:16.823: IP: s=172.16.12.1 (Serial0), d=172.16.4.34 (Serial0), len 100, rcvd 3 Jan 20 16:53:16.827: IP: s=172.16.4.34 (local), d=172.16.12.1 (Serial0), len 100, sending Jan 20 16:53:16.919: IP: s=172.16.12.1 (Serial0), d=172.16.4.34 (Serial0), len 100, rcvd 3 Jan 20 16:53:16.923: IP: s=172.16.4.34 (local), d=172.16.12.1 (Serial0), len 100, sending
Een andere manier om de impact van de debug-opdracht te verkleinen, is door de debug-berichten te bufferen en ze te tonen met de opdracht show log zodra de debug-opdracht is uitgeschakeld:
Router4#configure terminal Router4(config)#no logging console Router4(config)#logging buffered 5000 Router4(config)#^Z Router4#debug ip packet IP packet debugging is on Router4#ping 172.16.12.1 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.12.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 36/36/37 ms Router4#undebug all All possible debugging has been turned off Router4#show log Syslog logging: enabled (0 messages dropped, 0 flushes, 0 overruns) Console logging: disabled Monitor logging: level debugging, 0 messages logged Buffer logging: level debugging, 61 messages logged Trap logging: level informational, 59 message lines logged Log Buffer (5000 bytes): Jan 20 16:55:46.587: IP: s=172.16.4.34 (local), d=172.16.12.1 (Serial0), len 100, sending Jan 20 16:55:46.679: IP: s=172.16.12.1 (Serial0), d=172.16.4.34 (Serial0), len 100, rcvd 3
De opdrachten ping en traceroute zijn zeer nuttig voor het troubleshooten van problemen met netwerktoegang. Ze zijn ook heel gemakkelijk te gebruiken. Deze twee opdrachten worden veelvuldig gebruikt door netwerkengineers.
Revisie | Publicatiedatum | Opmerkingen |
---|---|---|
2.0 |
04-Oct-2022 |
Hercertificering |
1.0 |
10-Dec-2001 |
Eerste vrijgave |