October 2025: TF2 server would not start due to IPv6

Revision as of 13:44, 6 October 2025 by Sirdog (talk | contribs)

Template:Sysop incident header

Narrative

At the request of Dusty The Lion, with Fleff's approval, Sirdog attempted to install Team Fortress 2 as an available server.

During installation, the following output appeared:

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
steam user is not set.
Using anonymous user.
WARNING: setlocale('en_US.UTF-8') failed, using locale: 'C'. International characters may not work.
Redirecting stderr to '/home/container/Steam/logs/stderr.txt'
Logging directory: '/home/container/Steam/logs'
[  0%] Checking for available updates...
[----] Verifying installation...
UpdateUI: skip show logo
Steam Console Client (c) Valve Corporation - version 1759461699
-- type 'quit' to exit --
Loading Steam API...OK

Connecting anonymously to Steam Public...OK
Waiting for client config...OK
Waiting for user info...OK
 Update state (0x3) reconfiguring, progress: 0.00 (0 / 0)
 Update state (0x3) reconfiguring, progress: 0.00 (0 / 0)
 Update state (0x3) reconfiguring, progress: 0.00 (0 / 0)
 Update state (0x3) reconfiguring, progress: 0.00 (0 / 0)
Error! App '232250' state is 0x2 after update job.
Unloading Steam API...OK
container@pterodactyl~ ./srcds_run -game tf -console -port 27034 +map cp_dustbowl +ip 135.148.136.103 -strictportbind -norestart +sv_setsteamaccount [[PLACEHOLDER]]
env: './srcds_run': No such file or directory

Sirdog performed the following troubleshooting steps:

  1. Pings were made to google.com and steamcdn-a.akamaihd.net to verify machine's DNS resolution functioned.   Ping was successful.
  2. Ping to 8.8.8.8 to double check basic outbound connectivity.   Ping was successful.
  3. curl -v performed on steamcdn-a.akamaihd.net to test that a TCP connection can be made to a STEAM content server.   TCP connection was successful.
  4. df -h performed to verify there is sufficient disk space for the dedicated server's installation.   147 gigabytes free on /dev/md3.

Sirdog then ran journalctl -n 60 to view the general system logs for the machine while attempting to start the Team Fortress 2 server. The output of this was presented to Google Gemini to assist Sirdog in reading the output. The AI, having been given the context of previous post mortems, singled out the following line.

Oct 06 17:49:57 ns1009303 kernel: IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready

The AI pointed out this meant that IPv6 was being used by the kernel. Sirdog then reviewed August 2025: SteamCMD servers unresponsive due to IPv6 to find the command to disable IPv6 and executed it with elevated privileges. The Team Fortress 2 server was then able to update and promptly booted in a healthy state.

Takeaways

  • If a SteamCMD server has repeated attempts at Update state (0x3) reconfiguring, progress: 0.00 (0 / 0) or similar, a potential cause may be that IPv6 somehow got enabled again.
  • Execution of sysctl -w does not ensure the configuration remains persistent; the configuration file needs to be edited directly.
  • Troubleshooting step 2 makes no sense if step 1 passed; a DNS resolution inherently means basic outbound connectivity works.