Hi neale
i see "stacked-on" from "show ip fib" command
we have two default route in vpp, but only one is correct which can access the
internet, but sometimes the incorrect one will be configured into vpp first
which will lead to some routes wrong.
vpp detail config, may be a little different from previous email
vpp# show gre tunnel
[0] instance 2000 src 198.18.0.207 dst 198.18.0.205 fib-idx 0 sw-if-idx 2
payload L3
[1] instance 2001 src 198.18.0.207 dst 198.18.0.203 fib-idx 0 sw-if-idx 3
payload L3
[2] instance 2002 src 198.18.0.207 dst 198.18.0.206 fib-idx 0 sw-if-idx 4
payload L3
vpp# show interface addr
G0 (up):
L3 10.120.0.230/24
gre2000 (up):
L3 10.10.20.2/30
gre2001 (up):
L3 10.10.22.2/30
gre2002 (up):
L3 10.10.25.1/30
local0 (dn):
loop0 (up):
L3 10.1.1.1/32
loop2003 (up):
L3 198.18.0.207/32
after step 1 : ip route add 0.0.0.0/0 via 10.10.20.1 weight 1 preference 20
vpp# show ip fib
ipv4-VRF:0, fib_index:0, flow hash:[src dst sport dport proto ]
locks:[src:plugin-hi:2, src:adjacency:2, src:recursive-resolution:1,
src:default-route:1, src:(nil):1, ]
0.0.0.0/0
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:1 buckets:1 uRPF:58 to:[399:140930]
via:[211:9744]]
[0] [@13]: dpo-load-balance: [proto:ip4 index:44 buckets:1 uRPF:56
to:[100:9600] via:[866:180194]]
[0] [@6]: ipv4 [features] via 0.0.0.0 gre2000: mtu:9000
4500000000000000fe2f2f0ec61200cfc61200cd00000800
stacked-on entry:12:
[@2]: dpo-drop ip4
0.0.0.0/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:2 buckets:1 uRPF:1 to:[0:0]]
[0] [@0]: dpo-drop ip4
10.1.1.1/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:28 buckets:1 uRPF:32 to:[0:0]]
[0] [@2]: dpo-receive: 10.1.1.1 on loop0
10.10.20.0/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:15 buckets:1 uRPF:15 to:[0:0]]
[0] [@0]: dpo-drop ip4
10.10.20.1/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:44 buckets:1 uRPF:56 to:[100:9600]
via:[866:180194]]
[0] [@6]: ipv4 [features] via 0.0.0.0 gre2000: mtu:9000
4500000000000000fe2f2f0ec61200cfc61200cd00000800
stacked-on entry:12:
[@2]: dpo-drop ip4
10.10.20.0/30
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:14 buckets:1 uRPF:14 to:[0:0]]
[0] [@6]: ipv4 [features] via 0.0.0.0 gre2000: mtu:9000
4500000000000000fe2f2f0ec61200cfc61200cd00000800
stacked-on entry:12:
[@2]: dpo-drop ip4
10.10.20.2/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:17 buckets:1 uRPF:19 to:[0:0]]
[0] [@2]: dpo-receive: 10.10.20.2 on gre2000
10.10.20.3/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:16 buckets:1 uRPF:17 to:[0:0]]
[0] [@0]: dpo-drop ip4
10.10.22.0/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:20 buckets:1 uRPF:21 to:[0:0]]
[0] [@0]: dpo-drop ip4
10.10.22.0/30
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:19 buckets:1 uRPF:20 to:[100:9600]]
[0] [@6]: ipv4 [features] via 0.0.0.0 gre2001: mtu:9000
4500000000000000fe2f2f10c61200cfc61200cb00000800
stacked-on entry:17:
[@4]: dpo-load-balance: [proto:ip4 index:44 buckets:1 uRPF:56
to:[100:9600] via:[866:180194]]
[0] [@6]: ipv4 [features] via 0.0.0.0 gre2000: mtu:9000
4500000000000000fe2f2f0ec61200cfc61200cd00000800
stacked-on entry:12:
[@2]: dpo-drop ip4
10.10.22.2/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:22 buckets:1 uRPF:25 to:[0:0]]
[0] [@2]: dpo-receive: 10.10.22.2 on gre2001
10.10.22.3/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:21 buckets:1 uRPF:23 to:[0:0]]
[0] [@0]: dpo-drop ip4
10.10.25.0/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:25 buckets:1 uRPF:27 to:[0:0]]
[0] [@0]: dpo-drop ip4
10.10.25.0/30
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:24 buckets:1 uRPF:26 to:[100:9600]]
[0] [@6]: ipv4 [features] via 0.0.0.0 gre2002: mtu:9000
4500000000000000fe2f2f0dc61200cfc61200ce00000800
stacked-on entry:22:
[@4]: dpo-load-balance: [proto:ip4 index:44 buckets:1 uRPF:56
to:[100:9600] via:[866:180194]]
[0] [@6]: ipv4 [features] via 0.0.0.0 gre2000: mtu:9000
4500000000000000fe2f2f0ec61200cfc61200cd00000800
stacked-on entry:12:
[@2]: dpo-drop ip4
10.10.25.1/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:27 buckets:1 uRPF:31 to:[0:0]]
[0] [@2]: dpo-receive: 10.10.25.1 on gre2002
10.10.25.3/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:26 buckets:1 uRPF:29 to:[0:0]]
[0] [@0]: dpo-drop ip4
10.120.0.0/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:10 buckets:1 uRPF:9 to:[0:0]]
[0] [@0]: dpo-drop ip4
10.120.0.0/24
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:9 buckets:1 uRPF:8 to:[0:0]]
[0] [@4]: ipv4-glean: G0: mtu:9000 ffffffffffff00163e002e8f0806
10.120.0.230/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:12 buckets:1 uRPF:13 to:[354:69804]]
[0] [@2]: dpo-receive: 10.120.0.230 on G0
10.120.0.253/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:48 buckets:1 uRPF:62 to:[0:0]]
[0] [@5]: ipv4 via 10.120.0.253 G0: mtu:9000 eeffffffffff00163e002e8f0800
10.120.0.255/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:11 buckets:1 uRPF:11 to:[0:0]]
[0] [@0]: dpo-drop ip4
198.18.0.203/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:18 buckets:1 uRPF:58 to:[0:0]]
[0] [@13]: dpo-load-balance: [proto:ip4 index:44 buckets:1 uRPF:56
to:[100:9600] via:[866:180194]]
[0] [@6]: ipv4 [features] via 0.0.0.0 gre2000: mtu:9000
4500000000000000fe2f2f0ec61200cfc61200cd00000800
stacked-on entry:12:
[@2]: dpo-drop ip4
198.18.0.205/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:13 buckets:1 uRPF:59 to:[0:0]]
[0] [@0]: dpo-drop ip4
198.18.0.206/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:23 buckets:1 uRPF:58 to:[0:0]]
[0] [@13]: dpo-load-balance: [proto:ip4 index:44 buckets:1 uRPF:56
to:[100:9600] via:[866:180194]]
[0] [@6]: ipv4 [features] via 0.0.0.0 gre2000: mtu:9000
4500000000000000fe2f2f0ec61200cfc61200cd00000800
stacked-on entry:12:
[@2]: dpo-drop ip4
198.18.0.207/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:29 buckets:1 uRPF:33 to:[0:0]]
[0] [@2]: dpo-receive: 198.18.0.207 on loop2003
vpp# show fib entry
FIB Entries:
[email protected]/0
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:1 buckets:1 uRPF:58 to:[426:150250]
via:[225:10388]]
[0] [@13]: dpo-load-balance: [proto:ip4 index:44 buckets:1 uRPF:56
to:[100:9600] via:[911:190638]]
[0] [@6]: ipv4 [features] via 0.0.0.0 gre2000: mtu:9000
4500000000000000fe2f2f0ec61200cfc61200cd00000800
stacked-on entry:12:
[@2]: dpo-drop ip4
[email protected]/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:2 buckets:1 uRPF:1 to:[0:0]]
[0] [@0]: dpo-drop ip4
[email protected]/4
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:3 buckets:1 uRPF:2 to:[0:0]]
[0] [@0]: dpo-drop ip4
[email protected]/4
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:4 buckets:1 uRPF:3 to:[0:0]]
[0] [@0]: dpo-drop ip4
[email protected]/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:5 buckets:1 uRPF:4 to:[0:0]]
[0] [@0]: dpo-drop ip4
5@::/0
unicast-ip6-chain
[@0]: dpo-load-balance: [proto:ip6 index:6 buckets:1 uRPF:5 to:[0:0]]
[0] [@0]: dpo-drop ip6
6@fe80::/10
unicast-ip6-chain
[@0]: dpo-load-balance: [proto:ip6 index:7 buckets:1 uRPF:6 to:[0:0]]
[0] [@14]: ip6-link-local
[email protected]/24
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:9 buckets:1 uRPF:8 to:[0:0]]
[0] [@4]: ipv4-glean: G0: mtu:9000 ffffffffffff00163e002e8f0806
[email protected]/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:10 buckets:1 uRPF:9 to:[0:0]]
[0] [@0]: dpo-drop ip4
[email protected]/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:11 buckets:1 uRPF:11 to:[0:0]]
[0] [@0]: dpo-drop ip4
[email protected]/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:12 buckets:1 uRPF:13 to:[378:74648]]
[0] [@2]: dpo-receive: 10.120.0.230 on G0
[email protected]/30
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:14 buckets:1 uRPF:14 to:[0:0]]
[0] [@6]: ipv4 [features] via 0.0.0.0 gre2000: mtu:9000
4500000000000000fe2f2f0ec61200cfc61200cd00000800
stacked-on entry:12:
[@2]: dpo-drop ip4
[email protected]/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:13 buckets:1 uRPF:59 to:[0:0]]
[0] [@0]: dpo-drop ip4
after step 3: ip route add 0.0.0.0/0 via 10.120.0.253 weight 1 preference 0
vpp# show ip fib 0.0.0.0/0
ipv4-VRF:0, fib_index:0, flow hash:[src dst sport dport proto ]
locks:[src:plugin-hi:2, src:adjacency:2, src:recursive-resolution:3,
src:default-route:1, src:(nil):1, ]
0.0.0.0/0 fib:0 index:0 locks:3
src:API refs:1 src-flags:added,contributing,active,
path-list:[62] locks:8 flags:shared, uPRF-list:65 len:2 itfs:[1, 2, ]
path:[87] pl-index:62 ip4 weight=1 pref=0 recursive: oper-flags:resolved,
via 10.120.0.253 in fib:0 via-fib:46 via-dpo:[dpo-load-balance:48]
path:[86] pl-index:62 ip4 weight=1 pref=20 recursive:
oper-flags:resolved,
via 10.10.20.1 in fib:0 via-fib:42 via-dpo:[dpo-load-balance:44]
src:default-route refs:1 entry-flags:drop, src-flags:added,
path-list:[0] locks:1 flags:drop, uPRF-list:0 len:0 itfs:[]
path:[0] pl-index:0 ip4 weight=1 pref=0 special: cfg-flags:drop,
[@0]: dpo-drop ip4
forwarding: unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:1 buckets:1 uRPF:65 to:[518:183020]
via:[285:13148]]
[0] [@13]: dpo-load-balance: [proto:ip4 index:48 buckets:1 uRPF:62 to:[0:0]
via:[30:5268]]
[0] [@5]: ipv4 via 10.120.0.253 G0: mtu:9000
eeffffffffff00163e002e8f0800
at the moment, the default route is correct now, the higher priority is
contributing to forwarding. but others with red color also use the wrong
default route.
vpp# show ip fib
10.10.22.0/30
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:19 buckets:1 uRPF:20 to:[140:13440]
via:[10:960]]
[0] [@6]: ipv4 [features] via 0.0.0.0 gre2001: mtu:9000
4500000000000000fe2f2f10c61200cfc61200cb00000800
stacked-on entry:17:
[@5]: arp-ipv4: via 10.10.20.1 G0
10.10.25.0/30
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:24 buckets:1 uRPF:26 to:[140:13440]
via:[10:960]]
[0] [@6]: ipv4 [features] via 0.0.0.0 gre2002: mtu:9000
4500000000000000fe2f2f0dc61200cfc61200ce00000800
stacked-on entry:22:
[@5]: arp-ipv4: via 10.10.20.1 G0
198.18.0.203/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:18 buckets:1 uRPF:58 to:[0:0]]
[0] [@3]: arp-ipv4: via 10.10.20.1 G0
198.18.0.205/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:13 buckets:1 uRPF:58 to:[0:0]]
[0] [@3]: arp-ipv4: via 10.10.20.1 G0
198.18.0.206/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:23 buckets:1 uRPF:58 to:[0:0]]
[0] [@3]: arp-ipv4: via 10.10.20.1 G0
198.18.0.207/32
unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:29 buckets:1 uRPF:33 to:[38:4560]]
[0] [@2]: dpo-receive: 198.18.0.207 on loop2003
vpp# show fib entry 17
[email protected]/32 fib:0 index:17 locks:4
src:API refs:1 src-flags:added,contributing,active,
path-list:[63] locks:6 flags:shared, uPRF-list:58 len:1 itfs:[1, ]
path:[88] pl-index:63 ip4 weight=1 pref=0 attached-nexthop:
oper-flags:resolved,
10.10.20.1 G0
[@0]: arp-ipv4: via 10.10.20.1 G0
src:recursive-resolution refs:1 src-flags:added, cover:-1
forwarding: unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:18 buckets:1 uRPF:58 to:[0:0]]
[0] [@3]: arp-ipv4: via 10.10.20.1 G0
Delegates:
track: sibling:29
Children:{adj:11}{adj:2}
Children:{fib-entry-track:4}
vpp# show fib en
entry entry-delegate
vpp# show fib entry 22
[email protected]/32 fib:0 index:22 locks:4
src:API refs:1 src-flags:added,contributing,active,
path-list:[63] locks:6 flags:shared, uPRF-list:58 len:1 itfs:[1, ]
path:[88] pl-index:63 ip4 weight=1 pref=0 attached-nexthop:
oper-flags:resolved,
10.10.20.1 G0
[@0]: arp-ipv4: via 10.10.20.1 G0
src:recursive-resolution refs:1 src-flags:added, cover:-1
forwarding: unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:23 buckets:1 uRPF:58 to:[0:0]]
[0] [@3]: arp-ipv4: via 10.10.20.1 G0
Delegates:
track: sibling:39
Children:{adj:14}{adj:3}
Children:{fib-entry-track:6}
vpp# show ip fib 0.0.0.0/0
ipv4-VRF:0, fib_index:0, flow hash:[src dst sport dport proto ]
locks:[src:plugin-hi:2, src:adjacency:2, src:recursive-resolution:3,
src:default-route:1, src:(nil):1, ]
0.0.0.0/0 fib:0 index:0 locks:3
src:API refs:1 src-flags:added,contributing,active,
path-list:[62] locks:8 flags:shared, uPRF-list:65 len:2 itfs:[1, 2, ]
path:[87] pl-index:62 ip4 weight=1 pref=0 recursive: oper-flags:resolved,
via 10.120.0.253 in fib:0 via-fib:46 via-dpo:[dpo-load-balance:48]
path:[86] pl-index:62 ip4 weight=1 pref=20 recursive:
oper-flags:resolved,
via 10.10.20.1 in fib:0 via-fib:42 via-dpo:[dpo-load-balance:44]
src:default-route refs:1 entry-flags:drop, src-flags:added,
path-list:[0] locks:1 flags:drop, uPRF-list:0 len:0 itfs:[]
path:[0] pl-index:0 ip4 weight=1 pref=0 special: cfg-flags:drop,
[@0]: dpo-drop ip4
forwarding: unicast-ip4-chain
[@0]: dpo-load-balance: [proto:ip4 index:1 buckets:1 uRPF:65 to:[524:183432]
via:[1737:80008]]
[0] [@13]: dpo-load-balance: [proto:ip4 index:48 buckets:1 uRPF:62 to:[0:0]
via:[1816:84791]]
[0] [@5]: ipv4 via 10.120.0.253 G0: mtu:9000
eeffffffffff00163e002e8f0800
From: Neale Ranns
Date: 2022-07-26 06:02
To: [email protected]
Subject: Re: [vpp-dev] questions about fib
Hi,
Before I answer can you please elaborate on what you mean by ‘stacked on’. Can
you please give the config example.
/neale
From: [email protected] <[email protected]> on behalf of
[email protected] via lists.fd.io <[email protected]>
Date: Monday, 25 July 2022 at 11:12
To: vpp-dev <[email protected]>
Subject: [vpp-dev] questions about fib
Hello vpps
1. first we add a default route using api like this:
ip route add 0.0.0.0/0 via 10.121.20.1 weight 1 preference 20
2. than add some other routes which will stacked on default route above
3. add another defalut route using api with same weight value but higher
priority (lower preference value) like this:
ip route add 0.0.0.0/0 via 10.120.0.253 weight 1 preference 0
my question is: when the third step completed, does routes added by step 2 will
stacked on the new default routes added by step 3?
actually the default route added by step 3 is correct.
I think step 3 route is higher priority than step 1, when it's added, it will
back forward to all its children, am i right ? or did i miss something ?
Thanks very much .
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#21723): https://lists.fd.io/g/vpp-dev/message/21723
Mute This Topic: https://lists.fd.io/mt/92596414/21656
Group Owner: [email protected]
Unsubscribe: https://lists.fd.io/g/vpp-dev/leave/1480452/21656/631435203/xyzzy
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-