OK, this is how it works.
An IP address consists of four numbers, between 0 and 255, separated by periods. It works like a phone number, that is it becomes more specific from left to right. For this same reason, IP addresses must be unique.
The range doesn't actually give that many addresses, so ICANN (Internet Corporation for Assigned Names and Numbers) controls the assignation of IP addresses to organisations like ISPs, governments, schools and companies.
Your ISP will maintain a list of addresses that it owns. It may have a Class B address, which would enable it to have 255x255 clients connected at any one time. Address classes come from the addresses being divided as A.B.C.D. So a Class B address might be 137.221.X.Y, where any number between 0 and 255 in the X and Y space is free.
There are two class C address ranges which are known to be public, and anyone who has a Linksys router, or who has used Windows 2000/XP's autoconfiguration routines will have seen one of them. They are 10.0.0.x and 192.168.1.x. These addresses are strictly private, and no machines in this address space should be directly connected to the internet.
This brings us to another important concept: that of public and private addressing.
As Race Idiot has noted, web sites do not always correctly identify your machine's IP address. If you are behind a firewall, your firewall should be doing Network Address Translation. Linksys routers do this for you as well.
Basically, multiple machines connect to the internet on a single IP address. I'm at work at the moment, so I'll be advertising 193.73.183.34 as my IP address, even though my machine's address is somewhere in the 192.32.64.x range. This allows some degree of privacy, and also means that we can hook 2,000 machines to the internet on one IP address.
If you have a Linksys router, you can see all of this in your admin page. It will give you an IP address of 192.168.1.x (usually starting at 100 for the first machine, and going up), and it will negotiate an address from your ISP. If you go to a web site that tells you your address, it should report the one that your ISP has given your router, not the 192.168 address.
The last thing you should know about is the gateway and subnet mask.
The gateway is the address of the device that handles communication between devices on your LAN and devices not on your LAN. Such devices are called Routers, because they route traffic between LANs. The Subnet Mask tells your machine about the address space on your LAN. So, if you have two sites, connected by a fixed network link, you may have all the machines on site 1 as 192.32.1.x, and all the machines on site 2 as 192.32.2.x. Your subnet mask is 255.255.255.0, because you want to say that there are no restrictions on the D class addresses, but that C and higher addresses are on a separate network. In this way any request for an address other than 192.32.1.x is handled by the router.
A lot of you have already noticed that your IP address changes. This is due to you being assigned an address when you connect to the network. This is handled by a DHCP (Dynamic Host Configuration Protocol) server, which assigns addresses to machines from a pool. Race Idiot's location-proximity theory is half-correct, since ISPs will use DHCP servers at local network nodes. However, there is evidence that suggests that network cards develop an affinity with certain addresses, leading you to get the same address on a number of consecutive leases.
That's about it for IP addressing at the moment. Of course, when IP2.0 comes out, which uses much bigger addresses, then it will all change.