Skip to content

Bug: [vpp] Hard-coded 240.0.0.0/4 FIB drop in upstream VPP breaks SONiC routing parity (e.g. test_decap) #27345

@lolyu

Description

@lolyu

Is it platform specific

generic

Importance or Severity

Critical

Description of the bug

On the SONiC VPP platform, packets with an IPv4 destination in 240.0.0.0/4 (and 224.0.0.0/4) are silently dropped inside ip4-lookup even when SONiC has installed a route covering them (e.g. the default route). Other ASIC platforms (BCM, MLNX) do not impose this filter, so the same SONiC route table behaves differently on VPP.

Concretely this breaks test_decap, whose IPIP inner destinations land in 240.0.0.0/4.

Upstream VPP installs a fixed set of high-priority drop entries into every IPv4 FIB at table creation:
https://github.com/FDio/vpp/blob/2044332c908702fbe2ca7b370f75dbd7c2ae6dad/src/vnet/fib/ip4_fib.c#L13-L90

prefix source overridable?
0.0.0.0/0 FIB_SOURCE_DEFAULT_ROUTE yes
0.0.0.0/32 FIB_SOURCE_DEFAULT_ROUTE yes
224.0.0.0/4 FIB_SOURCE_SPECIAL no
240.0.0.0/4 FIB_SOURCE_SPECIAL no
255.255.255.255/32 FIB_SOURCE_DEFAULT_ROUTE yes

Steps to Reproduce

vpp# show ip fib 240.0.0.0
ipv4-VRF:0, fib_index:0, flow hash:[src dst sport dport proto ] epoch:0 flags:none locks:[adjacency:1, recursive-resolution:8, default-route:1, ]
240.0.0.0/4 fib:0 index:2 locks:2
  special refs:1 entry-flags:drop, src-flags:added,contributing,active,
    path-list:[2] locks:2 flags:drop, uPRF-list:2 len:0 itfs:[]
      path:[2] pl-index:2 ip4 weight=1 pref=0 special:  cfg-flags:drop,
        [@0]: dpo-drop ip4

 forwarding:   unicast-ip4-chain
  [@0]: dpo-load-balance: [proto:ip4 index:3 buckets:1 uRPF:2 to:[40037:4003700]]
    [0] [@0]: dpo-drop ip4

Actual Behavior and Expected Behavior

the route in the VPP should be the same as the bgp fib:

root@vlab-vpp-02:~# show ip route 240.0.0.0
Routing entry for 0.0.0.0/0
  Known via "bgp", distance 20, metric 0, best
  Last update 02:39:22 ago
  * 10.0.0.57, via PortChannel101
  * 10.0.0.59, via PortChannel102
  * 10.0.0.61, via PortChannel103
  * 10.0.0.63, via PortChannel104

Relevant log output

Output of show version, show techsupport

Attach files (if any)

No response

Metadata

Metadata

Assignees

Labels

Bug 🐛P1Priority of the issue, lower than P0Triagedthis issue has been triaged

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions