Cách lấy địa chỉ MAC trong Java

Kể từ JDK 1.6, các lập trình viên Java có thể truy cập chi tiết card mạng thông qua lớp NetworkInterface. Trong ví dụ này, chúng ta sẽ sử dụng NetworkInterface để lấy địa chỉ MAC localhost trong Java.

import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.net.UnknownHostException;

public class App{
    
   public static void main(String[] args){
        
    InetAddress ip;
    try {
            
        ip = InetAddress.getLocalHost();
        System.out.println("Current IP address : " + ip.getHostAddress());
        
        NetworkInterface network = NetworkInterface.getByInetAddress(ip);
            
        byte[] mac = network.getHardwareAddress();
            
        System.out.print("Current MAC address : ");
            
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < mac.length; i++) {
            sb.append(String.format("%02X%s", mac[i], (i < mac.length - 1) ? "-" : ""));		
        }
        System.out.println(sb.toString());
            
    } catch (UnknownHostException e) {
        
        e.printStackTrace();
        
    } catch (SocketException e){
            
        e.printStackTrace();
            
    }
        
   }

}

Output

Current IP address : 192.168.1.243
Current MAC address : 8C-85-90-CE-A0-4D
5 1 vote
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x