What are the best ways of stopping flooding/spamming in a forum by people who use alternate accounts?

Are there any ways of banning someone permanently on a forum, other than banning their IP, MAC address, etc...?

I have a problem with flooding/spamming on my forum, and I can't ban this person because his IP keeps changing, and he can change his MAC address within minutes. I don't want to ban an entire domain or ISP, cause it will cause others from accessing the forum.

Unfortunately I don't know of a way around proxy servers. Do you requite email confirmation for newly registered members? If you have someone's email and their IP address, you may be able to get their ISP to take action if they are being abusive.

Actually, I was wondering if there is anyway to maybe restrict the forum to users NOT using a proxy server, or a way to stop IP spoofing, and flooding.

Not that I know of. Of course you can detect the IP address and resolve the hostname of your visitors on the fly (although it might slow down page loading times) but I don't think it would be possible to foolproof detect whether that hostname is a proxy or not??