Clean up your database
Take the time to go through your email database and check that the emails have been entered correctly and that there are no typos or incorrect domains.
Update customers' details
Prompt customers to update their details or to confirm that the details you have are still current. For example when you take an order get the customer to confirm their email. If you can see that customers have bad emails and you have other contact details from them call them to request the correct information.
Check spam lists
You should regularly check spam databases and blacklists to make sure your email provider has not been added to the list. You should also take steps to make sure your emails do not end up being filtered into spam box.
Remember: If you have been added to a blacklist or if your email goes straight to a spam filter you will not receive a bounce message.
And as a Last Resort....
If you keep getting bounces with certain email addresses delete them from your database. You are not achieving anything by having these emails on your subscription list.
Confirm email addresses
Send a confirmation email when they register to confirm that the email has been entered correctly. If you are getting bounces contact them. Consider asking for a secondary email address when they register in case the first address starts to bounce.
Monitor delivery rates
Track the bounce rates of the major domains such as Gmail and Hotmail. If there appears to be a large difference in the number of bounces with one particular domain you could have been added to a blacklist or spam filter.
Test emails yourself
You should always do a test send of the email before sending it out to your subscribers. In regards to preventing bounces you should create a test list that includes emails from all the major email servers that your subscribers use to ensure that they are being sent correctly to the major servers.