Skip to content

Add Docker option to toggle IPv6 - #335

Open
KiwifruitDev wants to merge 2 commits into
pterodactyl:developfrom
KiwifruitDev:kiwifruitdev-ipv6-enable-option
Open

Add Docker option to toggle IPv6 #335
KiwifruitDev wants to merge 2 commits into
pterodactyl:developfrom
KiwifruitDev:kiwifruitdev-ipv6-enable-option

Conversation

@KiwifruitDev

@KiwifruitDev KiwifruitDev commented Jul 25, 2026

Copy link
Copy Markdown

This pull request adds the ability to disable IPv6 through Pterodactyl's config.yml and fixes pterodactyl/panel#5488.

Issue

On Linux kernels with IPv6 disabled (such as through grub using ipv6.disable=0 in GRUB_CMDLINE_LINUX_DEFAULT), there is a fatal issue when Wings creates the pterodactyl0 network interface:

INFO: [Jul 25 08:30:46.065] creating missing pterodactyl0 interface, this could take a few seconds...
FATAL: [Jul 25 08:30:46.088] failed to configure docker environment error=Error response from daemon: Cannot read IPv6 setup for bridge pterodactyl0: open /proc/sys/net/ipv6/conf/pterodactyl0/disable_ipv6: no such file or directory

Which also causes this error in each Pterodactyl server's console under this node:

container@pterodactyl~ Server marked as offline...
[Pterodactyl Daemon]: Updating process configuration files...
[Pterodactyl Daemon]: Ensuring file permissions are set correctly, this could take a few seconds...
container@pterodactyl~ Server marked as starting...
[Pterodactyl Daemon]: Pulling Docker container image, this could take a few minutes to complete...
Pulling from pterodactyl/games
Status: Image is up to date for ghcr.io/pterodactyl/games:source
Digest: sha256:52ff05ae54a1b6658fe0ffd43abde834d9dfe5fbc8a8dcdcf6095563d6cd4583
[Pterodactyl Daemon]: Finished pulling Docker container image
container@pterodactyl~ Server marked as offline...
container@pterodactyl~ Error Event [1f031eb6-c9ac-4bee-81a8-e7d4b1cab8ae]:
environment/docker: failed to start container:
Error response from daemon: failed to set up container networking:
failed to create endpoint a7857565-5d75-4ed9-a232-3f5190497592 on network pterodactyl_nw:
network 3826439b88591bb1e2f2545b705758d7cd585798415f574df748add2c9ba7b37 does not exist
[Pterodactyl Daemon]: ---------- Detected server process in a crashed state! ----------
...

Solution

With this change, the issue can be solved by setting docker.network.interfaces.v6.enabled to false in /etc/pterodactyl/config.yml:

docker:
  network:
    ...
    interfaces:
      ...
      v6:
        ...
        enabled: false

Documentation

For existing users upgrading to a new version containing this change, the pterodactyl0 network interface would already exist on the system. If a user decides to disable IPv6, Docker's network cache would need to be cleared first:

sudo systemctl stop docker
sudo rm -f /var/lib/docker/network/files/local-kv.db
sudo systemctl start docker

Then on next time they run Wings, the network interface will be created with IPv6 disabled.

These steps would need to be added to the Pterodactyl documentation.

Regression testing

By default, the Enabled option is set to true and the previous behavior which caused the issue would continue to happen as before. Existing users would not be affected.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Wings does not start with ipv6 disabled

1 participant