I originally wrote IPvFoo for Chrome in 2011, to observe whether websites are served using IPv4 or IPv6:
https://github.com/pmarks-net/ipvfoo/
In 2017, Firefox added initial WebExtensions support, so I dropped the extension on addons.mozilla.org, technically functional but full of bugs, and hoped for the best.
This week, I finally sat down with Firefox and ironed out all the problems:
- Added a separate
manifest.json
that uses “scripts”, as Firefox Manifest V3 doesn’t support “service_worker” - Added a button to grant webRequest permissions, as Firefox Manifest V3 doesn’t do this automatically
- Hacked the popup dialog to avoid unnecessary scrollbars
- Added an in-RAM hostname-to-IP cache, as Firefox doesn’t remember the IP address of cached requests
- Examined
details.documentUrl
when handling requests from a Service Worker, as Firefox doesn’t usedetails.initiator
I’m pretty sure that covers everything, so IPvFoo now provides an equivalent user experience on Chrome and Firefox. Enjoy!
Update: IPvFoo is now working on Firefox Nightly 120 for Android.