It just occurred to me that ICANN, the private not-for-profit company that assigns web addresses, made exactly the same mistake. A domain name like 'marijuana.com' can sell for millions of dollars. And yet ICANN gave out all of these names for free to anyone who registered them in the early days of the Internet.
The existence of 'aftermarket' domain name auctions makes the allocation efficient: the names go to whoever pays the most. The issue of who gets the money is usually considered irrelevant in economic analysis; it is just a transfer payment from one person that leaves society as a whole. However, there are transactions costs and wasted resources involved here. People spend time and effort making these deals that could have been spent on more useful things.
If the Internet ever gets replaced or reconfigured so that a new system of names is set up, the people responsible for assigning names will probably do the smart thing and auction them off. This would be more efficient, and would give the money to the people who actually run the system rather than random speculators.
There are a lot of other organizations that could raise money in similar ways. For example, campus IT departments could probably raise a decent amount of cash by auctioning off the rights to email addresses like 'firstname.lastname@example.org' for a five-year period. Any new email or blogging system with free registration usually has all the good names taken very quickly, while getting nothing for them. A lot of otherwise smart organizations are leaving a lot of money on the table because of their failure to properly price valuable assets.