Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IS-IS not supporting/doing IPv4 next hop routing for unnumbered interfaces? #16018

Open
hvisage opened this issue May 15, 2024 · 0 comments
Open

Comments

@hvisage
Copy link

hvisage commented May 15, 2024

Though Openfabric will happily insert onlink routes on unnumbered interfaces, it seems that IS-IS "needs" to have an IPv4 address on the interface(s), else it doesn't have next hops to insert.

I've searched high and low, and couldn't find any setting I've missed, and the source code haven't been too help full to see/understand if I'm missing something or if the needed haven't been coded into IS-IS yet.

Current configuration:
!
frr version 10.0
frr defaults datacenter
hostname margherita
log syslog informational
service integrated-vtysh-config
!
interface enp67s0f1
 ip router isis 1
 ipv6 router isis 1
 isis csnp-interval 2
 isis hello-interval 1
 isis hello-multiplier 2
 isis network point-to-point
exit
!
interface enp67s0f2
 ip router isis 1
 ipv6 router isis 1
 isis csnp-interval 2
 isis hello-interval 1
 isis hello-multiplier 2
 isis network point-to-point
exit
!
interface enp67s0f3
 ip router isis 1
 ipv6 router isis 1
 isis csnp-interval 2
 isis hello-interval 1
 isis hello-multiplier 2
 isis network point-to-point
exit
!
interface lo
 ip address 10.4.127.1/32
 ip router isis 1
 ipv6 address 2c0f:dead:beef:feed:2:0:4:1/128
 ipv6 router isis 1
 isis passive
exit
!
router isis 1
 is-type level-1
 net 49.1004.feed.feed.0004.0001.00
 lsp-timers gen-interval 1 refresh-interval 180 max-lifetime 600
 redistribute ipv4 connected level-1
 redistribute ipv6 connected level-1
 topology ipv4-multicast
 topology ipv4-mgmt
 topology ipv6-unicast
 topology ipv6-multicast
 topology ipv6-mgmt
 topology ipv6-dstsrc
 log-adjacency-changes
exit
!
end
root@margherita:~# vtysh -c "show isis route"
Area 1:
IS-IS paths to level-1 routers that speak IP
Vertex               Type         Metric Next-Hop             Interface Parent
margherita
10.4.127.1/32        IP internal  0                                     margherita(4)
pu.bl.ic1.0/24      IP internal  0                                     margherita(4)

IS-IS L1 IPv4 routing table:

 Prefix           Metric  Interface  Nexthop  Label(s)
 -------------------------------------------------------
 10.4.127.1/32    0       -          -        -
 pu.bl.ic1.0/24  0       -          -        -

IS-IS paths to level-1 routers that speak IPv6
Vertex               Type         Metric Next-Hop             Interface Parent
margherita
2c0f:dead:beef:feed:2:0:4:1/128 IP6 internal 0                                     margherita(4)
quesadilla           TE-IS        10     quesadilla           enp67s0f1 margherita(4)
guacamole            TE-IS        10     guacamole            enp67s0f2 margherita(4)
tequila              TE-IS        10     tequila              enp67s0f3 margherita(4)
2c0f:dead:beef:feed:2:0:4:2/128 IP6 internal 10     quesadilla           enp67s0f1 quesadilla(4)
2c0f:dead:beef:feed:2:0:4:3/128 IP6 internal 10     guacamole            enp67s0f2 guacamole(4)
2c0f:dead:beef:feed:2:0:4:4/128 IP6 internal 10     tequila              enp67s0f3 tequila(4)

IS-IS L1 IPv6 routing table:

 Prefix                          Metric  Interface  Nexthop                    Label(s)
 ----------------------------------------------------------------------------------------
 2c0f:dead:beef:feed:2:0:4:1/128  0       -          -                          -
 2c0f:dead:beef:feed:2:0:4:2/128  10      enp67s0f1  fe80::7777:55ff:fe31:6648  -
 2c0f:dead:beef:feed:2:0:4:3/128  10      enp67s0f2  fe80::7777:55ff:fe31:6664  -
 2c0f:dead:beef:feed:2:0:4:4/128  10      enp67s0f3  fe80::7777:55ff:fe31:663c  -

IS-IS paths to level-1 routers that support IPv6 dst-src routing
Vertex               Type         Metric Next-Hop             Interface Parent
margherita
quesadilla           TE-IS        10     quesadilla           enp67s0f1 margherita(4)
guacamole            TE-IS        10     guacamole            enp67s0f2 margherita(4)
tequila              TE-IS        10     tequila              enp67s0f3 margherita(4)

IS-IS L1 IPv6 (dst-src routing) routing table:

adding the "loopback" IP to all connected interfaces:

root@margherita:~# for i in 0 1 2 3; do ip a add dev enp67s0f$i 10.4.127.1 ;done
root@margherita:~# vtysh -c "show isis route"
Area 1:
IS-IS paths to level-1 routers that speak IP
Vertex               Type         Metric Next-Hop             Interface Parent
margherita
10.4.127.1/32        IP internal  0                                     margherita(4)
pu.bli.c1.0/24      IP internal  0                                     margherita(4)
quesadilla           TE-IS        10     quesadilla           enp67s0f1 margherita(4)
guacamole            TE-IS        10     guacamole            enp67s0f2 margherita(4)
tequila              TE-IS        10     tequila              enp67s0f3 margherita(4)
10.4.127.2/32        IP TE        10     quesadilla           enp67s0f1 quesadilla(4)
pu.bli.c1.0/24      IP TE        10     quesadilla           enp67s0f1 quesadilla(4)
                                         guacamole            enp67s0f2 guacamole(4)
                                         tequila              enp67s0f3 tequila(4)
10.4.127.3/32        IP TE        10     guacamole            enp67s0f2 guacamole(4)
10.4.127.4/32        IP TE        10     tequila              enp67s0f3 tequila(4)

IS-IS L1 IPv4 routing table:

 Prefix           Metric  Interface  Nexthop     Label(s)
 ----------------------------------------------------------
 10.4.127.1/32    0       -          -           -
 10.4.127.2/32    10      enp67s0f1  10.4.127.2  -
 10.4.127.3/32    10      enp67s0f2  10.4.127.3  -
 10.4.127.4/32    10      enp67s0f3  10.4.127.4  -
 pu.bli.c1.0/24  10      enp67s0f1  10.4.127.2  -
                          enp67s0f2  10.4.127.3  -
                          enp67s0f3  10.4.127.4  -

IS-IS paths to level-1 routers that speak IPv6
Vertex               Type         Metric Next-Hop             Interface Parent
margherita
2c0f:dead:beef:feed:2:0:4:1/128 IP6 internal 0                                     margherita(4)
quesadilla           TE-IS        10     quesadilla           enp67s0f1 margherita(4)
guacamole            TE-IS        10     guacamole            enp67s0f2 margherita(4)
tequila              TE-IS        10     tequila              enp67s0f3 margherita(4)
2c0f:dead:beef:feed:2:0:4:2/128 IP6 internal 10     quesadilla           enp67s0f1 quesadilla(4)
2c0f:dead:beef:feed:2:0:4:3/128 IP6 internal 10     guacamole            enp67s0f2 guacamole(4)
2c0f:dead:beef:feed:2:0:4:4/128 IP6 internal 10     tequila              enp67s0f3 tequila(4)

IS-IS L1 IPv6 routing table:

 Prefix                          Metric  Interface  Nexthop                    Label(s)
 ----------------------------------------------------------------------------------------
 2c0f:dead:beef:feed:2:0:4:1/128  0       -          -                          -
 2c0f:dead:beef:feed:2:0:4:2/128  10      enp67s0f1  fe80::7777:55ff:fe31:6648  -
 2c0f:dead:beef:feed:2:0:4:3/128  10      enp67s0f2  fe80::7777:55ff:fe31:6664  -
 2c0f:dead:beef:feed:2:0:4:4/128  10      enp67s0f3  fe80::7777:55ff:fe31:663c  -

IS-IS paths to level-1 routers that support IPv6 dst-src routing
Vertex               Type         Metric Next-Hop             Interface Parent
margherita
quesadilla           TE-IS        10     quesadilla           enp67s0f1 margherita(4)
guacamole            TE-IS        10     guacamole            enp67s0f2 margherita(4)
tequila              TE-IS        10     tequila              enp67s0f3 margherita(4)

IS-IS L1 IPv6 (dst-src routing) routing table:

root@margherita:~#
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant