long-ish reply
Option 1 would probably be pretty bad, it'd potentially expose your current IP to everybody who posted a link into the chat.
Option 2 would expose whether you are online and present in a channel. But this is usually public information anyway? Disabling previews when "invisible" (where the chat supports it) should fix that? Am I missing something?
Option 3 would need some kind of sign-up I imagine, and would cost money to maintain. Not very practical for an open source thingy.