Requisito previo: InetAddress
getByName() : Devuelve la InetAddress del host dado. Si el host es una dirección IP literal, solo se comprueba su validez. Obtiene la dirección IP pública del host especificado. Toma el host como argumento y devuelve la dirección IP correspondiente.
Ejemplos:
Input : www.google.com Output : 216.58.199.164 Input : localhost Output : 127.0.0.1
Los siguientes programas ilustran cómo obtener direcciones IP públicas:
Nota: estos programas no se ejecutarán en compiladores en línea. En su lugar, use compiladores fuera de línea como Netbeans, Eclipse, etc.
Programa 1: Obtener la dirección IP de cualquier URL
Java
// Java program to demonstrate // how to fetch public IP Address import java.net.*; import java.*; class GFG { public static void main(String args[]) throws UnknownHostException { // The URL for which IP address needs to be fetched String s = "https:// www.google.com/"; try { // Fetch IP address by getByName() InetAddress ip = InetAddress.getByName(new URL(s) .getHost()); // Print the IP address System.out.println("Public IP Address of: " + ip); } catch (MalformedURLException e) { // It means the URL is invalid System.out.println("Invalid URL"); } } }
Producción:
Public IP Address of: www.google.com/216.58.196.164
Programa 2: Obtener la dirección IP pública de su sistema
Para encontrar la IP pública, utilice http://bot.whatismyipaddress.com . Es una utilidad en línea, para encontrar la IP pública del sistema. Abra la URL, lea una línea e imprima la línea.
Java
// Java program to demonstrate // how to fetch public IP Address import java.net.*; import java.*; class GFG { public static void main(String args[]) throws UnknownHostException { String systemipaddress = ""; try { URL url_name = new URL("http://bot.whatismyipaddress.com"); BufferedReader sc = new BufferedReader( new InputStreamReader(url_name.openStream())); // reads system IPAddress systemipaddress = sc.readLine().trim(); } catch (Exception e) { systemipaddress = "Cannot Execute Properly"; } // Print IP address System.out.println("Public IP Address: " + systemipaddress + "\n"); } }
Producción:
Public IP Address: 103.62.239.242
Publicación traducida automáticamente
Artículo escrito por bilal-hungund y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA