Looking at Hadoop source you can see that Hadoop relies on the fact each node has resolvable name.
For example, Hadoop 2 namenode reverse look the up of each node that connects to it. Also, there's no way way to tell a database to advertise an UP as it's address. Setting datanode.network.interface to, say, eth1, would cause Hadoop to reverse lookup UPs on eth1 and advertise the result. Why is that? Using plain IPs is simple to set up, and I can't see a reason not to support them?
