USB tethering iPhone 12 Pro (iOS 27 Beta 7) on Beryl AX - pairing succeeds, but DHCP never completes

Hi all,

Been fighting with this for a while now. Trying to USB tether my iPhone 12 Pro (iOS 27 dev beta) to my Beryl AX (GL-MT3000, firmware 4.8.1, OpenWrt 21.02) and it just refuses to hand out an IP. Figured I'd write up everything I've tried so far in case someone's dealt with this or has an idea.

Setup:

  • Router: GL-MT3000 (Beryl AX), firmware 4.8.1 (OpenWrt 21.02.3, kernel 5.4)

  • Phone: iPhone 12 Pro, iOS 27 beta (was on Beta 6, updated to Beta 7 partway through troubleshooting hoping it'd fix it)

What actually works:

  • Pairing goes through fine, idevicepair pair gives me SUCCESS, trust dialog pops on the phone, and I can confirm the trust key is sitting in /var/lib/lockdown.

  • The interface comes up fine too, eth2 shows RUNNING and grabs an IPv6 link-local address no problem.

  • Same phone, same cable, plugged into my Arch Linux laptop instead and it tethers instantly, no setup needed.

  • 5GHz Wi-Fi repeater mode on the Beryl AX to the same phone's hotspot works totally fine, that's what I'm using right now as a workaround.

What doesn't work:

  • udhcpc -i eth2 just sits there sending discover forever and never gets an offer back. No 172.20.10.x address, ever.

  • Doesn't matter if I just paired fresh two seconds ago, same result every time.

Stuff I've tried that changed nothing:

  • Manually killing and restarting usbmuxd.

  • Wiped the tethering interface config and set it back to plain DHCP (MTU 1500, TTL/HL 65), reloaded the network.

  • Turning Personal Hotspot off and on while staying on that settings screen, tried both before and after replugging.

  • Unplugged and replugged the cable a bunch of times with the phone unlocked and sitting on the Hotspot screen.

  • Updated from Beta 6 to Beta 7 mid-troubleshooting hoping Apple quietly fixed it. Nope, same exact behavior.

So basically everything up to the DHCP handshake looks fine (pairing, trust, link state), but the handshake itself just never finishes on the router, even though the exact same phone/cable combo works instantly on a normal Linux kernel and over Wi-Fi.

Anyone on a GL-iNet device found a way around this?

Hi,

Thanks for the detailed testing and information.

Based on your results, the iPhone is paired successfully and the USB network interface is being created correctly, but the DHCP process does not receive an offer from the iPhone.

For reference, you can try the related troubleshooting guide here:

If you have not tested them yet, please check whether Maximise Compatibility is enabled for Personal Hotspot, and try rebooting both the iPhone and the Beryl AX before testing again.

If possible,could you please also test with the OpenWrt 24 firmware for the Beryl AX and check whether udhcpc still only sends DHCP Discover messages without receiving an Offer.

Installing OpenWrt 24 Seems to have fixed it