上面一篇简单介绍了InetAddress的基本用法
现在简单说明下NetworkInterface可以获取本机网络接口的相关信息,包括硬件地址,MTU,所有的IP地址等信息,需要获取本机IP时,最好使用NetworkInterface对配置的IP地址进行筛选
三个静态方法 getNetworkInterfaces()
getByName(String name)
getByInetAddress(InetAddress addr)
1.getNetworkInterfaces()
Enumeration<NetworkInterface> e=NetworkInterface.getNetworkInterfaces();
while(e.hasMoreElements())
System.out.println(e.nextElement().getName());
结果
//三个练习不清楚
lo //lo是环回接口
eth0 //本地连接的地址
ppp0 //网络拨号的
2.getByName(String name)//上面的网络接口名称
NetworkInterface n= NetworkInterface.getByName("ppp0");
System.out.println(n.getInetAddresses().nextElement().getHostAddress());
结果
14.109.117.39 //我的网络地址
3.getByInetAddress(InetAddress addr)
NetworkInterface n= NetworkInterface.getByInetAddress(InetAddress.getLocalHost());
System.out.println(n.getName());
结果
ech0 //我设置的本地连接的
总的来说
InetAddress使用InetAddress的getByName方法可以获取远程服务的IP地址(通过DNS服务获取的),使用getAllByName方法可以获取远程指定服务的所有服务主机的IP地址。
用getLocalHost方法可以获取本地IP地址,但是这种方式并不可靠,当出现多张网卡,或一个网络接口配置了多个IP,或者不同的操作系统类型,都不能保证能够获得想要的IP。
NetworkInterface 获得本地网络的所有信息
总的网络关系不是太清楚。。。
分享到:
相关推荐
《Windows网络编程第二版》作为一本关于该主题的书籍,致力于帮助开发者掌握Windows平台下的网络编程知识,特别是针对Windows XP操作系统中的新特性和网络功能。 该书详细介绍了Winsock API(Windows套接字接口),...
《Windows网络编程第二版》是一本深入探讨在Windows操作系统环境下进行网络编程的专业书籍。它涵盖了从基础概念到高级技术的广泛知识,旨在帮助开发者构建高效、稳定的网络应用程序。该资源包含高清中文PDF版本,...
卷二:《UNIX网络编程第二卷:高级网络编程》 本书则进一步深入到网络编程的高级主题,主要包括: 1. **套接字选项和协议**:深入解析了套接字选项的使用和各种网络协议的工作原理,如TCP、UDP、ICMP等。 2. **TCP...
Richard Stevens撰写,分为卷一和卷二,深入探讨了UNIX系统上的网络编程技术。这本书对于理解和掌握网络编程的基本概念、API以及实际应用有着极大的帮助。源代码是学习过程中的重要辅助资料,通过实践这些代码,...
Windows网络编程(第二版)-中文PDF
标题《UNIX网络编程》指向的是一本专注于UNIX操作系统网络编程技术的书籍。网络编程,是编写能够让计算机通过网络与其他程序进行通信的程序的活动。这种通信允许程序之间交换数据,可以是简单的文本消息或是复杂的二...
Windows网络编程(第二版免费).pdf
在C++中进行网络编程是一项基础且重要的技能,尤其对于想要构建分布式系统或者涉及服务器端开发的程序员来说。本文将深入探讨C++网络编程的基本概念、常用库以及如何通过源代码学习这一领域。 网络编程主要涉及到两...
linux C语言 网络编程教程及源码 一、网络应用层编程 1、Linux网络编程01——网络协议入门 2、Linux网络编程02——无连接和面向连接的区别 3、Linux网络编程03——字节序和地址转换 4、Linux网络编程04——套接字 5...
第三版相较于第二版增加了很多新的内容,包括对IPv6的支持、新的网络编程APIs以及对多线程编程的讨论等。整体而言,《Unix网络编程》第三版是一本全面介绍UNIX网络编程的书籍,它的内容全面,知识点丰富,对于想要...
《Unix网络编程》一书是网络编程领域中的经典之作,分为卷一和卷二,分别深入探讨了套接字API和进程间通信等核心主题。对于任何想在Unix环境下进行网络编程的开发者来说,这两本书都是不可或缺的参考资料。然而,...
《Steven编写的UNIX网络编程》是一本深受程序员喜爱的经典之作,涵盖了UNIX系统中的网络编程核心内容,分为两卷:第一卷“套接字联网API”和第二卷“进程间通信”。作者通过深入浅出的方式,详细阐述了网络编程的...
unix网络编程卷二 源码
ASP.NET 2.0+SQL Server 2005网络应用编程二合一百例/网冠科技编著 网页制作工具, ASP.NET 2.0-程序设计 ;关系数据库-数据库管理系统, SQL Server 2005
《Windows网络编程(第二版)》是一本深入探讨在Windows平台上进行网络应用程序开发的专业书籍。这本书的中文PDF版本为广大的中文读者提供了便利,让学习和理解Windows网络编程变得更加容易。 Windows网络编程主要...
第二章“流”是Java网络编程的核心概念。Java中的I/O流提供了处理输入和输出的强大工具,无论是处理文件、网络连接还是其他资源,流都扮演着关键角色。本章详细阐述了字节流和字符流的区别,以及如何使用InputStream...
"C++网络编程 卷一卷二"可能是一套深入探讨这个主题的书籍,分为两卷,旨在通过ACE(Adaptive Communication Environment)库和设计模式来降低网络编程的复杂性。 首先,让我们详细了解一下ACE库。ACE是一个开源的...
《UNIX网络编程》一书是网络编程领域中的经典之作,主要涵盖了UNIX系统下的套接口(Socket)编程技术。源码的提供使得读者可以更深入地理解理论知识,并将其应用于实践。下面将详细介绍其中的关键知识点: 1. **套...
《C#网络应用编程第二版》是一本专为C#开发者设计的深入解析网络编程的书籍,涵盖了从基础概念到高级技术的广泛内容。通过学习本书,开发者可以掌握使用C#进行网络通信的各种技巧和最佳实践,从而构建高效、安全的...
《精通Java网络编程第二版》是一本面向Java程序员和网络编程爱好者的专业书籍,由汪晓平、贾敬习、李功三位作者合力撰写,并由清华大学出版社出版。这本书旨在帮助读者深入理解Java语言在网络编程领域的应用,提升在...