No way to know for certain. Some guesses could be made, but there is no way to be sure if the guesses are accurate.
If you create a system that connects to enough peers, AND you can convince the owner of the address to send multiple transactions over a few days, AND the first peer to forward the transaction to you always comes from the same IP, then you've got an indication that the user
might be at that IP. On the other hand, they might just be blocking incoming connections and have specifically chosen that peer as the only one they connect to.
On the other hand, I see that they received payments from CoinBox.me on 2014-02-24 at 13:55:52 UTC and BitChest.me on 2014-06-20 at 15:14:16 UTC. Perhaps CoinBox.me keeps IP logs? If you work for the governement wherever CoinBox.me is operating, you might be able to gain access to their connection logs and figure out who connect and used that address.
There are other ways to leak your IP address as well, but there is no reliable record in a bitcoin transaction or the blockchain of what IP a transaction is first transmitted from.
Ah, thanks for the reply.
So is the original quote right or wrong then? Would I2P implementation prevent the first scenario from happening and would an IP solution strengthen blockchain anonymity?
(Your second scenario was what I pretty much thought as well. Since Bitcoin is pseudonymous, it is still possible to find the IP address of a particular Bitcoin address by checking to see if any exchanges and services had sent or received bitcoins to/from that address and asking them directly. But I guess that's pretty obvious.)