I wish there was a way to get the users ethernet hardware address.
I'm almost sure there is a way to do this with perl. There is a webpage for students at my college that they must visit first before getting network access.
Once they connect to this page [which is a perl script from what I can tell] and log in with their student id, it assigns them a static IP address based on their hardware address .
This way, if you have a laptop, you can plug in on any ethernet connection on campus and get access [and have a static IP, even though your network settings are set to DHCP].
This would make life a lot easier, but to my knowledge, there is no way to do this with PHP. So, I'll be setting cookies that expire in 5 years :\