Digging into some of the other threads and stuff online, I found out that the reason Openfire doesn’t handle IPv6 properly has to do with the way Java has handled IPv4 & IPv6 on the newer versions of Windows. Java 1.5 & 1.6 supports the separate IPv6 stack in Windows XP, but 2003 has better integration (you can even host SMB file transfers from Vista and Samba 3.2 clients), and Vista / 2008 uses an integrated dual-stack. The fix for the dual-stack is in Java 1.7, which is still in development. The Openfire service runs in 32-bit mode, so you’ll need the latest 32-bit version of JDK 1.7 installed; on my Server 2008 x64, I have 32-bit 1.6, and both x64 and 32-bit 1.7 (12-19-2008 build) loaded, with the path for the x64 1.7 binaries in my PATH, but you shouldn’t need all 3.
You can install the latest JDK 1.7 from Java.net. I want people to post back on which platforms this works on.