@zarje:
IPv6 is kinda strange in some ways compared to IPv4 but thanks for helping me solve this!
Is it that IPv6 is kind of strange compared to IPv4, or that IPv4 made us think of things in a strange way? ;)
In a LOT of ways, IPv6 makes much more sense to me than IPv4. You have an interface. It has it's own address in the world. Nothing else has that address. It's kind of like your physical home mailing address.
Compare that to IPv4 and "192.168.1.1". I bet there are more interfaces in the world with that single address than there are unique IPv4 numbers. That would be like trying to send something via the ground postal service addressed to only "over there."
In my opinion, IPv4 required so many hacks (and they are hacks) to make things work how we want, that we've grown accustomed to those hacks, and now we try to apply those same ideas to IPv6 where they aren't needed (and don't work.)
I still believe that a proper daemon with kernel hooks could monitor ICMPv6 to watch for the MAC addresses of devices that announce usage of an IPv6 address (via ICMPv6 NDP NA and NS messages) and somehow use that information along with ARP and reverse DNS lookups to find the hostname of every used IPv6 on a local network.
In fact, I had written something like that (and injected the information into unbound's config files) but it wasn't a daemon that monitored ICMPv6, but instead just ran every 30 minutes or so. In that time, many IPv6 addresses would expire from the NDP table, or the IPv6 would expire very quickly after I logged it (but before the process ran again to clean up the data.) I'll admit that I had a few other bugs, but because of the above issues, I abandoned my effort. It was a fun exercise and I proved to myself that it was feasible.
As others pointed out to me, even if I had perfected the program, it STILL would suffer from some flaws due to some devices apparently randomizing their MAC addresses! (I haven't seen that in my home or work, but I believe others who say it's done.) It also couldn't ever recognize an IPv6 address if it never sees the address to begin with. (Of course, if it never sees the address, then there isn't any traffic using the address, so it really doesn't matter.)
Oh, and even with the above program, assuming it was working PERFECTLY, you'd still be experiencing the same problem (because pfsense refreshes it's alias tables on a schedule… so it might take quite a bit of time before it'd notice a new ipv6 address associates with a given hostname.)
However, ALL that being said... pfsense is still one of the better router/firewall/UTM type programs for dealing with IPv6. Most others either completely ignore that IPv6 exists, or they have barely half-baked hacks that kind of support very specific cases of IPv6 (such as only supporting static IPv6 /128 addresses)
(Can you tell that I'm passionate about this subject? ;))
Take care
Gary