Sorry for that question, but please I would like to understand why should I have IP addresses as I can only communicate using the public address
Sorry again but really I am confused
In order to create a new Bitcoin transaction, all you will need is the receiver's public Bitcoin address (and your bitcoin wallet).
The transaction must eventually be broadcast to the network, though this can be done in a variety of ways. See https://en.bitcoin.it/wiki/Network for more details.