Get the workstation name or IP

public class NetInfo {
 public static void main(String[] args) {
    new NetInfo().say();
    }

 public void say() {
   try {
   java.net.InetAddress i = java.net.InetAddress.getLocalHost();
   System.out.println(i);                  // name and IP address
   System.out.println(i.getHostName());    // name
   System.out.println(i.getHostAddress()); // IP address only
   }
   catch(Exception e){e.printStackTrace();}
 }
}

The output:

> java NetInfo
realone/209.142.72.112
realone
209.142.72.112

To list all the interfaces available on a workstation:

import java.net.*;
import java.util.*;
import java.io.*;
import java.nio.*;

public class IPAdress {
 public void  getInterfaces (){
      try {
         Enumeration e = NetworkInterface.getNetworkInterfaces();

         while(e.hasMoreElements()) {
            NetworkInterface ni = (NetworkInterface) e.nextElement();
            System.out.println("Net interface: "+ni.getName());

            Enumeration e2 = ni.getInetAddresses();

            while (e2.hasMoreElements()){
               InetAddress ip = (InetAddress) e2.nextElement();
               System.out.println("IP address: "+ ip.toString());
            }
         }
      }
      catch (Exception e) {
         e.printStackTrace();
      }
   }

   public static void main(String[] args) {
    IPAdress ip = new IPAdress();
    ip.getInterfaces();
   }
}

The output:

> java IPAdress
Net interface: lo
IP address: /127.0.0.1
Net interface: eth0
IP address: /194.168.0.1
Net interface: eth1
IP address: /164.254.147.20
Net interface: ppp0
IP address: /64.68.115.69

Windows

A “low-tech” way to get the computer name (can be useful if there is no network card) is to use the environment variable COMPUTERNAME (at least on modern Windows installation).

[JDK1.4 or less] Pass it to your JVM as java -Dcomputername=”%COMPUTERNAME%” … and then get the value with System.getProperty(“computername”)

[JDK1.5 or more] You can extract environment variables directly with System.getenv(“COMPUTERNAME”)

Done! Happy coding!

Related posts:

HttpClient 4 Cookbook
Java Program to Implement Shoelace Algorithm
Java Program to Find the Number of Ways to Write a Number as the Sum of Numbers Smaller than Itself
Simple Single Sign-On with Spring Security OAuth2
Error Handling for REST with Spring
Java Program to Perform Insertion in a BST
Spring Boot - Admin Client
Java Program to Implement Shell Sort
Spring WebClient and OAuth2 Support
How to Round a Number to N Decimal Places in Java
Các chương trình minh họa sử dụng Cấu trúc điều khiển trong Java
Quick Intro to Spring Cloud Configuration
Java Program to Solve Knapsack Problem Using Dynamic Programming
Serialize Only Fields that meet a Custom Criteria with Jackson
A Guide to Queries in Spring Data MongoDB
Convert Time to Milliseconds in Java
Converting Between Byte Arrays and Hexadecimal Strings in Java
Java 8 – Powerful Comparison with Lambdas
Java Program to Implement Gift Wrapping Algorithm in Two Dimensions
Java List UnsupportedOperationException
How to Remove the Last Character of a String?
Java Program to Implement Kosaraju Algorithm
Java Program to Implement Adjacency List
Một số ký tự đặc biệt trong Java
Java Program to Check whether Directed Graph is Connected using DFS
Java Program to Implement Expression Tree
Auditing with JPA, Hibernate, and Spring Data JPA
Spring Boot Annotations
Java Program to Implement Park-Miller Random Number Generation Algorithm
Spring Security Registration – Resend Verification Email
Java 8 Stream API Analogies in Kotlin
Running Spring Boot Applications With Minikube