FRRouting / frr

The FRRouting Protocol Suite
https://frrouting.org/
Other
3.37k stars 1.26k forks source link

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

Open hvisage opened 6 months ago

hvisage commented 6 months ago

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:~#
github-actions[bot] commented 1 week ago

This issue is stale because it has been open 180 days with no activity. Comment or remove the autoclose label in order to avoid having this issue closed.

frrbot[bot] commented 1 week ago

This issue will be automatically closed in the specified period unless there is further activity.

hvisage commented 1 week ago

I guess this isn't going to get supported? Or have I missed something?

frrbot[bot] commented 1 week ago

This issue will no longer be automatically closed.