Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
isisd: create ext_reachability tlv when necessary
This commit addresses the case where the LSP entries of a given device do not contain the local address in the extended IS reachability TLV option. The below output shows that the local address is not present in the option: east-vm# show isis database detail east-vm.00-00 [..] Extended Reachability: 0007.e901.1111.00 (Metric: 10) Remote Interface IP Address(es): 10.125.0.1 Adjacency-SID: 30000, Weight: 0, Flags: F:0 B:0, V:1, L:1, S:0, P:0 Extended Reachability: 0007.e901.3333.00 (Metric: 10) Remote Interface IP Address(es): 10.126.0.3 Adjacency-SID: 30001, Weight: 0, Flags: F:0 B:0, V:1, L:1, S:0, P:0 [..] The below output shows what is expected: east-vm# show isis database detail east-vm.00-00 [..] Extended Reachability: 0007.e901.1111.00 (Metric: 10) Local Interface IP Address(es): 10.125.0.2 Remote Interface IP Address(es): 10.125.0.1 Adjacency-SID: 30000, Weight: 0, Flags: F:0 B:0, V:1, L:1, S:0, P:0 Extended Reachability: 0007.e901.3333.00 (Metric: 10) Local Interface IP Address(es): 10.126.0.2 Remote Interface IP Address(es): 10.126.0.3 Adjacency-SID: 30001, Weight: 0, Flags: F:0 B:0, V:1, L:1, S:0, P:0 Not having the local address in the LSP results in creating an invalid traffic engineering database. This inconsistency leads to crashes when unconfiguring the isis instance. The analysis shows the following: When the configuration is loaded at startup, the interfaces are not always available, and the presence of the interface may be detected after the MPLS-TE activation is done. When the new interface event is triggered, the area is attached to the new interface circuit, but as the TLV extension has not been initialised on the circuit, it is not possible to populate the local address of the interface. The attached commit consists in creating the TLV extension structure if MPLS-TE is enabled. Then the local address is populated. Signed-off-by: Philippe Guibert <[email protected]>
- Loading branch information