One address table for many types of addresses
Unless the attributes between the different types are totally different (which I doubt), go for the second option and store the address type in a column of the address table.