costruzione di una rete mpls di laboratorio attraverso ospf + ldp + mpls + lsp + rsvp + ibgp con tecnologia juniper
03.02 2020 | by massimilianocostruzione di una rete mpls di laboratorio attraverso ospf + mpls/ldp + mpls/lsp + rsvp + ibgp con tecnologia juniper […]
https://www.ingegnerianetworking.com/wp-content/uploads/2020/02/ldp-mp2p-signal-a64.png
costruzione di una rete mpls di laboratorio attraverso ospf + mpls/ldp + mpls/lsp + rsvp + ibgp con tecnologia juniper
LDP (RFC5036) è uno dei protocolli di segnalazione che va a costruire una rete di tipo MPLS basato su LSP (Label Switched Path) e la sua unica funzione è quella di abilitare uno scambio di etichette tra nodi adiacenti (ed anche non adiacenti con la funzionalità di targeted-hello ldp); gli altri protocolli che costruiscono una rete MPLS sono RSVP-TE, BGP, IGP, (ed infine Spring o Segment-Routing non considerato in questo documento)
LDP non è un protocollo di routing ed è sempre associato ad un IGP quale OSPF oppure ISIS.
LDP ha la facoltà di segnalare tre dipi di LSP:
- – MP2P (Multipoint to Point)
- – P2MP (Point to Multipoint)
- – MP2MP (Multipoint to Multipoint)
a differenza di RSVP, LDP non segnala LSP di tipo P2P (Point to Point) e per il traffico di tipo unicast LDP utilizza una modalità di tipo MP2P, quindi da un qualsiasi router con ruolo di Ingress PE verso uno specifico Egress PE.
La configurazione LDP è di tipo plug and play (esempio di configurazione):
Config LDP JUNOS (test-lab vedi design sotto)
|
Config LDP CISCO IOS-XR (esempio) |
interfaces { em1 {
ospf { } |
mpls ldp router ospf < process > router-id < rid > area 0 interface Bundle-Ether1
NOTA: in caso abbiamo diversi protocolli di MPLS signaling non vi è bisogno di configurare ogni interfaccia sotto ” mpls ldp” ma la configurazione in modalità globale dovrebbe essere sufficiente
Il comando ” track-igp-metric” accoppia LDP ed IGP ed è una best-practices per loop-avoidance |
LDP DISCOVERY:
Una volta abilitato il protocollo LDP per ciascuna interfaccia interessata, un processo di discovery inizia a lavorare; ogni router comincia a trasmettere e ricevere hello packets nella modalità sotto indicata:
Verifica in un ambiente di test con router Juniper:
Di seguito una rapida osservazione dei comandi junos di adiacenza LDP dal punto di vista di ciascun router:
root@PE1>; show ldp neighbor
address |
interface | Label Space Id | Hold Time |
10.1.1.18 | em0.0 | 10.255.255.2:0 | 12 |
10.1.1.2 | em1.0 | 10.255.255.10:0 | 12 |
root@PE2>; show ldp neighbor
address |
interface | Label Space ID | Hold Time |
10.1.1.17 | em0.0 | 10.255.255.1:0 | 12 |
10.1.1.10 | em1.0 | 10.255.255.20:0 | 10 |
root@P1>; show ldp neighbor
address |
interface | Label Space ID | Hold Time |
10.1.1.1 | em1.0 | 10.255.255.1:0 | 12 |
10.1.1.6 | em3.0 | 10.255.255.3:0 | 10 |
10.1.1.42 | em4.0 | 10.255.255.20:0 | 14 |
root@P2>; show ldp neighbor
address |
interface | Label Space ID | Hold Time |
10.1.1.9 | em1.0 | 10.255.255.2:0 | 11 |
10.1.1.14 | em3.0 | 10.255.255.4:0 | 12 |
10.1.1.41 | em4.0 | 10.255.255.10:0 | 13 |
Label Space ID ha un formato = < Router ID > : < label space ID > dove il primo valore è un identificato del router (loopback address)
LDP discovery innesca (trigger) una connessione di tipo TCP tra i due endpoint (LDP over TCP session); gli endpoint di queste sessioni TCP sono il “trasport address” codificato negli UDP hello messages:
root@PE1>; show system connections
Active Internet connections (including servers)
Proto | Recv-Q | Send-Q | Local Address | Foreign Address | State |
tcp4 | 0 | 0 | 10.255.255.1.646 | 10.255.255.10:65415 | ESTABLISHED |
tcp4 | 0 | 0 | 10.255.255.1.646 | 10.255.255.2.51539 | ESTABLISHED |
tcp4 | 0 | 0 | *.646 | *.* | LISTEN |
udp4 | 0 | 0 | *.646 | *.* | |
udp4 | 0 | 0 | 10.255.255.1.59079 | *:* |
root@P1>; show system connections
Active Internet connections (including servers)
Proto | Recv-Q | Send-Q | Local Address | Foreign Address | State |
tcp4 | 0 | 0 | 10.255.255.10:51594 | 10.255.255.3.646 | ESTABLISHED |
tcp4 | 0 | 0 | 10.255.255.10:646 | 10.255.255.20.56081 | ESTABLISHED |
tcp4 | 0 | 0 | 10.255.255.10:65415 | 10.255.255.1.646 | ESTABLISHED |
tcp4 | 0 | 0 | *.646 | *.* | LISTEN |
udp4 | 0 | 0 | *.646 | *.* |
Ora andiamo a verificare le sessioni LDP:
root@PE1>; show ldp session
Address | State | Connection | Hold Time |
10.255.255.2 | Operational | Open | 23 |
10.255.255.10 | Operational | Open | 22 |
root@P1>; show ldp session
address | State | Connection | Hold Time |
10.255.255.1 | Operational | Open | 28 |
10.255.255.3 | Operational | Open | 25 |
10.255.255.20 | Operational | Open | 28 |
Ci sono sostanzialmente due tipi di heartbeat in LDP:
- – LDP over UDP hello messages per il mantenimento delle adiacenze
- – LDP over TCP keepalive per il mantenimento delle sessioni
LDP LABEL MAPPING:
Non appena abbiamo stabilito delle sessioni LDP i router neighbours cominciano a scambiarsi delle label, mappando queste label ai relativi IP Prefix ed inserendole in una tabella chiamata FIB (Forwarding Information Base)
Dal punto di vista di ciascun router Junos, abbiamo la seguente situazione:
From point of view Router PE1 | Peer LDP | IPv4 Prefix Mapping | Input LABEL | Output LABEL |
10.255.255.1:0 | 10.255.255.2:0 | 10.255.255.1/32 | 299776 | 3 |
10.255.255.1:0 | 10.255.255.2:0 | 10.255.255.2/32 | 3 | 299776 |
10.255.255.1:0 | 10.255.255.2:0 | 10.255.255.3/32 | 299824 | 299824 |
10.255.255.1:0 | 10.255.255.2:0 | 10.255.255.4/32 | 299840 | 299840 |
10.255.255.1:0 | 10.255.255.2:0 | 10.255.255/10/32 | 299792 | 299792 |
10.255.255.1:0 | 10.255.255.2:0 | 10.255.255.20/32 | 299808 | 299808 |
10.255.255.1:0 | 10.255.255.10:0 | 10.255.255.1/32 | 299776 | 3 |
10.255.255.1:0 | 10.255.255.10:0 | 10.255.255.2/32 | 299792 | 299776 |
10.255.255.1:0 | 10.255.255.10:0 | 10.255.255.3/32 | 299824 | 299824 |
10.255.255.1:0 | 10.255.255.10:0 | 10.255.255.4/32 | 299840 | 299840 |
10.255.255.1:0 | 10.255.255.10:0 | 10.255.255.10/32 | 3 | 299792 |
10.255.255.1:0 | 10.255.255.10:0 | 10.255.255.20/32 | 299808 | 299808 |
From point of view Router P1 | Peer LDP | IPv4 Prefix Mapping | Input LABEL | Output LABEL |
10.255.255.10:0 | 10.255.255.1:0 | 10.255.255.1/32 | 3 | 299776 |
10.255.255.10:0 | 10.255.255.1:0 | 10.255.255.2/32 | 299776 | 299792 |
10.255.255.10:0 | 10.255.255.1:0 | 10.255.255.3/32 | 299824 | 299824 |
10.255.255.10:0 | 10.255.255.1:0 | 10.255.255.4/32 | 299840 | 299840 |
10.255.255.10:0 | 10.255.255.1:0 | 10.255.255.10/32 | 299792 | 3 |
10.255.255.10:0 | 10.255.255.1:0 | 10.255.255.20/32 | 299808 | 299808 |
10.255.255.10:0 | 10.255.255.3:0 | 10.255.255.1/32 | 299792 | 299776 |
10.255.255.10:0 | 10.255.255.3:0 | 10.255.255.2/32 | 299808 | 299792 |
10.255.255.10:0 | 10.255.255.3:0 | 10.255.255.3/32 | 3 | 299824 |
10.255.255.10:0 | 10.255.255.3:0 | 10.255.255.4/32 | 299840 | 299840 |
10.255.255.10:0 | 10.255.255.3:0 | 10.255.255.10/32 | 299776 | 3 |
10.255.255.10:0 | 10.255.255.3:0 | 10.255.255.20/32 | 299824 | 299808 |
10.255.255.10:0 | 10.255.255.20:0 | 10.255.255.1/32 | 299792 | 299776 |
10.255.255.10:0 | 10.255.255.20:0 | 10.255.255.2/32 | 299776 | 299792 |
10.255.255.10:0 | 10.255.255.20:0 |
10.255.255.3/32 | 299824 | 299824 |
10.255.255.10:0 | 10.255.255.20:0 | 10.255.255.4/32 | 299840 | 299840 |
10.255.255.10:0 | 10.255.255.20:0 | 10.255.255.10/32 | 299808 | 3 |
10.255.255.10:0 | 10.255.255.20:0 | 10.255.255.20/32 | 3 | 299808 |
NOTA: Label = 3 : Implicit Null = conosciuta anche come “penultimate hop popping PHP” e si traduce in una richiesta da parte del nodo egress di una rete MPLS verso il penultimate node LSR per richiedere una operazione di popping top-label mpls ed invio del solo contenuto IPv4 (di fatto il penultimate node vedendosi arrivare una richiesta di servizio con label IN = 3 non esegue più nessuna azione di switching a livello mpls o commutazione/swap di etichetta).
Da notare che questo tipo di operazione non è adatta nel caso abbiamo funzionalità di tipo QoS in quanto, eliminando la parte di labels mpls anche il contenuto EXP verrebbe a mancare come informazione da esaminare dal nodo egress (questa funzionalità viene risolta dal explicit null label)
NOTA: è possibile disabilitare la funzionalità di implicit-null (label = 3) PHP con la configurazione di un explicit-null che assume valore = 0 per IPv4 e valore = 2 per IPv6
Riassumendo da un punto di vista grafico le due suddette tabella (tralasciando il label mapping degli altri router dell’ambiente di test) possiamo dedurre che per ciascuna IP Prefix (FEC) i router associano un valore di label sempre identico diretto ai suoi neighbours LDP (di sotto un esempio grafico):
Si riporta a titolo di esempio il comando di mapping database del PE1:
root@PE1>; show ldp database brief
Input label database, 10.255.255.1:0–10.255.255.2:0
Label Prefix
299776 10.255.255.1/32
3 10.255.255.2/32
299824 10.255.255.3/32
299840 10.255.255.4/32
299792 10.255.255.10/32
299808 10.255.255.20/32
Output label database, 10.255.255.1:0–10.255.255.2:0
Label Prefix
3 10.255.255.1/32
299776 10.255.255.2/32
299824 10.255.255.3/32
299840 10.255.255.4/32
299792 10.255.255.10/32
299808 10.255.255.20/32
Input label database, 10.255.255.1:0–10.255.255.10:0
Label Prefix
299776 10.255.255.1/32
299792 10.255.255.2/32
299824 10.255.255.3/32
299840 10.255.255.4/32
3 10.255.255.10/32
299808 10.255.255.20/32
Output label database, 10.255.255.1:0–10.255.255.10:0
Label Prefix
3 10.255.255.1/32
299776 10.255.255.2/32
299824 10.255.255.3/32
299840 10.255.255.4/32
299792 10.255.255.10/32
299808 10.255.255.20/32
Per maggiori informazioni riguardo la costruzione di una tabella FTN (FEC to NHLFE) vedi: https://www.massimilianosbaraglia.it/routing/mpls/mpls-teoria/mpls-ftn-fec-to-nhlfe
Per maggiori informazioni riguardo la distribuzione delle label ldp vedi: https://www.massimilianosbaraglia.it/routing/mpls/mpls-teoria/mpls-distribuzione-labels-ldp-protocols-overview
Questa assegnazione label mapping ha solo significato locale all’interno di ciascun router.
Il mapping LDP è dinamico e può cambiare a seguito di un evento come un route flap.
E’ possibile che router diversi possano associare lo stesso valore di label per una stessa Prefix (FEC)
RFC3031 definisce un label-space per interface dove ogni interfaccia di ingresso ha una sua propria FIB; un pacchetto mpls/ldp entrante ha valore solo per quella interfaccia di ingresso.
Una volta eseguita la configurazione mpls/ldp e le adiacenze sono attive i router Junos costruiscono tre tabelle di routes distinte e precisamente la inet.0, inet.3 e la mpls.0 (per simmetria con le tabelle di cui sopra si riportano le tabelle di routes del PE1 e del P1):
root@PE1>; show route
inet.0: 24 destinations, 24 routes (24 active, 0 holddown, 0 hidden)
+ = Active Route, – = Last Active, * = Both
10.1.1.0/30 *[Direct/0] 01:18:43
> via em1.0
10.1.1.1/32 *[Local/0] 01:18:43
Local via em1.0
10.1.1.4/30 *[OSPF/10] 01:14:17, metric 2
> to 10.1.1.2 via em1.0
10.1.1.8/30 *[OSPF/10] 01:16:25, metric 2
> to 10.1.1.18 via em0.0
10.1.1.12/30 *[OSPF/10] 01:03:00, metric 3
to 10.1.1.18 via em0.0
> to 10.1.1.2 via em1.0
10.1.1.16/30 *[Direct/0] 01:18:43
> via em0.0
10.1.1.17/32 *[Local/0] 01:18:43
Local via em0.0
10.1.1.20/30 *[OSPF/10] 00:59:52, metric 3
> to 10.1.1.2 via em1.0
10.1.1.40/30 *[OSPF/10] 01:14:17, metric 2
> to 10.1.1.2 via em1.0
10.255.255.1/32 *[Direct/0] 01:18:43
> via lo0.0
10.255.255.2/32 *[OSPF/10] 01:16:25, metric 1
> to 10.1.1.18 via em0.0
10.255.255.3/32 *[OSPF/10] 00:59:52, metric 2
> to 10.1.1.2 via em1.0
10.255.255.4/32 *[OSPF/10] 00:55:41, metric 3
> to 10.1.1.18 via em0.0
to 10.1.1.2 via em1.0
10.255.255.10/32 *[OSPF/10] 01:14:17, metric 1
> to 10.1.1.2 via em1.0
10.255.255.20/32 *[OSPF/10] 01:03:00, metric 2
to 10.1.1.18 via em0.0
> to 10.1.1.2 via em1.0
172.16.1.0/24 *[Direct/0] 01:18:43
> via em5.0
172.16.1.1/32 *[Local/0] 01:18:43
Local via em5.0
172.16.3.0/24 *[OSPF/10] 00:55:41, metric 4
> to 10.1.1.18 via em0.0
to 10.1.1.2 via em1.0
224.0.0.5/32 *[OSPF/10] 01:18:44, metric 1
MultiRecv
inet.3: 5 destinations, 5 routes (5 active, 0 holddown, 0 hidden)
+ = Active Route, – = Last Active, * = Both
10.255.255.2/32 *[LDP/9] 01:16:20, metric 1
> to 10.1.1.18 via em0.0
10.255.255.3/32 *[LDP/9] 00:59:52, metric 2
> to 10.1.1.2 via em1.0, Push 299824
10.255.255.4/32 *[LDP/9] 00:55:37, metric 3
> to 10.1.1.18 via em0.0, Push 299840
to 10.1.1.2 via em1.0, Push 299840
10.255.255.10/32 *[LDP/9] 01:14:14, metric 1
> to 10.1.1.2 via em1.0
10.255.255.20/32 *[LDP/9] 01:03:00, metric 2
> to 10.1.1.18 via em0.0, Push 299808
to 10.1.1.2 via em1.0, Push 299808
mpls.0: 10 destinations, 10 routes (10 active, 0 holddown, 0 hidden)
+ = Active Route, – = Last Active, * = Both
0 *[MPLS/0] 01:18:44, metric 1
Receive
1 *[MPLS/0] 01:18:44, metric 1
Receive
2 *[MPLS/0] 01:18:44, metric 1
Receive
299776 *[LDP/9] 01:16:20, metric 1
> to 10.1.1.18 via em0.0, Pop
299776(S=0) *[LDP/9] 01:16:20, metric 1
> to 10.1.1.18 via em0.0, Pop
299792 *[LDP/9] 01:14:14, metric 1
> to 10.1.1.2 via em1.0, Pop
299792(S=0) *[LDP/9] 01:14:14, metric 1
> to 10.1.1.2 via em1.0, Pop
299808 *[LDP/9] 01:03:00, metric 1
to 10.1.1.18 via em0.0, Swap 299808
> to 10.1.1.2 via em1.0, Swap 299808
299824 *[LDP/9] 00:59:52, metric 1
> to 10.1.1.2 via em1.0, Swap 299824
299840 *[LDP/9] 00:55:37, metric 1
> to 10.1.1.18 via em0.0, Swap 299840
to 10.1.1.2 via em1.0, Swap 299840
root@P1>; show route
inet.0: 25 destinations, 25 routes (25 active, 0 holddown, 0 hidden)
+ = Active Route, – = Last Active, * = Both
10.1.1.0/30 *[Direct/0] 01:20:08
> via em1.0
10.1.1.2/32 *[Local/0] 01:20:08
Local via em1.0
10.1.1.4/30 *[Direct/0] 01:20:08
> via em3.0
10.1.1.5/32 *[Local/0] 01:20:08
Local via em3.0
10.1.1.8/30 *[OSPF/10] 01:09:22, metric 2
> to 10.1.1.42 via em4.0
10.1.1.12/30 *[OSPF/10] 01:09:22, metric 2
> to 10.1.1.42 via em4.0
10.1.1.16/30 *[OSPF/10] 01:19:53, metric 2
> to 10.1.1.1 via em1.0
10.1.1.20/30 *[OSPF/10] 01:06:27, metric 2
> to 10.1.1.6 via em3.0
10.1.1.40/30 *[Direct/0] 01:20:08
> via em4.0
10.1.1.41/32 *[Local/0] 01:20:08
Local via em4.0
10.255.255.1/32 *[OSPF/10] 01:19:53, metric 1
> to 10.1.1.1 via em1.0
10.255.255.2/32 *[OSPF/10] 01:09:22, metric 2
to 10.1.1.1 via em1.0
> to 10.1.1.42 via em4.0
10.255.255.3/32 *[OSPF/10] 01:06:27, metric 1
> to 10.1.1.6 via em3.0
10.255.255.4/32 *[OSPF/10] 01:02:25, metric 2
to 10.1.1.6 via em3.0
> to 10.1.1.42 via em4.0
10.255.255.10/32 *[Direct/0] 01:20:08
> via lo0.0
10.255.255.20/32 *[OSPF/10] 01:09:22, metric 1
> to 10.1.1.42 via em4.0
172.16.1.0/24 *[OSPF/10] 01:19:53, metric 2
> to 10.1.1.1 via em1.0
172.16.3.0/24 *[OSPF/10] 01:02:25, metric 3
> to 10.1.1.6 via em3.0
to 10.1.1.42 via em4.0
224.0.0.5/32 *[OSPF/10] 01:20:08, metric 1
MultiRecv
inet.3: 5 destinations, 5 routes (5 active, 0 holddown, 0 hidden)
+ = Active Route, – = Last Active, * = Both
10.255.255.1/32 *[LDP/9] 01:19:52, metric 1
> to 10.1.1.1 via em1.0
10.255.255.2/32 *[LDP/9] 01:09:22, metric 2
to 10.1.1.1 via em1.0, Push 299776
> to 10.1.1.42 via em4.0, Push 299776
10.255.255.3/32 *[LDP/9] 01:06:27, metric 1
> to 10.1.1.6 via em3.0
10.255.255.4/32 *[LDP/9] 01:02:25, metric 2
to 10.1.1.6 via em3.0, Push 299840
> to 10.1.1.42 via em4.0, Push 299840
10.255.255.20/32 *[LDP/9] 01:09:22, metric 1
> to 10.1.1.42 via em4.0
mpls.0: 11 destinations, 11 routes (11 active, 0 holddown, 0 hidden)
+ = Active Route, – = Last Active, * = Both
0 *[MPLS/0] 01:20:08, metric 1
Receive
1 *[MPLS/0] 01:20:08, metric 1
Receive
2 *[MPLS/0] 01:20:08, metric 1
Receive
299776 *[LDP/9] 01:19:52, metric 1
> to 10.1.1.1 via em1.0, Pop
299776(S=0) *[LDP/9] 01:19:52, metric 1
> to 10.1.1.1 via em1.0, Pop
299792 *[LDP/9] 01:09:22, metric 1
to 10.1.1.1 via em1.0, Swap 299776
> to 10.1.1.42 via em4.0, Swap 299776
299808 *[LDP/9] 01:09:22, metric 1
> to 10.1.1.42 via em4.0, Pop
299808(S=0) *[LDP/9] 01:09:22, metric 1
> to 10.1.1.42 via em4.0, Pop
299824 *[LDP/9] 01:06:27, metric 1
> to 10.1.1.6 via em3.0, Pop
299824(S=0) *[LDP/9] 01:06:27, metric 1
> to 10.1.1.6 via em3.0, Pop
299840 *[LDP/9] 01:02:25, metric 1
> to 10.1.1.6 via em3.0, Swap 299840
to 10.1.1.42 via em4.0, Swap 299840
Per maggiori informazioni sul valore delle label well-know vedi: https://www.massimilianosbaraglia.it/routing/mpls/mpls-teoria/mpls-header-e-significato-delle-label-di-servizio-rfc-3032
Per maggiori informazioni riguardo operazioni di push, swap e pop vedi: https://www.massimilianosbaraglia.it/routing/mpls/mpls-teoria/mpls-packets-switching-integrato-path-r1-sw1-sw2-r2-e-funzionalita-di-push-swap-pop
NOTA: da evidenziare che le subnet indicanti le rispettive LAN (172.16.1.0/24 e 172.16.3.0/24) indicate sopra in rosso, le ho inserite nel processo ospf solo per la loro raggiungibiltà ma a lavori completati, l’interfaccia em5.0 che collega le rispettive lan NON deve essere presente all’interno del processo ospf ma essere redistribuita via BGP e raggiungibile via LSP Path; il protocollo IGP (sia esso OSPF che ISIS) serve solo come strato underlay per la costuzione delle adiacenze e sessioni dei protocolli che vanno a costruire la rete MPLS.
La tabella LDP route nello specifico è verificabile dai seguenti comandi:
root@PE1>; show ldp route
Destination Next-hop intf/lsp Next-hop address
10.1.1.0/30 em1.0
10.1.1.1/32
10.1.1.4/30 em1.0 10.1.1.2
10.1.1.8/30 em0.0 10.1.1.18
10.1.1.12/30 em0.0 10.1.1.18
em1.0 10.1.1.2
10.1.1.16/30 em0.0
10.1.1.17/32
10.1.1.20/30 em1.0 10.1.1.2
10.1.1.40/30 em1.0 10.1.1.2
10.255.255.1/32 lo0.0
10.255.255.2/32 em0.0 10.1.1.18
10.255.255.3/32 em1.0 10.1.1.2
10.255.255.4/32 em0.0 10.1.1.18
em1.0 10.1.1.2
10.255.255.10/32 em1.0 10.1.1.2
10.255.255.20/32 em0.0 10.1.1.18
em1.0 10.1.1.2
172.16.1.0/24 em5.0
172.16.1.1/32
172.16.3.0/24 em0.0 10.1.1.18
em1.0 10.1.1.2
224.0.0.5/32
root@P1>; show ldp route
Destination Next-hop intf/lsp Next-hop address
10.1.1.0/30 em1.0
10.1.1.2/32
10.1.1.4/30 em3.0
10.1.1.5/32
10.1.1.8/30 em4.0 10.1.1.42
10.1.1.12/30 em4.0 10.1.1.42
10.1.1.16/30 em1.0 10.1.1.1
10.1.1.20/30 em3.0 10.1.1.6
10.1.1.40/30 em4.0
10.1.1.41/32
10.255.255.1/32 em1.0 10.1.1.1
10.255.255.2/32 em1.0 10.1.1.1
em4.0 10.1.1.42
10.255.255.3/32 em3.0 10.1.1.6
10.255.255.4/32 em4.0 10.1.1.42
em3.0 10.1.1.6
10.255.255.10/32 lo0.0
10.255.255.20/32 em4.0 10.1.1.42
172.16.1.0/24 em1.0 10.1.1.1
172.16.3.0/24 em4.0 10.1.1.42
em3.0 10.1.1.6
224.0.0.5/32
Ora, a seguito della sola configurazione mpls/ldp su base interfaccia, nessun lsp mpls è ancora attivo come si evince dai seguenti comandi:
Per maggiori dettagli su LSP (Label Switch Path) MPLS vedi: https://www.massimilianosbaraglia.it/routing/mpls/mpls-teoria/mpls-lsp-label-switch-path-definizione
root@PE1>; show mpls lsp
Ingress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0
Egress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0
Transit LSP: 0 sessions
Total 0 displayed, Up 0, Down 0
root@P1>; show mpls lsp
Ingress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0
Egress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0
Transit LSP: 0 sessions
Total 0 displayed, Up 0, Down 0
La creazione di un path LSP MPLS deve essere raggiunto attraverso una configurazione degli altri protocolli che vanno a costruire una rete di tipo MPLS; di seguito una rappresentazione grafica con relative configurazioni di test (configurazioni di base):
CONFIG PE ROUTER:
PE1 JUNOS
|
PE2 JUNOS | PE3 JUNOS | PE4 JUNOS |
routing-options { } protocols { bgp { group IBGP { ospf { } |
routing-options { icmp-tunneling bgp { } } |
routing-options { ospf { |
routing-options { |
CONFIG P ROUTER + RR (Route Reflector):
P1 Junos
|
P2 Junos | RR1 Junos |
interfaces { } |
interfaces { |
interfaces { em0 { unit 0 { description to-P1; family inet { address 10.1.1.26/30; } em1 { unit 1 { description to-P2; family inet { address 10.1.1.34/30; } } lo0 { unit 0 { description RID; family inet { address 10.255.255.100/32; } routing-options { router-id 10.255.255.100; autonomous-system 100; } protocols { bgp { group IBGP { type internal; local-address 10.255.255.100; family inet { unicast; } family inet-vpn { unicast; } family l2vpn { signaling; } group IBGP-RR-CLIENTS { type internal; local-address 10.255.255.100; family inet { unicast; } family inet-vpn { unicast; } family l2vpn { signaling; } cluster 10.255.255.100; neighbor 10.255.255.1; neighbor 10.255.255.2; neighbor 10.255.255.3; neighbor 10.255.255.4; } } ospf { area 0.0.0.0 { interface lo0.0; interface em0.0; interface em1.0; interface em3.0; } } |
VERIFICA LSP e RSVP:
root@PE1>; show mpls lsp
Ingress LSP: 3 sessions
To From State Rt P ActivePath LSPname
10.255.255.2 10.255.255.1 Up 0 * PE1-PE2
10.255.255.3 10.255.255.1 Up 0 * PE1-PE3
10.255.255.4 10.255.255.1 Up 1 * PE1-PE4
Total 3 displayed, Up 3, Down 0
Egress LSP: 3 sessions
To From State Rt Style Labelin Labelout LSPname
10.255.255.1 10.255.255.2 Up 0 1 SE 3 – PE2-PE1
10.255.255.1 10.255.255.4 Up 0 1 SE 3 – PE4-PE1
10.255.255.1 10.255.255.3 Up 0 1 SE 3 – PE3-PE1
Total 3 displayed, Up 3, Down 0
Transit LSP: 1 sessions
To From State Rt Style Labelin Labelout LSPname
10.255.255.2 10.255.255.3 Up 0 1 SE 299840 3 PE3-PE2
Total 1 displayed, Up 1, Down 0
root@PE1>; show rsvp session
Ingress RSVP: 3 sessions
To From State Rt Style Labelin Labelout LSPname
10.255.255.2 10.255.255.1 Up 0 1 FF – 3 PE1-PE2
10.255.255.3 10.255.255.1 Up 0 1 FF – 299856 PE1-PE3
10.255.255.4 10.255.255.1 Up 1 1 FF – 299936 PE1-PE4
Total 3 displayed, Up 3, Down 0
Egress RSVP: 3 sessions
To From State Rt Style Labelin Labelout LSPname
10.255.255.1 10.255.255.2 Up 0 1 SE 3 – PE2-PE1
10.255.255.1 10.255.255.4 Up 0 1 SE 3 – PE4-PE1
10.255.255.1 10.255.255.3 Up 0 1 SE 3 – PE3-PE1
Total 3 displayed, Up 3, Down 0
Transit RSVP: 1 sessions
To From State Rt Style Labelin Labelout LSPname
10.255.255.2 10.255.255.3 Up 0 1 SE 299840 3 PE3-PE2
Total 1 displayed, Up 1, Down 0
root@PE2>; show mpls lsp
Ingress LSP: 3 sessions
To From State Rt P ActivePath LSPname
10.255.255.1 0.255.255.2 Up 1 * PE2-PE1
10.255.255.3 10.255.255.2 Up 0 * PE2-PE3
10.255.255.4 10.255.255.2 Up 1 * PE2-PE4
Total 3 displayed, Up 3, Down 0
Egress LSP: 3 sessions
To From State Rt Style Labelin Labelout LSPname
10.255.255.2 10.255.255.4 Up 0 1 SE 3 – PE4-PE2
10.255.255.2 10.255.255.3 Up 0 1 SE 3 – PE3-PE2
10.255.255.2 10.255.255.1 Up 0 1 FF 3 – PE1-PE2
Total 3 displayed, Up 3, Down 0
Transit LSP: 0 sessions
Total 0 displayed, Up 0, Down 0
root@PE2>; show rsvp session
Ingress RSVP: 3 sessions
To From State Rt Style Labelin Labelout LSPname
10.255.255.1 10.255.255.2 Up 1 1 SE – 3 PE2-PE1
10.255.255.3 10.255.255.2 Up 0 1 SE – 299840 PE2-PE3
10.255.255.4 10.255.255.2 Up 1 1 SE – 299888 PE2-PE4
Total 3 displayed, Up 3, Down 0
Egress RSVP: 3 sessions
To From State Rt Style Labelin Labelout LSPname
10.255.255.2 10.255.255.4 Up 0 1 SE 3 – PE4-PE2
10.255.255.2 10.255.255.3 Up 0 1 SE 3 – PE3-PE2
10.255.255.2 10.255.255.1 Up 0 1 FF 3 – PE1-PE2
Total 3 displayed, Up 3, Down 0
Transit RSVP: 0 sessions
Total 0 displayed, Up 0, Down 0
root@P1>; show mpls lsp
Ingress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0
Egress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0
Transit LSP: 6 sessions
To From State Rt Style Labelin Labelout LSPname
10.255.255.1 10.255.255.4 Up 1 1 SE 299920 3 PE4-PE1
10.255.255.1 10.255.255.3 Up 1 1 SE 299888 3 PE3-PE1
10.255.255.2 10.255.255.3 Up 1 1 SE 299872 299840 PE3-PE2
10.255.255.3 10.255.255.2 Up 1 1 SE 299840 3 PE2-PE3
10.255.255.3 10.255.255.1 Up 1 1 FF 299856 3 PE1-PE3
10.255.255.4 10.255.255.1 Up 1 1 FF 299936 299872 PE1-PE4
Total 6 displayed, Up 6, Down 0
root@P1>; show rsvp session
Ingress RSVP: 0 sessions
Total 0 displayed, Up 0, Down 0
Egress RSVP: 0 sessions
Total 0 displayed, Up 0, Down 0
Transit RSVP: 6 sessions
To From State Rt Style Labelin Labelout LSPname
10.255.255.1 10.255.255.4 Up 1 1 SE 299920 3 PE4-PE1
10.255.255.1 10.255.255.3 Up 1 1 SE 299888 3 PE3-PE1
10.255.255.2 10.255.255.3 Up 1 1 SE 299872 299840 PE3-PE2
10.255.255.3 10.255.255.2 Up 1 1 SE 299840 3 PE2-PE3
10.255.255.3 10.255.255.1 Up 1 1 FF 299856 3 PE1-PE3
10.255.255.4 10.255.255.1 Up 1 1 FF 299936 299872 PE1-PE4
Total 6 displayed, Up 6, Down 0
root@P2>; show mpls lsp
Ingress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0
Egress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0
Transit LSP: 3 sessions
To From State Rt Style Labelin Labelout LSPname
10.255.255.2 10.255.255.4 Up 1 1 SE 299872 3 PE4-PE2
10.255.255.3 10.255.255.2 Up 1 1 SE 299840 299840 PE2-PE3
10.255.255.4 10.255.255.2 Up 1 1 SE 299888 3 PE2-PE4
Total 3 displayed, Up 3, Down 0
root@PE3>; show mpls lsp
Ingress LSP: 3 sessions
To From State Rt P ActivePath LSPname
10.255.255.1 10.255.255.3 Up 1 * PE3-PE1
10.255.255.2 10.255.255.3 Up 0 * PE3-PE2
10.255.255.4 10.255.255.3 Up 1 * PE3-PE4
Total 3 displayed, Up 3, Down 0
Egress LSP: 3 sessions
To From State Rt Style Labelin Labelout LSPname
10.255.255.3 10.255.255.2 Up 0 1 SE 3 – PE2-PE3
10.255.255.3 10.255.255.4 Up 0 1 SE 3 – PE4-PE3
10.255.255.3 10.255.255.1 Up 0 1 FF 3 – PE1-PE3
Total 3 displayed, Up 3, Down 0
Transit LSP: 2 sessions
To From State Rt Style Labelin Labelout LSPname
10.255.255.1 10.255.255.4 Up 0 1 SE 299856 299920 PE4-PE1
10.255.255.4 10.255.255.1 Up 0 1 FF 299872 3 PE1-PE4
Total 2 displayed, Up 2, Down 0
root@PE4>; show mpls lsp
Ingress LSP: 3 sessions
To From State Rt P ActivePath LSPname
10.255.255.1 10.255.255.4 Up 1 * PE4-PE1
10.255.255.2 10.255.255.4 Up 0 * PE4-PE2
10.255.255.3 10.255.255.4 Up 0 * PE4-PE3
Total 3 displayed, Up 3, Down 0
Egress LSP: 3 sessions
To From State Rt Style Labelin Labelout LSPname
10.255.255.4 10.255.255.2 Up 0 1 SE 3 – PE2-PE4
10.255.255.4 10.255.255.3 Up 0 1 SE 3 – PE3-PE4
10.255.255.4 10.255.255.1 Up 0 1 FF 3 – PE1-PE4
Total 3 displayed, Up 3, Down 0
Transit LSP: 0 sessions
Total 0 displayed, Up 0, Down 0
root@PE4>; show rsvp session
Ingress RSVP: 3 sessions
To From State Rt Style Labelin Labelout LSPname
10.255.255.1 10.255.255.4 Up 1 1 SE – 299856 PE4-PE1
10.255.255.2 10.255.255.4 Up 0 1 SE – 299872 PE4-PE2
10.255.255.3 10.255.255.4 Up 0 1 SE – 3 PE4-PE3
Total 3 displayed, Up 3, Down 0
Egress RSVP: 3 sessions
To From State Rt Style Labelin Labelout LSPname
10.255.255.4 10.255.255.2 Up 0 1 SE 3 – PE2-PE4
10.255.255.4 10.255.255.3 Up 0 1 SE 3 – PE3-PE4
10.255.255.4 10.255.255.1 Up 0 1 FF 3 – PE1-PE4
Total 3 displayed, Up 3, Down 0
Transit RSVP: 0 sessions
Total 0 displayed, Up 0, Down 0
VERIFICA ROUTE PREFIX LAN:
root@PE1>; show route 172.16.3.0
inet.0: 26 destinations, 26 routes (26 active, 0 holddown, 0 hidden)
+ = Active Route, – = Last Active, * = Both
172.16.3.0/24 *[BGP/170] 00:22:33, localpref 100, from 10.255.255.100
AS path: I
> to 10.1.1.2 via em1.0, label-switched-path PE1-PE4
root@PE4>; show route 172.16.1.0
inet.0: 24 destinations, 24 routes (24 active, 0 holddown, 0 hidden)
+ = Active Route, – = Last Active, * = Both
172.16.1.0/24 *[BGP/170] 00:39:10, localpref 100, from 10.255.255.100
AS path: I
> to 10.1.1.21 via em0.0, label-switched-path PE4-PE1
VERIFICA TRACEROUTE PREFIX LAN:
root@PE1>; traceroute 172.16.3.30
traceroute to 172.16.3.30 (172.16.3.30), 30 hops max, 40 byte packets
1 10.1.1.2 (10.1.1.2) 2.348 ms 2.228 ms 2.696 ms
MPLS Label=299936 CoS=0 TTL=1 S=1
2 10.1.1.6 (10.1.1.6) 4.735 ms 4.206 ms 8.714 ms
MPLS Label=299872 CoS=0 TTL=1 S=1
3 10.1.1.22 (10.1.1.22) 11.905 ms 8.212 ms 8.376 ms
4 172.16.3.30 (172.16.3.30) 1479.836 ms 7.177 ms 7.911 ms
root@PE4>; traceroute 172.16.1.10
traceroute to 172.16.1.10 (172.16.1.10), 30 hops max, 40 byte packets
1 10.1.1.21 (10.1.1.21) 4.320 ms 3.830 ms 4.821 ms
MPLS Label=299856 CoS=0 TTL=1 S=1
2 10.1.1.5 (10.1.1.5) 6.434 ms 8.052 ms 8.357 ms
MPLS Label=299920 CoS=0 TTL=1 S=1
3 10.1.1.1 (10.1.1.1) 7.316 ms 10.594 ms 10.293 ms
4 172.16.1.10 (172.16.1.10) 2455.535 ms 12.901 ms 13.568 ms
VERIFICA ACTIVE-PATH FROM PE:
root@PE1>; show route 172.16.3.30 active-path detail
inet.0: 26 destinations, 26 routes (26 active, 0 holddown, 0 hidden)
172.16.3.0/24 (1 entry, 1 announced)
*BGP Preference: 170/-101
Next hop type: Indirect
Next-hop reference count: 3
Source: 10.255.255.100
Next hop type: Router, Next hop index: 577
Next hop: 10.1.1.2 via em1.0 weight 0x1, selected
Label-switched-path PE1-PE4
Label operation: Push 299936
Protocol next hop: 10.255.255.4
Indirect next hop: 8feb780 131071
State: <Active Int Ext>
Local AS: 100 Peer AS: 100
Age: 26:11 Metric2: 3
Task: BGP_100.10.255.255.100+49234
Announcement bits (2): 0-KRT 5-Resolve tree 2
AS path: I (Originator) Cluster list: 10.255.255.100
AS path: Originator ID: 10.255.255.4
Accepted
Localpref: 100
Router ID: 10.255.255.100
root@PE1>; show route 10.255.255.4 active-path detail
inet.0: 26 destinations, 26 routes (26 active, 0 holddown, 0 hidden)
10.255.255.4/32 (1 entry, 1 announced)
*OSPF Preference: 10
Next hop type: Router
Next-hop reference count: 10
Next hop: 10.1.1.18 via em0.0
Next hop: 10.1.1.2 via em1.0, selected
State: <Active Int>
Local AS: 100
Age: 26:52 Metric: 3
Area: 0.0.0.0
Task: OSPF
Announcement bits (3): 0-KRT 3-LDP 5-Resolve tree 2
AS path: I
inet.3: 5 destinations, 8 routes (5 active, 0 holddown, 0 hidden)
10.255.255.4/32 (2 entries, 1 announced)
State: <FlashAll>
*RSVP Preference: 7/1
Next hop type: Router, Next hop index: 577
Next-hop reference count: 9
Next hop: 10.1.1.2 via em1.0 weight 0x1, selected
Label-switched-path PE1-PE4
Label operation: Push 299936
State: <Active Int>
Local AS: 100
Age: 26:32 Metric: 3
Task: RSVP
Announcement bits (2): 2-Resolve tree 1 3-Resolve tree 2
AS path: I
root@PE4>; show route 172.16.1.10 active-path detail
inet.0: 24 destinations, 24 routes (24 active, 0 holddown, 0 hidden)
172.16.1.0/24 (1 entry, 1 announced)
*BGP Preference: 170/-101
Next hop type: Indirect
Next-hop reference count: 3
Source: 10.255.255.100
Next hop type: Router, Next hop index: 561
Next hop: 10.1.1.13 via em3.0 weight 0x1, selected
Label-switched-path PE4-PE1
Label operation: Push 299952
Protocol next hop: 10.255.255.1
Indirect next hop: 8f675a0 131070
State: <Active Int Ext>
Local AS: 100 Peer AS: 100
Age: 48:09 Metric2: 3
Task: BGP_100.10.255.255.100+179
Announcement bits (2): 0-KRT 5-Resolve tree 2
AS path: I (Originator) Cluster list: 10.255.255.100
AS path: Originator ID: 10.255.255.1
Accepted
Localpref: 100
Router ID: 10.255.255.100
root@PE4>; show route 10.255.255.1 active-path detail
inet.0: 24 destinations, 24 routes (24 active, 0 holddown, 0 hidden)
10.255.255.1/32 (1 entry, 1 announced)
*OSPF Preference: 10
Next hop type: Router
Next-hop reference count: 12
Next hop: 10.1.1.21 via em0.0
Next hop: 10.1.1.13 via em3.0, selected
State: <Active Int>
Local AS: 100
Age: 49:51 Metric: 3
Area: 0.0.0.0
Task: OSPF
Announcement bits (3): 0-KRT 3-LDP 5-Resolve tree 2
AS path: I
inet.3: 5 destinations, 8 routes (5 active, 0 holddown, 0 hidden)
10.255.255.1/32 (2 entries, 1 announced)
State: <FlashAll>
*RSVP Preference: 7/1
Next hop type: Router, Next hop index: 563
Next-hop reference count: 9
Next hop: 10.1.1.21 via em0.0 weight 0x1, selected
Label-switched-path PE4-PE1
Label operation: Push 299904
State: <Active Int>
Local AS: 100
Age: 1:14 Metric: 3
Task: RSVP
Announcement bits (2): 2-Resolve tree 1 3-Resolve tree 2
AS path: I
VERIFICA TABLE ROUTE FROM PE:
root@PE1>; show route
inet.0: 26 destinations, 26 routes (26 active, 0 holddown, 0 hidden)
+ = Active Route, – = Last Active, * = Both
10.1.1.0/30 *[Direct/0] 00:41:39
> via em1.0
10.1.1.1/32 *[Local/0] 00:41:39
Local via em1.0
10.1.1.4/30 *[OSPF/10] 00:36:57, metric 2
> to 10.1.1.2 via em1.0
10.1.1.8/30 *[OSPF/10] 00:40:43, metric 2
> to 10.1.1.18 via em0.0
10.1.1.12/30 *[OSPF/10] 00:36:32, metric 3
> to 10.1.1.18 via em0.0
to 10.1.1.2 via em1.0
10.1.1.16/30 *[Direct/0] 00:41:39
> via em0.0
10.1.1.17/32 *[Local/0] 00:41:39
Local via em0.0
10.1.1.20/30 *[OSPF/10] 00:33:58, metric 3
> to 10.1.1.2 via em1.0
10.1.1.24/30 *[OSPF/10] 00:36:57, metric 2
> to 10.1.1.2 via em1.0
10.1.1.28/30 *[OSPF/10] 00:36:57, metric 2
> to 10.1.1.2 via em1.0
10.1.1.32/30 *[OSPF/10] 00:36:32, metric 3
> to 10.1.1.18 via em0.0
to 10.1.1.2 via em1.0
10.1.1.36/30 *[OSPF/10] 00:36:32, metric 3
> to 10.1.1.18 via em0.0
to 10.1.1.2 via em1.0
10.1.1.40/30 *[OSPF/10] 00:36:32, metric 2
> to 10.1.1.2 via em1.0
10.255.255.1/32 *[Direct/0] 00:41:39
> via lo0.0
10.255.255.2/32 *[OSPF/10] 00:40:43, metric 1
> to 10.1.1.18 via em0.0
10.255.255.3/32 *[OSPF/10] 00:33:58, metric 2
> to 10.1.1.2 via em1.0
10.255.255.4/32 *[OSPF/10] 00:30:47, metric 3
to 10.1.1.18 via em0.0
> to 10.1.1.2 via em1.0
10.255.255.10/32 *[OSPF/10] 00:36:57, metric 1
> to 10.1.1.2 via em1.0
10.255.255.20/32 *[OSPF/10] 00:36:32, metric 2
> to 10.1.1.18 via em0.0
to 10.1.1.2 via em1.0
10.255.255.100/32 *[OSPF/10] 00:34:08, metric 2
> to 10.1.1.2 via em1.0
172.16.1.0/24 *[Direct/0] 00:41:39
> via em5.0
172.16.1.1/32 *[Local/0] 00:41:39
Local via em5.0
172.16.3.0/24 *[BGP/170] 00:30:32, localpref 100, from 10.255.255.100
AS path: I
> to 10.1.1.2 via em1.0, label-switched-path PE1-PE4
224.0.0.5/32 *[OSPF/10] 00:41:39, metric 1
MultiRecv
inet.3: 5 destinations, 8 routes (5 active, 0 holddown, 0 hidden)
+ = Active Route, – = Last Active, * = Both
10.255.255.2/32 *[RSVP/7/1] 00:40:41, metric 1
> to 10.1.1.18 via em0.0, label-switched-path PE1-PE2
[LDP/9] 00:40:41, metric 1
> to 10.1.1.18 via em0.0
10.255.255.3/32 *[RSVP/7/1] 00:33:53, metric 2
> to 10.1.1.2 via em1.0, label-switched-path PE1-PE3
[LDP/9] 00:33:58, metric 2
> to 10.1.1.2 via em1.0, Push 299824
10.255.255.4/32 *[RSVP/7/1] 00:30:27, metric 3
> to 10.1.1.2 via em1.0, label-switched-path PE1-PE4
[LDP/9] 00:30:47, metric 3
to 10.1.1.18 via em0.0, Push 299840
> to 10.1.1.2 via em1.0, Push 299904
10.255.255.10/32 *[LDP/9] 00:36:54, metric 1
> to 10.1.1.2 via em1.0
10.255.255.20/32 *[LDP/9] 00:36:32, metric 2
> to 10.1.1.18 via em0.0, Push 299808
to 10.1.1.2 via em1.0, Push 299808
mpls.0: 14 destinations, 14 routes (14 active, 0 holddown, 0 hidden)
+ = Active Route, – = Last Active, * = Both
0 *[MPLS/0] 00:41:39, metric 1
Receive
1 *[MPLS/0] 00:41:39, metric 1
Receive
2 *[MPLS/0] 00:41:39, metric 1
Receive
299776 *[LDP/9] 00:40:41, metric 1
> to 10.1.1.18 via em0.0, Pop
299776(S=0) *[LDP/9] 00:40:41, metric 1
> to 10.1.1.18 via em0.0, Pop
299792 *[LDP/9] 00:36:54, metric 1
> to 10.1.1.2 via em1.0, Pop
299792(S=0) *[LDP/9] 00:36:54, metric 1
> to 10.1.1.2 via em1.0, Pop
299808 *[LDP/9] 00:36:32, metric 1
to 10.1.1.18 via em0.0, Swap 299808
> to 10.1.1.2 via em1.0, Swap 299808
299824 *[LDP/9] 00:33:58, metric 1
> to 10.1.1.2 via em1.0, Swap 299824
299856 *[LDP/9] 00:30:47, metric 1
to 10.1.1.18 via em0.0, Swap 299840
> to 10.1.1.2 via em1.0, Swap 299904
299872 *[RSVP/7/1] 00:02:21, metric 1
> to 10.1.1.18 via em0.0, label-switched-path PE3-PE2
299872(S=0) *[RSVP/7/1] 00:02:21, metric 1
> to 10.1.1.18 via em0.0, label-switched-path PE3-PE2
299888 *[RSVP/7/1] 00:02:21, metric 1
> to 10.1.1.18 via em0.0, label-switched-path PE4-PE2
299888(S=0) *[RSVP/7/1] 00:02:21, metric 1
> to 10.1.1.18 via em0.0, label-switched-path PE4-PE2
VERIFICA TRACERT FROM PC:
PC1> trace 172.16.3.30
trace to 172.16.3.30, 8 hops max, press Ctrl+C to stop
1 172.16.1.1 0.542 ms 0.471 ms 0.741 ms
2 * * *
3 10.1.1.6 5.868 ms 7.383 ms 11.361 ms
4 10.1.1.22 16.802 ms 27.501 ms 16.059 ms
5 *172.16.3.30 18.282 ms (ICMP type:3, code:3, Destination port unreachable)
PC2> trace 172.16.1.10
trace to 172.16.1.10, 8 hops max, press Ctrl+C to stop
1 172.16.3.1 7.336 ms 3.038 ms 2.204 ms
2 10.1.1.21 10.403 ms 16.473 ms 10.967 ms
3 * * *
4 10.1.1.1 17.651 ms 13.868 ms 17.985 ms
5 * * *
6 *172.16.1.10 21.686 ms (ICMP type:3, code:3, Destination port unreachable)