mirror_frr/zebra
Donald Sharp 8a574840a4 zebra: Add connected with noprefixroute
Add ability for the connected routes to know
if they are a prefix route or not.

sharpd@eva:/work/home/sharpd/frr1$ ip addr show dev dummy1
13: dummy1: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default qlen 1000
    link/ether aa:93:ce:ce:3f:62 brd ff:ff:ff:ff:ff:ff
    inet 192.168.55.1/24 scope global noprefixroute dummy1
       valid_lft forever preferred_lft forever
    inet 192.168.56.1/24 scope global dummy1
       valid_lft forever preferred_lft forever
    inet6 fe80::a893:ceff:fece:3f62/64 scope link
       valid_lft forever preferred_lft forever

sharpd@eva:/work/home/sharpd/frr1$ sudo vtysh -c "show int dummy1"
Interface dummy1 is up, line protocol is up
  Link ups:       0    last: (never)
  Link downs:     0    last: (never)
  vrf: default
  index 13 metric 0 mtu 1500 speed 0 txqlen 1000
  flags: <UP,BROADCAST,RUNNING,NOARP>
  Type: Ethernet
  HWaddr: aa:93:ce:ce:3f:62
  inet 192.168.55.1/24 noprefixroute
  inet 192.168.56.1/24
  inet6 fe80::a893:ceff:fece:3f62/64
  Interface Type Other
  Interface Slave Type None
  protodown: off

sharpd@eva:/work/home/sharpd/frr1$ sudo vtysh -c "show ip route"
Codes: K - kernel route, C - connected, L - local, S - static,
       R - RIP, O - OSPF, I - IS-IS, B - BGP, E - EIGRP, N - NHRP,
       T - Table, v - VNC, V - VNC-Direct, A - Babel, D - SHARP,
       F - PBR, f - OpenFabric, t - Table-Direct,
       > - selected route, * - FIB route, q - queued, r - rejected, b - backup
       t - trapped, o - offload failure

K>* 0.0.0.0/0 [0/100] via 192.168.119.1, enp13s0, 00:00:08
K>* 169.254.0.0/16 [0/1000] is directly connected, virbr2 linkdown, 00:00:08
L>* 192.168.44.1/32 is directly connected, dummy2, 00:00:08
L>* 192.168.55.1/32 is directly connected, dummy1, 00:00:08
C>* 192.168.56.0/24 is directly connected, dummy1, 00:00:08
L>* 192.168.56.1/32 is directly connected, dummy1, 00:00:08
L>* 192.168.119.205/32 is directly connected, enp13s0, 00:00:08

sharpd@eva:/work/home/sharpd/frr1$ ip route show
default via 192.168.119.1 dev enp13s0 proto dhcp metric 100
169.254.0.0/16 dev virbr2 scope link metric 1000 linkdown
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
192.168.45.0/24 dev virbr2 proto kernel scope link src 192.168.45.1 linkdown
192.168.56.0/24 dev dummy1 proto kernel scope link src 192.168.56.1
192.168.119.0/24 dev enp13s0 proto kernel scope link src 192.168.119.205 metric 100
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown

sharpd@eva:/work/home/sharpd/frr1$ ip route show table 255
local 127.0.0.0/8 dev lo proto kernel scope host src 127.0.0.1
local 127.0.0.1 dev lo proto kernel scope host src 127.0.0.1
broadcast 127.255.255.255 dev lo proto kernel scope link src 127.0.0.1
local 172.17.0.1 dev docker0 proto kernel scope host src 172.17.0.1
broadcast 172.17.255.255 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
local 192.168.44.1 dev dummy2 proto kernel scope host src 192.168.44.1
broadcast 192.168.44.255 dev dummy2 proto kernel scope link src 192.168.44.1
local 192.168.45.1 dev virbr2 proto kernel scope host src 192.168.45.1
broadcast 192.168.45.255 dev virbr2 proto kernel scope link src 192.168.45.1 linkdown
local 192.168.55.1 dev dummy1 proto kernel scope host src 192.168.55.1
broadcast 192.168.55.255 dev dummy1 proto kernel scope link src 192.168.55.1
local 192.168.56.1 dev dummy1 proto kernel scope host src 192.168.56.1
broadcast 192.168.56.255 dev dummy1 proto kernel scope link src 192.168.56.1
local 192.168.119.205 dev enp13s0 proto kernel scope host src 192.168.119.205
broadcast 192.168.119.255 dev enp13s0 proto kernel scope link src 192.168.119.205
local 192.168.122.1 dev virbr0 proto kernel scope host src 192.168.122.1
broadcast 192.168.122.255 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown

Fixes: #14952
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2023-12-06 09:27:52 -05:00
..
dpdk zebra: Drop new lines from zlog_debug for dpdk debug messages 2023-09-29 09:02:58 +03:00
.gitignore *: cleanup .gitignore files 2018-09-08 21:30:42 +02:00
connected.c zebra: Add connected with noprefixroute 2023-12-06 09:27:52 -05:00
connected.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
debug_nl.c zebra: debug ifname in netlink link debugs 2023-10-20 11:20:25 -04:00
debug.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
debug.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
dplane_fpm_nl.c *: Remove netlink headers from lib/zebra.h 2023-11-07 06:46:19 -05:00
if_ioctl.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
if_netlink.c zebra: Add ability to note that a address is NOPREFIXROUTE 2023-12-06 09:27:52 -05:00
if_netlink.h zebra: Move protodown_r_bit to a better spot 2023-07-05 11:49:36 -04:00
if_socket.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
if_sysctl.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
interface.c zebra: Add connected with noprefixroute 2023-12-06 09:27:52 -05:00
interface.h Merge pull request #13545 from idryzhov/remove-bond-slave 2023-06-23 11:01:19 +03:00
ioctl.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ioctl.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ipforward_proc.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ipforward_sysctl.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
ipforward.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
irdp_interface.c *: convert struct interface->connected to DLIST 2023-11-22 23:00:30 +01:00
irdp_main.c *: convert struct interface->connected to DLIST 2023-11-22 23:00:30 +01:00
irdp_packet.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
irdp.h *: Rename struct thread to struct event 2023-03-24 08:32:17 -04:00
kernel_netlink.c zebra: More memory free up on shutdown 2023-11-13 09:16:45 -05:00
kernel_netlink.h zebra: Remove unused functionality 2023-07-21 07:31:04 -04:00
kernel_socket.c *: Let's use the native IFNAMSIZ instead of INTERFACE_NAMSIZ 2023-11-21 08:08:29 -05:00
kernel_socket.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
label_manager.c zebra: do not accept static label requests conflicting with dynamic-block 2023-10-18 17:46:28 +02:00
label_manager.h zebra: add 'mpls label dynamic-block' command 2023-10-18 09:41:02 +02:00
main.c zebra: Cleanup zrouter.stale_client_list on shutdown 2023-11-21 12:41:18 -05:00
Makefile build: convert zebra/ to non-recursive build 2017-07-31 23:03:30 +02:00
netconf_netlink.c *: Remove netlink headers from lib/zebra.h 2023-11-07 06:46:19 -05:00
netconf_netlink.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
redistribute.c Merge pull request #12600 from donaldsharp/local_routes 2023-12-05 11:00:44 -05:00
redistribute.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
rib.h Merge pull request #12600 from donaldsharp/local_routes 2023-12-05 11:00:44 -05:00
router-id.c Revert "lib: register bgp link-state afi/safi" 2023-10-10 16:45:57 -04:00
router-id.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
rt_netlink.c Merge pull request #12600 from donaldsharp/local_routes 2023-12-05 11:00:44 -05:00
rt_netlink.h zebra: support route replace semantics in FPM 2023-09-04 15:38:03 -03:00
rt_socket.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
rt.h *: Introduce Local Host Routes to FRR 2023-11-01 17:13:06 -04:00
rtadv.c *: Let's use the native IFNAMSIZ instead of INTERFACE_NAMSIZ 2023-11-21 08:08:29 -05:00
rtadv.h *: Rename struct thread to struct event 2023-03-24 08:32:17 -04:00
rtread_netlink.c Merge pull request #12780 from opensourcerouting/spdx-license-id 2023-02-17 09:43:05 -05:00
rtread_sysctl.c Merge pull request #12780 from opensourcerouting/spdx-license-id 2023-02-17 09:43:05 -05:00
rule_netlink.c *: Remove netlink headers from lib/zebra.h 2023-11-07 06:46:19 -05:00
rule_netlink.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
rule_socket.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
sample_plugin.c *: Convert struct event_master to struct event_loop 2023-03-24 08:32:17 -04:00
subdir.am zebra: dump label table information 2023-09-29 08:24:18 +02:00
table_manager.c zebra: remove unnecessary check for default vrf 2023-07-12 17:00:27 +08:00
table_manager.h *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
tc_netlink.c *: Remove netlink headers from lib/zebra.h 2023-11-07 06:46:19 -05:00
tc_netlink.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
tc_socket.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
testrib.conf
zapi_msg.c Merge pull request #12600 from donaldsharp/local_routes 2023-12-05 11:00:44 -05:00
zapi_msg.h zebra: add redistribute table-direct support 2023-10-20 13:28:52 +02:00
zebra_affinitymap.c lib,zebra: add affinity-map configuration hooks 2023-02-10 13:52:01 +01:00
zebra_affinitymap.h lib,zebra: add affinity-map configuration hooks 2023-02-10 13:52:01 +01:00
zebra_dplane.c zebra: Add ability to note that a address is NOPREFIXROUTE 2023-12-06 09:27:52 -05:00
zebra_dplane.h zebra: Add ability to note that a address is NOPREFIXROUTE 2023-12-06 09:27:52 -05:00
zebra_errors.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_errors.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_evpn_mac.c zebra:fix evpn dup detected local mac del event 2023-04-20 15:45:39 -07:00
zebra_evpn_mac.h *: Rename struct thread to struct event 2023-03-24 08:32:17 -04:00
zebra_evpn_mh.c zebra: use ifindex vs ifp to avoid use-after-free on shutdown 2023-05-30 04:09:29 -04:00
zebra_evpn_mh.h zebra: use ifindex vs ifp to avoid use-after-free on shutdown 2023-05-30 04:09:29 -04:00
zebra_evpn_neigh.c *: Remove netlink headers from lib/zebra.h 2023-11-07 06:46:19 -05:00
zebra_evpn_neigh.h *: Convert THREAD_XXX macros to EVENT_XXX macros 2023-03-24 08:32:17 -04:00
zebra_evpn_vxlan.h Merge pull request #12780 from opensourcerouting/spdx-license-id 2023-02-17 09:43:05 -05:00
zebra_evpn.c *: convert struct interface->connected to DLIST 2023-11-22 23:00:30 +01:00
zebra_evpn.h Merge pull request #12780 from opensourcerouting/spdx-license-id 2023-02-17 09:43:05 -05:00
zebra_fpm_dt.c *: Remove netlink headers from lib/zebra.h 2023-11-07 06:46:19 -05:00
zebra_fpm_netlink.c *: Remove netlink headers from lib/zebra.h 2023-11-07 06:46:19 -05:00
zebra_fpm_private.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_fpm_protobuf.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_fpm.c *: Remove netlink headers from lib/zebra.h 2023-11-07 06:46:19 -05:00
zebra_gr.c *: Introduce Local Host Routes to FRR 2023-11-01 17:13:06 -04:00
zebra_l2_bridge_if.c *: Add a hash_clean_and_free() function 2023-03-21 08:54:21 -04:00
zebra_l2_bridge_if.h zebra: multiple vlan aware bridge data structure and related changes 2023-02-13 18:12:04 -05:00
zebra_l2.c zebra: Fix crashes in interface change 2023-08-17 09:43:06 -04:00
zebra_l2.h zebra: Use zebra dplane for RTM link and addr 2023-07-05 13:03:14 -04:00
zebra_mlag_private.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
zebra_mlag_vty.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_mlag_vty.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_mlag.c *: Let's use the native IFNAMSIZ instead of INTERFACE_NAMSIZ 2023-11-21 08:08:29 -05:00
zebra_mlag.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_mpls_netlink.c *: Remove netlink headers from lib/zebra.h 2023-11-07 06:46:19 -05:00
zebra_mpls_null.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_mpls_openbsd.c zebra: reduce number of switch statements with dplane opcodes 2023-11-17 08:40:58 -05:00
zebra_mpls_vty.c zebra: add 'mpls label dynamic-block' command 2023-10-18 09:41:02 +02:00
zebra_mpls.c Merge pull request #12600 from donaldsharp/local_routes 2023-12-05 11:00:44 -05:00
zebra_mpls.h zebra: Unregister mpls hooks on zebra shutdown 2023-11-21 12:41:18 -05:00
zebra_mroute.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_mroute.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_nb_config.c lib: all: remove './' from xpath 22% speedup 2023-11-29 14:37:23 -05:00
zebra_nb_rpcs.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_nb_state.c zebra: add northbound api hooks for nexthop segments 2023-09-20 15:07:15 +02:00
zebra_nb.c zebra: add northbound api hooks for nexthop segments 2023-09-20 15:07:15 +02:00
zebra_nb.h zebra: add northbound api hooks for nexthop segments 2023-09-20 15:07:15 +02:00
zebra_neigh.c zebra: Remove static ARP entries on interface down events 2023-11-06 15:00:59 +02:00
zebra_neigh.h zebra: Remove static ARP entries on interface down events 2023-11-06 15:00:59 +02:00
zebra_netns_id.c *: Remove netlink headers from lib/zebra.h 2023-11-07 06:46:19 -05:00
zebra_netns_id.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_netns_notify.c *: Convert event.h to frrevent.h 2023-03-24 08:32:17 -04:00
zebra_netns_notify.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_nhg_private.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_nhg.c Merge pull request #12600 from donaldsharp/local_routes 2023-12-05 11:00:44 -05:00
zebra_nhg.h zebra: re-install nhg on interface up 2023-05-05 14:37:52 -07:00
zebra_ns.c zebra: On shutdown cleanup zns memory. 2023-11-21 12:39:07 -05:00
zebra_ns.h *: Remove netlink headers from lib/zebra.h 2023-11-07 06:46:19 -05:00
zebra_opaque.c zebra: clean up coverity warning in opaque api 2023-06-26 13:19:23 -04:00
zebra_opaque.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_pbr.c *: Let's use the native IFNAMSIZ instead of INTERFACE_NAMSIZ 2023-11-21 08:08:29 -05:00
zebra_pbr.h *: Let's use the native IFNAMSIZ instead of INTERFACE_NAMSIZ 2023-11-21 08:08:29 -05:00
zebra_ptm_redistribute.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_ptm_redistribute.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_ptm.c *: Let's use the native IFNAMSIZ instead of INTERFACE_NAMSIZ 2023-11-21 08:08:29 -05:00
zebra_ptm.h ripd: support BFD integration 2023-04-19 09:15:01 -03:00
zebra_pw.c zebra: remove unnecessary check for default vrf 2023-07-12 17:00:27 +08:00
zebra_pw.h *: Let's use the native IFNAMSIZ instead of INTERFACE_NAMSIZ 2023-11-21 08:08:29 -05:00
zebra_rib.c Merge pull request #12600 from donaldsharp/local_routes 2023-12-05 11:00:44 -05:00
zebra_rnh.c Merge pull request #12600 from donaldsharp/local_routes 2023-12-05 11:00:44 -05:00
zebra_rnh.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_routemap_nb_config.c zebra: remove checks for src address existence when using "set src" 2021-08-02 18:35:30 +03:00
zebra_routemap_nb.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_routemap_nb.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_routemap.c zebra: Remove tag from zebra_rmap_obj 2023-08-11 11:21:03 -04:00
zebra_routemap.h zebra: Remove tag from zebra_rmap_obj 2023-08-11 11:21:03 -04:00
zebra_router.c zebra: Set Free Functions for Traffic Control Hash Tables 2023-11-29 16:33:54 +04:00
zebra_router.h zebra: Move v6_rr_semantics to be part of zrouter structure 2023-11-06 08:42:30 -05:00
zebra_script.c zebra: Fix missing break in switch 2023-11-03 17:54:55 +00:00
zebra_script.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_snmp.c *: Introduce Local Host Routes to FRR 2023-11-01 17:13:06 -04:00
zebra_srte.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_srte.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_srv6_vty.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_srv6_vty.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_srv6.c *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_srv6.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_tc.c zebra: Set Free Functions for Traffic Control Hash Tables 2023-11-29 16:33:54 +04:00
zebra_tc.h zebra: Set Free Functions for Traffic Control Hash Tables 2023-11-29 16:33:54 +04:00
zebra_trace.c zebra: Add initial zebra tracepoint support 2022-04-20 09:39:47 -04:00
zebra_trace.h *: auto-convert to SPDX License IDs 2023-02-09 14:09:11 +01:00
zebra_vrf.c zebra: More memory free up on shutdown 2023-11-13 09:16:45 -05:00
zebra_vrf.h zebra: Enable nht resolve-via-default by default for traditional profile 2023-08-17 21:45:55 +03:00
zebra_vty.c Merge pull request #12600 from donaldsharp/local_routes 2023-12-05 11:00:44 -05:00
zebra_vxlan_if.c *: Add a hash_clean_and_free() function 2023-03-21 08:54:21 -04:00
zebra_vxlan_if.h zebra: Fix for mcast-group update and delete per vni for svd 2023-02-13 18:12:05 -05:00
zebra_vxlan_private.h Merge pull request #12780 from opensourcerouting/spdx-license-id 2023-02-17 09:43:05 -05:00
zebra_vxlan.c zebra: Cleanup svd_nh_table on shutdown 2023-11-21 12:41:18 -05:00
zebra_vxlan.h zebra: Cleanup svd_nh_table on shutdown 2023-11-21 12:41:18 -05:00
zserv.c zebra: add client counter for nhg operations 2023-11-30 14:25:00 +01:00
zserv.h Merge pull request #12600 from donaldsharp/local_routes 2023-12-05 11:00:44 -05:00