The US uses Zip codes as we in the UK use post codes. The five-digit codes locate about -- addresses and an extra 4 digits are added to get down to our postcode level.
ZIP code data is fairly freely available, but since they ar updates frequently as the population grows and shifts, serious users need regular updates provided by commercial suppliers.
Some issues with running this on IE6 remain