Sending bitcoins to an IP address was a convenient way of sending bitcoins to a Bitcoin address along with additional information.
- You contact the IP address to find out if they're actually running Bitcoin and accepting IP transactions. If not, no transaction occurs.
- Your additional information ("from", "message", etc.) is exchanged with the server.
- The server generates a brand new Bitcoin address and sends it to you.
- You send coins to this address in the normal way
Unfortunately, the implementation provided no authentication, so any "man in the middle" could have intercepted your bitcoins during the transaction. When they see that you're sending a Bitcoin payment by IP address, they pretend to be the actual destination and send back their Bitcoin address. You end up sending bitcoins to the wrong person. It's therefore no longer a good idea to send bitcoins in this way, especially if you're using a proxy.
This feature has been removed from Bitcoin Core as-of v0.8.0 (2.1)