After quite a lot of research, we’ve found out that forwarding UDP ports always (and some other NAT/PMP requests sometimes under special circumstances) crashes the NAT/PMP server after the 7.2.1 firmware upgrade. Once it’s crashed, it will never restart, and Lighthouse will no longer be able to communicate with the router. Our workaround prevents Lighthouse from sending UDP port forwarding requests to the affected routers, making sure that the NAT/PMP server won’t crash. Instead, TCP port forwardings will be sent: The affected Airport Extremes seem to forward both the TCP and UDP port when sending a TCP forwarding request, so Lighthouse’s functionality should not be impaired by this workaround.
If you’re running the 7.2.1 firmware on your Airport Extreme, you should reboot your router before upgrading Lighthouse to 1.2.2, since it’s quite possible that the NAT/PMP server has already crashed before and is no longer running. After rebooting your router, Lighthouse 1.2.2 should work fine with the 7.2.1 firmware.
Obviously, this is not a clean workaround, but anything better is not possible due to the nature of the bug Apple introduced in the 7.2.1 firmware. We still recommend using an earlier firmware on your Airport Extreme (see our previous post on how to downgrade) until Apple releases a fix. Once Apple fixes the bug, we will release another update to Lighthouse, in which this workaround will be disabled again.
Please note that if you do not use an 802.11n enabled Airport Extreme base station with the 7.2.1 firmware (read: you’re using a non-Apple router, an “UFO” shaped Airport Extreme or an Airport Express), this workaround does not affect you at all. You won’t notice a difference. If you still want to disable the workaround in your copy of Lighthouse, you can do so by opening a Terminal window (Terminal is in the Utilities subfolder of your Applications folder) and typing the following line, then hitting enter:
defaults write com.codelaide.lighthouse AirportExtreme721Workaround 0
If you want to re-enable the workaround later, just use the same line, but replace the “0″ with a “1″.
Now, we didn’t want to release a new version without throwing in another goody! Lighthouse 1.2.2 implements a feature that many users have asked for: You can now copy either your router’s IP address or your external IP address to the clipboard, enabling you to easily get them into other applications, into emails, instants messages or where ever else you can paste a piece of text.
Of course, you will often want to copy a protocol identifier together with your IP address: If you’re running a web server, you will want the “http://”, if you are running a Secure Shell server, you might want the “ssh://”, and so on. We cannot possibly know which protocols you are using (There are rumors that some people still use “telnet://”, for example). That’s why Lighthouse lets you specify your own protocol identifiers! Just edit them in the preferences, and you can use whichever prefixes are relevant to you!
Other than that, Lighthouse 1.2.2 will now preserve the sort order when editing port mapping profiles (making sure that the profile or port list stays sorted by the column you have selected). Also, we’ve thrown in some minor performance fixes, including a fix for an issue that sometimes (rather rarely) causes a condition in which Lighthouse would “beachball” for a long time.
We’ve also reset the trial period again in order to give unregistered users that have played with an earlier version of Lighthouse another full, 14-day test ride!
While we’re still crossing our fingers that Apple will release a true fix for the buggy NAT/PMP support in 7.2.1 soon, we hope that Lighthouse 1.2.2 will shorten the wait a bit. Oh, and we also hope you like the “Copy IP address” feature, too!
Lighthouse 1.2.2 is available here.
Oh, and by the way, we’ve received a pretty good review from the editor over at Softpedia! Thanks!