On Mon, May 16, 2022 at 02:52:29PM +0200, Nicolas Dichtel wrote: > commit e1a7ac6f3ba6e157adcd0ca94d92a401f1943f56 upstream. > > 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> > Reviewed-by: David Ahern <dsahern@xxxxxxxxxx> > Signed-off-by: Jakub Kicinski <kuba@xxxxxxxxxx> > Signed-off-by: Nicolas Dichtel <nicolas.dichtel@xxxxxxxxx> > --- > > The patch applies also on 4.19, 4.14 and 4.9 stable trees, but I didn't test or > compile it on these trees. now all queued up, thanks. greg k-h