On 5/4/22 2:07 AM, Nicolas Dichtel wrote: > When ping_group_range is updated, 'ping' uses the DGRAM ICMP socket, > instead of an IP raw socket. In this case, 'ping' is unable to bind its > socket to a local address owned by a vrflite. > > Before the patch: > $ sysctl -w net.ipv4.ping_group_range='0 2147483647' > $ ip link add blue type vrf table 10 > $ ip link add foo type dummy > $ ip link set foo master blue > $ ip link set foo up > $ ip addr add 192.168.1.1/24 dev foo > $ ip addr add 2001::1/64 dev foo > $ ip vrf exec blue ping -c1 -I 192.168.1.1 192.168.1.2 > ping: bind: Cannot assign requested address > $ ip vrf exec blue ping6 -c1 -I 2001::1 2001::2 > ping6: bind icmp socket: Cannot assign requested address > > CC: stable@xxxxxxxxxxxxxxx > Fixes: 1b69c6d0ae90 ("net: Introduce L3 Master device abstraction") > Signed-off-by: Nicolas Dichtel <nicolas.dichtel@xxxxxxxxx> > --- > net/ipv4/ping.c | 12 +++++++++++- > 1 file changed, 11 insertions(+), 1 deletion(-) > Reviewed-by: David Ahern <dsahern@xxxxxxxxxx>