A weird macOS bug is blocking new network connections after 49 days of uptime

DragonSlayer101

Posts: 991   +14
Staff
Facepalm: Apple's macOS appears to be affected by a kernel-level bug that blocks new network connections if a device remains continuously operational for 49 days. Apple has not yet released an official fix, but restarting the affected device temporarily resolves the issue, allowing users to reconnect to any network. However, the workaround only lasts another 49 days before the bug reoccurs.

The issue is reportedly caused by a 32-bit integer overflow in the macOS XNU kernel and is linked to how the system uses a TCP/IP variable to track TCP timestamps in milliseconds since the system booted.

Researchers at Photon explained that a 32-bit integer can hold a maximum value of 4,294,967,295. Because macOS measures timestamps in milliseconds, this limit is reached after 49 days, 17 hours, 2 minutes, and 47.296 seconds of continuous operation.

Once the TCP/IP integer reaches its maximum value, the counter rolls over to zero as expected. However, the monotonicity guard – designed to prevent overflow – also blocks the internal clock from restarting at zero, effectively freezing the TCP timestamp clock. This prevents the system from cleaning up old TIME_WAIT connections, allowing dead connections to remain open indefinitely, consuming all available ephemeral ports and causing the TCP/IP stack to block all new connections.

With all new TCP connections blocked, users are unable to open new websites or start video calls. Existing connections continue to work normally because they already have assigned ports. ICMP (ping) also functions, since it does not use TCP ports or the TCP timer subsystem. Interestingly, the fact that ping requests and existing TCP connections continued working confused researchers and made diagnosing the problem more difficult.

As with many issues in modern operating systems, this TCP/IP bug temporarily disappears after a reboot, but returns if the device remains powered on for another 49 days. No official fix is currently available, though Apple is expected to release a patch to address the problem. In the meantime, the Photon research team says they are developing a workaround that mitigates the issue without requiring a restart.

Permalink to story:

 
This 49-day problem reminds me of the memory build-up problem with the LG Extravert cell phone. I worked for a call center that was providing customer service for Verizon pre-paid cellphone customers, and the customers were calling in because their LG Extravert phones were running out of memory and could then only be used as a phone to make and recieve calls. LG put out a fake solution that wiped editable memory, but the phone would still run out of memory with progressivley less editable memory to erase after each use of the fake solution. Eventually, the phone could only be used as a phone. Walmart altered their return policy timeline for the phone, and the customer would be offered the fake LG memory solution and thus get strung along until the warranty period passed. LG and Verizon did nothing to make it right. To this day, I avoid LG products. (I broke my rule when I bought an LG external DVD player that was Windows only, and I promptly paid the price when I tried to run it on Ubuntu: one of my laptop USB ports went dead.)

We CSR's (Customer Service Representatives) started calling the phone the "LG Excrement." When customers called me about the phone, I would give them a $100 credit (which was about the cost of the phone), and I would advise them to go buy a different phone. I would take the time to explain the problems with the phone in detail. I expected to get fired, but it never happened until I was again honest while providing customer service for Direct Energy's Texas customers. It was a great job to lose.
 
Back