I have studied networking only a little before and the concept of IP addresses is still confusing to me. If I've understood correctly, IP addresses are specific to the network that I'm currently in, that is, if I have a certain IP address, someone else on another network can have the same IP. When my data needs to be passed to a receiver that is on another network, my network routes my data to an entity that can pass my data to the another network (like my router).
Now, when I use my router to connect to the Internet, my router receives an IP address from my ISP that is then used within the network of the ISP to make sure that my data comes to me instead of other clients of my ISP, correct?
So does my data go to my ISP, through some kind of central hub that has its own IP address(es) as part of some bigger network that connects my local ISP network to, say, the American internet provider that hosts whatever service my data is intended to go to?
But there are sites on the Internet that tell me my IP address. Is this IP address the address that I have been given by my ISP? It seems to be something related to my ISP, as the geolocation services can tell my location and the name of my ISP. But I don't understand how this is possible, since I thought that the network of my ISP is part of some larger network, which could be a subnetwork of another, etc.
If somebody could clarify how IP addresses work I would be very grateful. I fear that my question is quite broad, but I don't know how to ask this another way.