diff --git a/dp-core/vr_proto_ip.c b/dp-core/vr_proto_ip.c index 473ed13a1..cacd17722 100644 --- a/dp-core/vr_proto_ip.c +++ b/dp-core/vr_proto_ip.c @@ -748,7 +748,8 @@ vr_inet_flow_nexthop(struct vr_packet *pkt, unsigned short vlan) if (vif_is_fabric(pkt->vp_if) && pkt->vp_nh) { /* this is more a requirement from agent */ - if ((pkt->vp_nh->nh_type == NH_ENCAP)) { + if ((pkt->vp_nh->nh_type == NH_ENCAP) || + (pkt->vp_nh->nh_type == NH_RCV)) { nh_id = pkt->vp_nh->nh_dev->vif_nh_id; } else { nh_id = pkt->vp_nh->nh_id;