On 4/15/21 12:15 AM, Bala Sajja wrote:
> When interfaces are not part of VRF  and below ip address config is
> done on these interfaces, ping with -I (interface) option, we see
> packets transmitting out of the right interfaces.
> 
>  ip addr add 2.2.2.100 peer 1.1.1.100/32 dev enp0s3
>  ip addr add 2.2.2.100 peer 1.1.1.100/32  dev enp0s8
> 
>  ping 1.1.1.100    -I  enp0s3 , packet always goes out of  enp0s3
>  ping 1.1.1.100    -I   enp0s8, packet always goes out of  enp0s8
> 
> When interfaces are enslaved  to VRF  as below and ip are configured
> on these interfaces, packets go out of one  interface only.
> 
>  ip link add MGMT type vrf table 1
>  ip link set dev MGMT up
>  ip link set dev enp0s3 up
>  ip link set dev enp0s3 master MGMT
>  ip link set dev enp0s8 up
>  ip link set dev enp0s8 master MGMT
>  ip link set dev enp0s9 up
> 
>  ip addr add 2.2.2.100 peer 1.1.1.100/32 dev enp0s3
>  ip addr add 2.2.2.100 peer 1.1.1.100/32  dev enp0s8
> 
>  ping 1.1.1.100    -I  enp0s3 , packet always goes out of  enp0s3
>  ping 1.1.1.100    -I   enp0s8, packet always goes out of  enp0s3
> 
> 

I believe this use case will not work since the FIB lookup loses the
original device binding (the -I argument). take a look at the FIB lookup
argument and result:

perf record -e fib:*
perf script

Reply via email to