JAVA获取本机网卡IP地址

import java.util.Enumeration;
import java.net.*;

public class InetAddressExample {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		try{
			Enumeration interfaceList=NetworkInterface.getNetworkInterfaces();
			if(interfaceList==null){
				System.out.println("--No interface found--");
			}
			else{
				while(interfaceList.hasMoreElements()){
					NetworkInterface iface=interfaceList.nextElement();
					System.out.println("Interface "+iface.getName()+":");
					Enumeration addrList=iface.getInetAddresses();
					if(!addrList.hasMoreElements()){
						System.out.println("\t(No address for this address)");
					}
					while(addrList.hasMoreElements()){
						InetAddress address=addrList.nextElement();
						System.out.print("\tAddress "+((address instanceof InetAddress? "v4"
								:(address instanceof Inet6Address ? "(v6)":"(?)"))));
						System.out.println(":"+address.getHostAddress());
					}
				}
			}
		}
		catch(SocketException e){
			System.out.println("Error getting network interfaces:"+e.getMessage());
			e.printStackTrace();
		}
		
		for(String host:args){
			try{
				System.out.println(host+":");
				InetAddress[] addressList=InetAddress.getAllByName(host);
				for(InetAddress address:addressList){
					System.out.println("\t"+address.getHostName()+"/"+address.getHostAddress());
				}
			}
			catch(UnknownHostException e){
				System.out.println("\tUnable to find address for "+host);
				e.printStackTrace();
			}
		}
	}

}

你可能感兴趣的:(网络与系统管理)