code: private static InetAddress[] getAllLocalInetAddresses(final Log log) 
      throws SocketException {
  
          final List addresses = new ArrayList();
          
          // get the network adapters
          final Enumeration netInterfaces = NetworkInterface.getNetworkInterfaces();
          while (netInterfaces.hasMoreElements()) {
              final NetworkInterface ni = (NetworkInterface)netInterfaces.nextElement();
              if (log != null) {
                  log.debug("Found interface: " + ni.getName());
              }
              
              // get the IPs for this network interface
              final Enumeration ips = ni.getInetAddresses();
              while (ips.hasMoreElements()) {
                  final InetAddress ip = (InetAddress)ips.nextElement();
                  if (log != null) {
                      log.debug("Found ip: " + ip.getHostName() + "/" 
                          + ip.getHostAddress() + " on interface: " + ni.getName());
                  }
  
                  // ignore the local loopback address: 127.0.0.1
                  if (!ip.isLoopbackAddress()) {
                      if (log != null) {
                          log.debug("Let's add this IP: " + ip.getCanonicalHostName());
                      }
                      addresses.add(ip);
                  }
              }
          }
          
          return (InetAddress[])addresses.toArray(new InetAddress[addresses.size()]);
      }
docs: calling getHostName returns the IP.  how do we get the host?