Java Program to Get System IP Address in Windows and Linux Machine

IP Address: An Internet Protocol address is a numerical label assigned to each device connected to a computer network that uses the Internet Protocol for communication.Â
Packages used:
- io (input-output): This package provides for system input and output through data streams, serialization, and the file system.
- net (network): This package provides the classes for implementing networking applications.
- util (utility): It contains the collection framework, legacy collection classes, event model, date and time facilities, internationalization, and miscellaneous utility classes
Methods Used:
1. getInetAddresses()
Syntax:
public Enumeration getInetAddresses()
Return Type: It returns an Enumeration of InetAddress.
2. getInterfaceAddresses()
Syntax:
public List getInterfaceAddresses()
Return Type: It returns a list of java.net.InterfaceAddress instances.
Below is the implementation of the problem statement:
Java
// Java Program to Get System IP Address// in Windows and Linux Machineimport static java.lang.System.out;Â
import java.io.*;import java.net.*;import java.util.*;Â
public class gfg {    public static void main(String args[]) // main method        throws SocketException    {        // fetching network interface        Enumeration<NetworkInterface> nets            = NetworkInterface.getNetworkInterfaces();Â
        for (NetworkInterface netint :             Collections.list(nets))            displayInterfaceInformation(netint);    }Â
    // Display Internet Information method    static void    displayInterfaceInformation(NetworkInterface netint)        throws SocketException    {        out.printf("Display name: %s\n",                   netint.getDisplayName());        out.printf("Name: %s\n", netint.getName());        Enumeration<InetAddress> inetAddresses            = netint.getInetAddresses();        // Output System IP        for (InetAddress inetAddress :             Collections.list(inetAddresses)) {            out.printf("System IP: %s\n", inetAddress);        }        out.printf("\n");    }} |
Output
Display name: eth0 Name: eth0 Display name: lo Name: lo System IP: /127.0.0.1
Output in Windows:Â
Output in Linux:Â
Â




