我是靠谱客的博主 朴素睫毛膏,最近开发中收集的这篇文章主要介绍网络通信的基本概念一、IP 地址 (InetAddress)二、端口号三、InetAddress类,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
文章目录
- 一、IP 地址 (InetAddress)
- 1、概念
- 2、 作用
- 3、分类及格式
- 1、分类方式1:PV4 和 IPV6
- 2、 分类方式2:公网地址和 私有地址
- 3、组成
- 3、 特殊的 IP 地址
- 二、端口号
- 1、概念
- 2、格式
- 3、注意事项
- 4、端口分类:
- 5、常见的知名端口
- 三、InetAddress类
一、IP 地址 (InetAddress)
1、概念
IP 地址(Internet Protocal Address)是指互联网协议地址,又译为网际协议地址。
2、 作用
IP地址是IP协议提供的一种统一的地址格式,为互联网上每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。IP地址主要用于标识网络主机、其他网络设备(如路由器)的网络地址。简单来说,IP地址就是用来定位主机的网络地址。
3、分类及格式
1、分类方式1:PV4 和 IPV6
- IPV4:是一个32位的二进制数,通常被分割为“4个8位的二进制数”(也就是4个字节)。大概42 亿, 30亿都在北美,亚洲 4 亿。,2011 年初已经用尽 。通常用点分十进制的方式来表示,即a.b.c.d(a,b,c,d都是0~255之间的十进制数),如:100.4.5.6。
- IPV6: 128 位( 16 个字节), 写 成 8 个无符号整数,每个整数用四个十六进制位表示,数之间用冒号(:)分开,如: 3ffe:3201:1401:1280:c8ff:fe4d:db39:1984
2、 分类方式2:公网地址和 私有地址
- 公网地址:万维网使用
- 私有地址:局域网使用)
3、组成
IP 地址分为两部分,网络号和主机号。
- 网络号:标识网段,保证相互连接的两个网段具有不同的标识。
- 主机号:标识主机,同一网段内,主机具有相同的网络号,但是必须有不同的主机号。
通过合理的网络号和主机号,就可以保证相互连接的两个网络中,每台主机的IP地址都是唯一的。
3、 特殊的 IP 地址
- 将IP地址中的主机号全部设为0,就会变成网络号,代表整个局域网。
- 将IP地址中的主机号全部设为1,就会变成广播地址,用于给同一链路中相互连接的所有主机发送数据包。
- 127.*的IP地址用于本机环回(look back)测试,通常为127.0.0.1。本机环回主要用于本机到本机的网络通信(系统内部为了性能,不会走网络的方式传输),对于开发网络同心度程序(网络编程),常见的开发方式就是本机到本机的网络通信。
- 192.168.开头的就是私有址址 ,范围即为 192.168.0.0 ~192.168.255.255 ,专门为组织机构内部使用。
二、端口号
1、概念
I在网络通信中,IP地址用于标识主机网络地址,端口号可以标识主机中发送数据、接收数据的进程。简单说:端口号用于定位主机中的进程。
2、格式
端口号被规定为一个16位的整数,范围:0~65535 。在网络通信中,进程可以通过绑定一个端口号,来发送及接收网络数据。
3、注意事项
- 不同的进程有不同的端口号
- 两个不同的进程,不能绑定同一个端口号,但一个进程可以绑定多个端口号。
- 端口号与 IP 地址的组合得出一个网络套 接字: Socket 。
4、端口分类:
- 公认端口: 0~1023 。被预先定义的服务通信占用 (如:HTTP占用端口80,FTP 占用端口21,Telnet占用端 口23)
- 注册端口: 1024~ 40151。分配给用户进程或者应用程序。(如:Tomact 占用端口8080,MySQL 占用端口3306,Oracle 占用端口 1521 等)
- 动态端口: 49152~65535。
5、常见的知名端口
-
22,一般是给 SSH 使用
-
21,一般是给 HTP 使用
-
23,一般是给 telnet 使用
-
443,一般是给HTTPS 使用
三、InetAddress类
- Internet 上的主机有两种方式表示地址
- 域名: www.baidu.com
- IP地址: 202.108.35.210
- InetAddress 类主要表示 IP 地址 ,两个子类:Inet4Address 、 Inet6Address 。
- InetAddress 类对象含有一个 Internet 主机地址的域名和IP地址:www.baidu.com 和 202.108.35.210
- 域名容易记忆,当在连接网络时输入一个主机的域名后,域名服务器 (DNS)负责将域名转化成 IP 地址,这样才能和主机建立连接。 ---------域名解析
- InetAddress 类没有提供公共的构造器,而是提供 了如下几个静态方法来获取InetAddress 实例:
- public static InetAddress getLocalHost()
- public static InetAddress getByName(String host)
- InetAddress 提供了如下几个常用 的 方法:
- public String getHostAddress():返回 IP 地址字符串(以文本表现形式)。
- public String getHostName() :获取此 IP 地址的主机名。
- public boolean isReachable(int timeout):测试是否可以达到该地址。
- 举例
public class InetDaaressTest {
public static void main(String[] args) throws UnknownHostException {
InetAddress address = InetAddress.getByName("www.baidu.com");
System.out.println(address);
// 获取 InetAddress 对象所含的域名
System.out.println(address.getHostName());
// 获取 InetAddress 对象所含的 IP 地址
System.out.println(address.getHostAddress());
System.out.println();
// 获取本机的域名和 IP 地址
InetAddress address1 = InetAddress.getLocalHost();
System.out.println(address1);
}
}
最后
以上就是朴素睫毛膏为你收集整理的网络通信的基本概念一、IP 地址 (InetAddress)二、端口号三、InetAddress类的全部内容,希望文章能够帮你解决网络通信的基本概念一、IP 地址 (InetAddress)二、端口号三、InetAddress类所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复