As an admin, viewing posts, users ip addresses should show to the left of the posting when you have the "CP -> Display Options -> General -> Primary Tab -> Topic Display Options Dropdown -:> IP Address Visibility" option enabled.
As for who registered from an IP, you can go to "CP -> Membership -> Member management -> View/Edit Members tab -> Advanced Search Options dropdown -> Last Post IP option"
2/3/4 don't exist, you'd have to craft a custom mysql query for each. Additionally threads has no way of monitoring pm's (although I've made numerous sugguestions to have a way for uwers to report abuse in pm's, it's been overlooked).
I'm hoping for some sort of "report spam" and/or "report abuse" option for PM's in the future, as it allows users to report spam and abuse to the admin; i'm quite suprised that something liek this isn't in the codebase, but everyone tends to whine "privacy" (eventhough the admin can do a one click "become this user")