要求和目的
深入理解java InetAddress类的基本用法,并且可以掌握Java程序的编写和调试。
实验环境
Java语言,PC平台
实验具体内容
设计和编写以下程序:
程序1:
1)编写可以获得本机地址的Java程序,然后运行观察结果。
2)查看www.szu.edu.cn的地址,并且测试其可达性。
程序2:
编写一个程序,利用InetAddress类实现主机域名和IP的相互查找。
例如:输入域名,得出所有对应的IP地址。
输入IP地址,输出对应的域名地址。
实验方法及步骤
程序一
- 编写可以获得本机地址的Java程序,然后运行观察结果。
通过getLocalHost方法可获得本机域名解析的结果,在调用getHostAddress方法便可获得本机正在使用的IP地址
要想获得本机所有的IP地址(包含网卡),我使用了创建类型为networkInterface的枚举实例对象,将所有解析的地址保存,在进行逐个的解析输出
2)查看www.szu.edu.cn的地址,并且测试其可达性。
首先对域名进行解析,输出对应信息以及IP信息
对解析的关于www.szu.edu.cn的InetAddress对象进行可达性测试,通过方法isReachable实现,其中我设置的可达延时为100ms
对解析的关于www.szu.edu.cn的InetAddress对象进行可达性测试,通过方法isReachable实现,其中我设置的可达延时为100ms
程序二
编写一个程序,利用InetAddress类实现主机域名和IP的相互查找。
1). 输入域名,得出所有对应的IP地址。
本题要求在输入一个域名后,得出所有对应的IP地址,则可通过getAllByName方法实现,并用一个InetAddress的对象进行接收
随后,循环输出其通过方法getHostAddress再次解析输出ip地址即可
2). 输入IP地址,输出对应的域名地址。
键入一个IP地址,首先通过getByName获得对应的InetAddress对象,在调用其的getCanonicalHostname方法即可获得域名,输出即可
实验结果及分析
程序一:
本机地址
本机全部IP地址
可达性测试www.szu.edu.cn
可见返回为true,说明可达
程序二
输入域名,返回全部IP
输入www.baidu.com
输入www.szu.edu.cn
输入IP,返回域名
输入8.8.8.8
输入210.39.4.1