I’ve generally found the output of show TED database to be a bit cryptic. But I ran into an issue today which forced me to really buckle down and figure out what it means and I think I’ve got something worked out.
fluong@SPOCK-re0> show mpls lsp 10.0.0.110 0.0.0.0 Dn 0 - SPOCK-to-SULU
It was a sad sight. The LSP was down and the log from show mpls lsp extensive only had one line:
1 Jun 27 14:27:20.553 CSPF failed: no route toward 10.0.0.110[927 times]
I sanity checked my loopback addresses and made sure that family mpls was configured on all backbone interfaces and was included in protocols rsvp and mpls. Everything looked good on SPOCK.
So I started looking at “show ted database”.
fluong@SPOCK-re0> show ted database 10.0.0.110 TED database: 44 ISIS nodes 44 INET nodes ID Type Age(s) LnkIn LnkOut Protocol SULU.00(10.0.0.110) Rtr 475 1 2 IS-IS(1) To: KIRK-re0.00(10.0.0.5), Local: 10.0.0.170, Remote: 10.0.0.171 Local interface index: 329, Remote interface index: 456 To: SCOTTY.00(10.0.0.111), Local: 10.0.0.168, Remote: 10.0.0.169 Local interface index: 327, Remote interface index: 3
Okay… looks like we’re getting to SULU via a couple of routers, KIRK and SCOTTY. So I logged into the next router down the line, KIRK, and I found that it’s LSP to SULU was also down. So I started sanity checking config.
fluong@KIRK-re0> show mpls lsp ingress 10.0.0.110 0.0.0.0 Dn 0 - KIRK-to-SULU fluong@KIRK-re0> show interfaces descriptions ae1 Interface Admin Link Description ae1 up up To SULU, ae1 fluong@KIRK-re0> show interfaces terse ae1 | match mpls mpls fluong@KIRK-re0> show mpls interface Interface State Administrative groups (x: extended) ae1.0 Up <none> fluong@KIRK-re0> show rsvp interface ae1 <no output>
Bingo! Missing RSVP interface configuration.
It occurs to me that this could be very useful as a quick way to narrow down what interfaces may be missing MPLS configs. Here is my method:
If an LSP is down CSPF reports no route:
- verify loopback address and router-id on the far end
- use the output “show ted database” to trace through performing sanity checks on interface-specific MPLS configs.
- show interface terse (check for family mpls)
- show mpls interface (make sure backbone interfaces are present)
- show rsvp interface (make sure backbone interfaces are present)
- show ldp interface (if applicable, make sure relevant backbone interfaces are present)