code: public Hop resolveAddress(Hop hop) {
  		String hopHost = hop.getHost();
  		int hopPort = hop.getPort();
  		String hopTransport = hop.getTransport();	
  		
  		if(logger.isDebugEnabled()) {
  			logger.debug("Resolving " + hopHost + " transport " + hopTransport);
  		}
  		// As per rfc3263 Section 4.2 
  		// If TARGET is a numeric IP address, the client uses that address.  If
  		// the URI also contains a port, it uses that port.  If no port is
  		// specified, it uses the default port for the particular transport
  		// protocol.numeric IP address, no DNS lookup to be done
  		if(Inet6Util.isValidIP6Address(hopHost) 
  				|| Inet6Util.isValidIPV4Address(hopHost)) {
  			if(logger.isDebugEnabled()) {
  				logger.debug("host " + hopHost + " is a numeric IP address, " +
  						"no DNS SRV lookup to be done, using the hop given in param");
  			}
  			return hop;
  		} 
  		
  		// if the host belong to the container, it tries to resolve the ip address		
  		if(sipApplicationDispatcher.findHostNames().contains(hopHost)) {
  			try {
  				InetAddress ipAddress = InetAddress.getByName(hopHost);
  				return new HopImpl(ipAddress.getHostAddress(), hopPort, hopTransport);
  			} catch (UnknownHostException e) {
  				logger.warn(hopHost + " belonging to the container cannoit be resolved");
  			}			
  		}
  				
  		// As per rfc3263 Section 4.2
  		// If the TARGET was not a numeric IP address, and no port was present
  		// in the URI, the client performs an SRV query
  		return resolveHostByDnsSrvLookup(hop);
  		
  	}
docs: /*
  (non-Javadoc)
  @see gov.nist.core.net.AddressResolver#resolveAddress(javax.sip.address.Hop)