* IP地址:用来标识网络中的一个通信实体的地址,通信实体可以是计算机、
* 路由器等,比如互联网的每个服务器都要有自己的IP地址,而每个局域网
* 的计算机要通信也要配置IP地址,路由器是连接两个或多个网络的网络设备。
* 总的来说就是定位节点的:可以是计算机、路由、通讯设备等
*分类:IPV4:32位地址,如:192.168.0.1
* IPV6:128位,因为32位不够用了,如:3ffe:3201:2401:1280:c8ff:fe4d:db39:1984
*特殊IP:127.0.0.1 本机地址
* 192.168.0.0--192.168.255.255私有地址,是非注册地址,专门
* 为组织机构内部使用。
*InetAddress类:不包含端口;没有构造器,有静态方法返回对象。
import java.net.InetAddress;
import java.net.UnknownHostException;
public class TestIp {
public static void main(String[] args) throws UnknownHostException {
//使用getLocalHost方法创建InetAddress对象
InetAddress addr = InetAddress.getLocalHost();
System.out.println(addr.getHostAddress());//本机地址
System.out.println(addr.getHostName());//计算机名
/*
根据域名得到InetAddress对象
因为人对数字不敏感,但是对一些组成符号敏感,于是有人做了
这个DNS,将IP地址转成域名,我们记域名就行了。
*/
addr = InetAddress.getByName("www.baidu.com");
System.out.println(addr.getHostAddress());
System.out.println(addr.getHostName());
//根据IP地址得到InetAddress对象
addr = InetAddress.getByName("14.215.177.39");
System.out.println(addr.getHostAddress());
//输出是IP地址而不是域名,这个地址不存在或者DNS不允许IP地址和域名的映射,我们没权利
System.out.println(addr.getHostName());
}
}
结果:
192.168.0.103
U8ECXRF77HCHF5H
14.215.177.39
www.baidu.com
14.215.177.39
14.215.177.39