使用java获取本机和网站ip地址

public static void main(String[] args)
	{
		// Get the network interfaces and associated addresses for this host
		try
		{
//获取本机所有网络接口的列表
			Enumeration<NetworkInterface> interfaceList = NetworkInterface.getNetworkInterfaces();
			if (interfaceList == null)
			{
				System.out.println("--No interfaces found--");
			} else
			{
				while (interfaceList.hasMoreElements())
				{
					NetworkInterface iface = interfaceList.nextElement();
//接口名称
					System.out.println("Interface " + iface.getName() + ":");
					Enumeration<InetAddress> addrList = iface.getInetAddresses();
					if (!addrList.hasMoreElements())
					{
						System.out.println("\t(No addresses for this interface)");
					}
					while (addrList.hasMoreElements())
					{
						InetAddress address = addrList.nextElement();
						System.out.print("\tAddress "
								+ ((address instanceof Inet4Address ? "(v4)" : (address instanceof Inet6Address ? "(v6)" : "(?)"))));
//ip地址
						System.out.println(": " + address.getHostAddress());
					}
				}
			}
		} catch (SocketException se)
		{
			System.out.println("Error getting network interfaces:" + se.getMessage());
		}

		// Get name(s)/address(es) of hosts given on command line
		for (String host : args)
		{
			try
			{
				System.out.println(host + ":");
				InetAddress[] addressList = InetAddress.getAllByName(host);
				for (InetAddress address : addressList)
				{
//输出该网站的所有ip地址
//其功能和nslookup www.xxx.com功能相似
					System.out.println("\t" + address.getHostName() + "/" + address.getHostAddress());
				}
			} catch (UnknownHostException e)
			{
				System.out.println("\tUnable to find address for " + host);
			}
		}

	}

请把上述代码保存为.java文件,使用javac编译后(如:javac aa.java),在使用java aa运行,请在java aa后面添加想要查看ip的网址(如:java aa www.baidu.com)

猜你喜欢

转载自wonka438.iteye.com/blog/1279115
今日推荐