]> git.ipfire.org Git - thirdparty/systemd.git/commit
sysctl: Enable ping(8) inside rootless Podman containers
authorDebarshi Ray <debarshir@gnome.org>
Mon, 22 Jul 2019 19:30:25 +0000 (21:30 +0200)
committerLennart Poettering <lennart@poettering.net>
Wed, 24 Jul 2019 14:41:45 +0000 (16:41 +0200)
commit90ce7627dfe824ff6e7c0ca5f96350fbcfec7118
treef4f7e5bd10466d2cf6764fe6dbfed67ec2e8a30c
parent181824e32c87934cea8130cb5652a6a2ded842a2
sysctl: Enable ping(8) inside rootless Podman containers

This makes ping(8) work without CAP_NET_ADMIN and CAP_NET_RAW because
those aren't effective inside rootless Podman containers.

It's quite useful when using OSTree based operating systems like Fedora
Silverblue, where development environments are often set up using
rootless Podman containers with helpers like Toolbox [1]. Not having
a basic network utility like ping(8) work inside the development
environment can be inconvenient.

See:
https://lwn.net/Articles/422330/
http://man7.org/linux/man-pages/man7/icmp.7.html
https://github.com/containers/libpod/issues/1550

The upper limit of the range of group identifiers is set to 2147483647,
which is 2^31-1. Values greater than that get rejected by the kernel
because of this definition in linux/include/net/ping.h:
  #define GID_T_MAX (((gid_t)~0U) >> 1)

That's not so bad because values between 2^31 and 2^32-1 are reserved
on systemd-based systems anyway [2].

[1] https://github.com/debarshiray/toolbox
[2] https://systemd.io/UIDS-GIDS.html#summary
NEWS
sysctl.d/50-default.conf