Traducir nombres de host a direcciones de Internet

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

Leave A Comment?