Este applet traduce un hostname a una dirección ip. Por ejemplo resuelve www.tudominio.com a 127.0.0.1, suponiendo que esa sea la IP a la que apunta ese dominio.
Lookup.java
import java.awt.*;
import java.net.*;
/*
* la clase de la aplicación
*/
public class Lookup extends Frame {
/*
* campo de texto para el nombre del host
*/
TextField nameField;
/*
* campo de texto para visualizar el nombre de la dirección de internet
*/
TextArea addrArea;
/*
* instancia de InetAddress necesaria para la conversión de nombre a dirección
*/
InetAddress inetAddr;
/*
* punto de inserción en el área de texto de la dirección de internet
*/
int insertIndex;
/*
* el constructor crea la interface de usuario
*/
public Lookup () {
super ("Lookup");
setLayout (new BorderLayout ());
Panel editPanel = new Panel ();
editPanel.setLayout (new BorderLayout ());
editPanel.add ("North", new Label ("Nombre del host"));
nameField = new TextField ("", 32);
editPanel.add ("Center", nameField);
add ("North", editPanel);
Panel areaPanel = new Panel ();
areaPanel.setLayout (new BorderLayout ());
addrArea = new TextArea ("", 24, 32);
addrArea.setEditable (false);
areaPanel.add ("North", new Label ("dirección de Internet"));
areaPanel.add ("Center", addrArea);
add ("Center", areaPanel);
insertIndex = 0;
resize (300, 200);
show ();
}
/**
* manipulación de evento de teclado (tecla retorno)
* traducción de nombre a dirección e imprime en el área de texto
* @param evt – evento
* @param arg – objeto que recibe el evento
*/
public boolean action (Event evt, Object arg) {
if (evt.target.equals (nameField)) {
String name = nameField.getText ();
try {
inetAddr = InetAddress.getByName (name);
String str = inetAddr.toString () + "n";
addrArea.insertText (str, insertIndex);
insertIndex += str.length ();
} catch (UnknownHostException ex) {
String str = name + "/ No es un hostn";
addrArea.insertText (str, insertIndex);
insertIndex += str.length ();
}
return true;
}
return false;
}
/**
* punto de entrada de la aplicación
* @param args – argumento de la línea de mandatos
*/
public static void main (String args[])
{
new Lookup ();
}
}
La parte más importante es el método action, dónde se utiliza el objeto inetAddr para realizar la traducción.
Alejandro Gassmann
http://www.gamarod.com.ar/…host_a_direcciones_de_internet.asp