You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
unshare-net fails on gvisor due to failing loopback setup #745
The existence of a lo interface with address 127.0.0.1 and/or ::1 is "part of the API", and a lot of otherwise-non-networked software won't work correctly without it; it's the same reasoning as why unshare-based Debian buildds provide lo.
Perhaps it would be OK to make loopback_setup() failure non-fatal in the --unshare-net case?
Reproduced with bubblewrap 0.12.0 under runsc release-20260914.0 using:
bwrap --ro-bind / / --unshare-net /bin/true
The fresh network namespace already has lo up at 127.0.0.1/8. The exclusive RTM_NEWADDR gets NLMSG_ERROR -EEXIST; the printed errno can be stale.
Proposed fix: #821. It skips setup only after verifying the exact required loopback state inside the newly created namespace. Query failures and mismatches keep the original setup and fatal errors.
The source fix backported to 0.12.0 passed four existing integration checks and six additional profile/loopback checks under that gVisor version as UID/GID 1000 with zero capabilities and NoNewPrivs=1. The PR also adds 13 unit regression cases on current main. The full local Meson run passes both unit programs; five namespace integration programs skip in the ordinary Docker build environment, as documented in the PR.
Activity
smcv commentedon Apr 27, 2026
The existence of a
lointerface with address 127.0.0.1 and/or ::1 is "part of the API", and a lot of otherwise-non-networked software won't work correctly without it; it's the same reasoning as whyunshare-based Debian buildds providelo.Perhaps it would be OK to make
loopback_setup()failure non-fatal in the--unshare-netcase?norbusan commentedon Apr 28, 2026
Either that, or a cmd line option to enable/disable loopback setup would be great.
Thanks for your consideration.
enyonee commentedon Oct 19, 2026
Reproduced with bubblewrap 0.12.0 under
runsc release-20260914.0using:The fresh network namespace already has
loup at127.0.0.1/8. The exclusiveRTM_NEWADDRgetsNLMSG_ERROR -EEXIST; the printed errno can be stale.Proposed fix: #821. It skips setup only after verifying the exact required loopback state inside the newly created namespace. Query failures and mismatches keep the original setup and fatal errors.
The source fix backported to 0.12.0 passed four existing integration checks and six additional profile/loopback checks under that gVisor version as UID/GID 1000 with zero capabilities and
NoNewPrivs=1. The PR also adds 13 unit regression cases on current main. The full local Meson run passes both unit programs; five namespace integration programs skip in the ordinary Docker build environment, as documented in the PR.