Questo documento descrive la configurazione per consentire il traceroute tramite Firepower Threat Defense (FTD) tramite i criteri del servizio Threat Defense.
Cisco raccomanda la conoscenza dei seguenti argomenti:
Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Il comando traceroute permette di determinare il percorso dei pacchetti verso la destinazione finale. Il comando traceroute invia pacchetti UDP (User Datagram Protocol) a una destinazione su una porta non valida. Poiché la porta non è valida, i router diretti alla destinazione rispondono con un messaggio ICMP (Internet Control Message Protocol) "Time Exceeded" (Tempo scaduto) e segnalano l'errore all'appliance ASA (Adaptive Security Appliance).
Il comando traceroute visualizza il risultato di ciascuna sonda inviata e ogni riga di output corrisponde a un valore TTL (Time to Live) in ordine crescente. In questa tabella vengono descritti i simboli di output.
| Simbolo di output |
Descrizione |
| * | Nessuna risposta ricevuta per la sonda entro il periodo di timeout. |
| nn msec |
Per ogni nodo, il tempo di andata e ritorno (in millisecondi) per il numero specificato di richieste. |
| !N |
Rete ICMP irraggiungibile. |
| !H |
Host ICMP non raggiungibile. |
| !P |
Protocollo/porta ICMP non raggiungibile. |
| !A |
ICMP non consentito a livello amministrativo. |
| ? |
Errore ICMP sconosciuto. |
Per impostazione predefinita, l'ASA non viene visualizzata sui percorsi di traccia come hop. Per farla apparire, diminuire il time-to-live sui pacchetti che passano attraverso l'ASA e aumentare il limite di velocità sui messaggi ICMP "destinazione irraggiungibile".
Attenzione: Se si diminuisce il time-to-live, i pacchetti con un TTL pari a 1 vengono scartati, ma viene aperta una connessione per la sessione sul presupposto che la connessione possa contenere pacchetti con un TTL superiore. Alcuni pacchetti, ad esempio i pacchetti hello OSPF, vengono inviati con TTL = 1, quindi la diminuzione del time-to-live può avere conseguenze impreviste. Quando si definisce la classe del traffico, tenere presenti queste considerazioni.
1. Creare l'ACL esteso che definisce la classe di traffico per cui deve essere abilitata la segnalazione di traceroute.
2. Accedere alla GUI di FMC e selezionare Oggetti > Gestione oggetti > Elenco accessi. Selezionare Esteso dal sommario e Aggiungere un nuovo elenco accessi esteso.
3. Inserire un nome per l'oggetto, ad esempio, in Traceroute_ACL, aggiungere una regola per autorizzare il tipo ICMP 3 e 11 e salvarlo, come mostrato nell'immagine:

4. Configurare la regola dei criteri del servizio che decrementa il valore di durata.
5. Passare a Policies > Access Control (Policy di controllo dell'accesso) e quindi Modificare il criterio assegnato al dispositivo. Nella scheda Avanzate, modificare i criteri del servizio di difesa delle minacce, aggiungere una nuova regola dalla scheda Aggiungi regola, quindi scegliere la casella di controllo Globale per applicarla globalmente o scegliere zone specifiche a cui applicare il decremento TTL) e fare clic su Avanti, come mostrato nell'immagine:

6. Passare a Flusso di traffico > Elenco accessi esteso e quindi scegliere Oggetto elenco accessi esteso dal menu a discesa, creato nei passaggi precedenti. Fare clic su Next (Avanti), come mostrato nell'immagine:

7. Scegliere la casella di controllo Abilita TTL decremento e modificare le altre opzioni di connessione (facoltativo). A questo punto, fare clic su Finish (Fine) per aggiungere la regola, quindi fare clic su OK, e salvare le modifiche apportate ai criteri del servizio di difesa delle minacce, come mostrato nell'immagine:

8. Una volta completate le operazioni precedenti, salvare la Policy di controllo d'accesso.
1. Passare a Dispositivi > Impostazioni piattaforma e quindi Modificare o Creare un nuovo criterio di impostazioni della piattaforma Firepower Threat Defense e associarlo al dispositivo. Selezionare ICMP dal sommario e aumentare il limite di velocità. Ad esempio, su 50 (è possibile ignorare la Dimensione burst), quindi fare clic su Salva e procedere con Distribuire il criterio al dispositivo, come mostrato nell'immagine:
Limite di velocità: imposta il limite di velocità per i messaggi non raggiungibili compreso tra 1 e 100 messaggi al secondo. Il valore predefinito è 1 messaggio al secondo.
Dimensione burst: imposta la velocità di burst su un valore compreso tra 1 e 10. Questo valore non è attualmente utilizzato dal sistema.

Attenzione: Verificare che la destinazione ICMP "destinazione irraggiungibile" (tipo 3) e il tempo ICMP scaduto (tipo 1) siano consentiti da esterno a interno nei criteri ACL o tramite Fastpath nei criteri pre-filtro per il traffico interessante che si desidera verificare.
Nota: Accertarsi di aggiungere i tipi ICMP 0 e 8 come parte della configurazione ICMP nelle impostazioni della piattaforma se lo SLA IP o il PBR è configurato per uno scenario con doppio ISP. In caso contrario, il contratto di servizio può non riuscire e i percorsi predefiniti associati al contratto di servizio possono essere estratti dal RIB, con conseguente interruzione del traffico.
Controllare la configurazione dalla CLI FTD al termine della distribuzione dei criteri:
FTD# show run policy-map ! policy-map type inspect dns preset_dns_map ---Output omitted--- class class_map_Traceroute_ACL set connection timeout idle 1:00:00 set connection decrement-ttl class class-default ! FTD# show run class-map ! class-map inspection_default ---Output omitted--- class-map class_map_Traceroute_ACL match access-list Traceroute_ACL ! FTD# show run access-list Traceroute_ACL access-list Traceroute_ACL extended permit object-group ProxySG_ExtendedACL_30064773500 any any log FTD#
È possibile acquisire le clip sulle interfacce FTD in entrata e in uscita per il traffico univoco al fine di risolvere ulteriormente il problema. L'acquisizione del pacchetto su Lina, mentre si esegue il traceroute dall'host, può visualizzare questo messaggio per ciascun hop del percorso finché non raggiunge l'IP di destinazione:
ftd64# capture icmp interface inside real-time match icmp any any
Warning: using this option with a slow console connection may
result in an excessive amount of non-displayed packets
due to performance limitations.
Use ctrl-c to terminate real-time capture
1: 00:22:04.192800 10.0.0.1 > 10.10.10.11 icmp: time exceeded in-transit
2: 00:22:04.194432 10.0.0.1 > 10.10.10.11 icmp: time exceeded in-transit
3: 00:22:04.194447 10.0.0.1 > 10.10.10.11 icmp: time exceeded in-transit
4: 00:22:04.194981 172.16.1.1 > 10.10.10.11 icmp: time exceeded in-transit
5: 00:22:04.194997 172.16.1.1 > 10.10.10.11 icmp: time exceeded in-transit
6: 00:22:04.201130 10.122.149.1 > 10.10.10.11 icmp: time exceeded in-transit
7: 00:22:04.201146 10.122.149.1 > 10.10.10.11 icmp: time exceeded in-transit
8: 00:22:04.201161 172.16.1.1 > 10.10.10.11 icmp: time exceeded in-transit
9: 00:22:04.201375 10.0.114.197 > 10.10.10.11 icmp: time exceeded in-transit
10: 00:22:04.201420 10.0.254.225 > 10.10.10.11 icmp: time exceeded in-transit
11: 00:22:04.202336 10.122.149.1 > 10.10.10.11 icmp: time exceeded in-transit
12: 00:22:04.202519 10.0.127.113 > 10.10.10.11 icmp: time exceeded in-transit
13: 00:22:04.216022 10.0.127.113 > 10.10.10.11 icmp: time exceeded in-transit
14: 00:22:04.216038 10.0.127.113 > 10.10.10.11 icmp: time exceeded in-transit
15: 00:22:04.216038 10.0.114.197 > 10.10.10.11 icmp: time exceeded in-transit
16: 00:22:04.216053 10.0.114.197 > 10.10.10.11 icmp: time exceeded in-transit
17: 00:22:04.216297 172.18.127.245 > 10.10.10.11 icmp: 172.18.127.245 udp port 33452 unreachable
18: 00:22:04.216312 10.0.254.225 > 10.10.10.11 icmp: time exceeded in-transit
19: 00:22:04.216327 10.0.254.225 > 10.10.10.11 icmp: time exceeded in-transit
È possibile ottenere un output più dettagliato sulla CLI di Lina se si esegue il traceroute con gli switch "-I" e "-n" elencati:
[ On the Client PC ]
# traceroute 10.18.127.245 -I -n
Note: You may not observe any difference between traceroute with or without -I switch. The difference is noticeable in the packet captures.
[ On FTD Lina CLI ]
ftd64# capture icmp interface inside real-time match icmp any any
Warning: using this option with a slow console connection may
result in an excessive amount of non-displayed packets
due to performance limitations.
Use ctrl-c to terminate real-time capture
1: 18:37:33.517307 10.10.10.11 > 172.18.127.245 icmp: echo request
2: 18:37:33.517642 10.10.10.11 > 172.18.127.245 icmp: echo request
3: 18:37:33.517658 10.10.10.11 > 172.18.127.245 icmp: echo request
4: 18:37:33.517658 10.10.10.11 > 172.18.127.245 icmp: echo request
5: 18:37:33.517673 10.10.10.11 > 172.18.127.245 icmp: echo request
6: 18:37:33.517673 10.10.10.11 > 172.18.127.245 icmp: echo request
7: 18:37:33.517673 10.10.10.11 > 172.18.127.245 icmp: echo request
8: 18:37:33.517749 10.10.10.11 > 172.18.127.245 icmp: echo request
9: 18:37:33.517749 10.10.10.11 > 172.18.127.245 icmp: echo request
10: 18:37:33.517764 10.10.10.11 > 172.18.127.245 icmp: echo request
11: 18:37:33.517764 10.10.10.11 > 172.18.127.245 icmp: echo request
12: 18:37:33.517826 10.10.10.11 > 172.18.127.245 icmp: echo request
13: 18:37:33.517826 10.10.10.11 > 172.18.127.245 icmp: echo request
14: 18:37:33.517826 10.10.10.11 > 172.18.127.245 icmp: echo request
15: 18:37:33.517932 10.10.10.11 > 172.18.127.245 icmp: echo request
16: 18:37:33.517932 10.10.10.11 > 172.18.127.245 icmp: echo request
17: 18:37:33.522464 10.0.0.1 > 10.10.10.11 icmp: time exceeded in-transit
18: 18:37:33.522510 10.0.0.1 > 10.10.10.11 icmp: time exceeded in-transit
19: 18:37:33.522510 10.0.0.1 > 10.10.10.11 icmp: time exceeded in-transit
20: 18:37:33.522632 172.16.1.1 > 10.10.10.11 icmp: time exceeded in-transit
21: 18:37:33.522647 172.16.1.1 > 10.10.10.11 icmp: time exceeded in-transit
22: 18:37:33.522647 172.16.1.1 > 10.10.10.11 icmp: time exceeded in-transit
23: 18:37:33.523852 10.0.114.197 > 10.10.10.11 icmp: time exceeded in-transit
24: 18:37:33.523929 10.0.114.197 > 10.10.10.11 icmp: time exceeded in-transit
25: 18:37:33.523944 10.0.114.197 > 10.10.10.11 icmp: time exceeded in-transit
26: 18:37:33.524066 10.0.127.113 > 10.10.10.11 icmp: time exceeded in-transit
27: 18:37:33.524127 10.0.254.225 > 10.10.10.11 icmp: time exceeded in-transit
28: 18:37:33.524127 10.0.127.113 > 10.10.10.11 icmp: time exceeded in-transit
29: 18:37:33.524142 10.0.127.113 > 10.10.10.11 icmp: time exceeded in-transit
30: 18:37:33.526767 10.122.149.1 > 10.10.10.11 icmp: time exceeded in-transit
31: 18:37:33.526843 10.122.149.1 > 10.10.10.11 icmp: time exceeded in-transit
32: 18:37:33.526843 10.122.149.1 > 10.10.10.11 icmp: time exceeded in-transit
33: 18:37:33.527652 10.10.10.11 > 172.18.127.245 icmp: echo request
34: 18:37:33.527697 10.10.10.11 > 172.18.127.245 icmp: echo request
35: 18:37:33.527713 10.10.10.11 > 172.18.127.245 icmp: echo request
36: 18:37:33.527728 10.10.10.11 > 172.18.127.245 icmp: echo request
37: 18:37:33.527987 10.10.10.11 > 172.18.127.245 icmp: echo request
38: 18:37:33.528033 10.10.10.11 > 172.18.127.245 icmp: echo request
39: 18:37:33.528048 10.10.10.11 > 172.18.127.245 icmp: echo request
40: 18:37:33.528048 10.10.10.11 > 172.18.127.245 icmp: echo request
41: 18:37:33.528064 10.10.10.11 > 172.18.127.245 icmp: echo request
42: 18:37:33.528064 10.10.10.11 > 172.18.127.245 icmp: echo request
43: 18:37:33.528079 10.10.10.11 > 172.18.127.245 icmp: echo request
44: 18:37:33.528094 10.10.10.11 > 172.18.127.245 icmp: echo request
45: 18:37:33.528094 10.10.10.11 > 172.18.127.245 icmp: echo request
46: 18:37:33.532870 10.0.254.225 > 10.10.10.11 icmp: time exceeded in-transit
47: 18:37:33.532885 10.0.254.225 > 10.10.10.11 icmp: time exceeded in-transit
48: 18:37:33.533679 172.18.127.245 > 10.10.10.11 icmp: echo reply
49: 18:37:33.533694 172.18.127.245 > 10.10.10.11 icmp: echo reply
50: 18:37:33.533694 172.18.127.245 > 10.10.10.11 icmp: echo reply
51: 18:37:33.533694 172.18.127.245 > 10.10.10.11 icmp: echo reply
52: 18:37:33.533694 172.18.127.245 > 10.10.10.11 icmp: echo reply
53: 18:37:33.533724 172.18.127.245 > 10.10.10.11 icmp: echo reply
54: 18:37:33.533724 172.18.127.245 > 10.10.10.11 icmp: echo reply
55: 18:37:33.533724 172.18.127.245 > 10.10.10.11 icmp: echo reply
56: 18:37:33.533740 10.10.10.11 > 172.18.127.245 icmp: echo request
57: 18:37:33.533816 10.10.10.11 > 172.18.127.245 icmp: echo request
58: 18:37:33.533831 10.10.10.11 > 172.18.127.245 icmp: echo request
59: 18:37:33.537066 172.18.127.245 > 10.10.10.11 icmp: echo reply
60: 18:37:33.537081 172.18.127.245 > 10.10.10.11 icmp: echo reply
61: 18:37:33.537081 172.18.127.245 > 10.10.10.11 icmp: echo reply
62: 18:37:33.538500 172.18.127.245 > 10.10.10.11 icmp: echo reply
63: 18:37:33.538500 172.18.127.245 > 10.10.10.11 icmp: echo reply
64: 18:37:33.539217 172.18.127.245 > 10.10.10.11 icmp: echo reply
64 packets shown.
0 packets not shown due to performance limitations.
Suggerimento: ID bug Cisco CSCvq79913 - I pacchetti di errore ICMP vengono scartati per i valori Null di pdts_info. Accertarsi di utilizzare il prefiltro per ICMP, preferibilmente per il traffico di ritorno di tipo 3 e 11.
| Revisione | Data di pubblicazione | Commenti |
|---|---|---|
4.0 |
17-Aug-2026
|
Titolo, ortografia, grammatica e righe orizzontali inserite aggiornate per separare le sezioni in base agli errori di leggibilità, URL fisso e CCW. |
3.0 |
24-May-2024
|
Certificazione |
2.0 |
24-Mar-2023
|
Titolo, introduzione, testo alternativo, traduzione automatica, requisiti di stile, argomenti e formattazione aggiornati. |
1.0 |
12-Feb-2020
|
Versione iniziale |