0
点赞
收藏
分享

微信扫一扫

00023.07 IP地址、端口号在代码中的使用(IntAdddress、各种数据库注册端口号Oracle(1521),MySQL(3306),SQL Server(1433))


系列文章目录

文章目录

  • ​​系列文章目录​​
  • ​​一、IP地址​​
  • ​​二、端口号​​
  • ​​三、IP地址、端口号 代码当中的表示​​
  • ​​总结​​

一、IP地址

IP地址分为IPV4和IPV6目前我们看到的一般还算IPV4

00023.07 IP地址、端口号在代码中的使用(IntAdddress、各种数据库注册端口号Oracle(1521),MySQL(3306),SQL Server(1433))_IP地址


为什么要有IPV6 因为IPV4不就的将来就要淘汰了,为什么会淘汰,因为随着万物互联,连入互联网的事物越来越多,IPV4的位数不够用了

00023.07 IP地址、端口号在代码中的使用(IntAdddress、各种数据库注册端口号Oracle(1521),MySQL(3306),SQL Server(1433))_IP_02


00023.07 IP地址、端口号在代码中的使用(IntAdddress、各种数据库注册端口号Oracle(1521),MySQL(3306),SQL Server(1433))_IP地址_03


注意:

1、2025年会慢慢淘汰IPV4

2、因为IP地址不好记,为了方便记忆所以出现了域名,用于比较方便记忆和识别的单词来代表IP地址,域名可以解析成IP地址,反之也可以

  • IP地址:
  • IPV4:32位,4个整数,每一个整数是1个字节(无符号)0~255

例如:192.168.30.142

  • IPV6:

128 位无符号数字,8个16进制值

例如:1080:0:0:0:8:800:200C:417A


  • 特殊的IP:

127.0.0.1    本地回传IP

224.0.0.0至239.255.255.255  广播IP地址

....


  • 域名:
  • 用于比较方便记忆和识别的单词来代表IP地址
  • 例如:www.atguigu.com

www.jd.com

www.taobao.com

www.baidu.com

....

  • 域名–》域名解析器–>IP地址

  • 域名:
  • 一级域名:.com商业

.cn 中国

.org 组织,机构,非盈利型

.gov政府

.edu教育

....

  • 域名需要注册

二、端口号

  • 端口号:
  • [0,65535]之间无符号 2个字节
  • (1)公认端口(Well-Known Ports)范围从0到1023

http: 80  ftp:21  SMTP:25

  • (2)注册端口(Registered Ports):端口号从1024到49151。

例如:Tomcat(8080),JBOSS(8080),Oracle(1521),MySQL(3306),SQL Server(1433),QQ(1080)。

  • (3)动态/私有端口(Dynamic and/Private Ports):端口的范围从49152到65535,这些端口号一般不固定分配给某个服务。

三、IP地址、端口号 代码当中的表示

IntAdddress

java.net.InetAddress:用来包装IP地址对象的

InetAddress有两个子类:Inet4Address 、Inet6Address

(1)InetAddress.getLocalHost()

(2)InetAddress.getByName(“www.baidu.com”)

00023.07 IP地址、端口号在代码中的使用(IntAdddress、各种数据库注册端口号Oracle(1521),MySQL(3306),SQL Server(1433))_IPV4_04


如果想根据域名来获取IP地址

00023.07 IP地址、端口号在代码中的使用(IntAdddress、各种数据库注册端口号Oracle(1521),MySQL(3306),SQL Server(1433))_IPV4_05


00023.07 IP地址、端口号在代码中的使用(IntAdddress、各种数据库注册端口号Oracle(1521),MySQL(3306),SQL Server(1433))_IP地址_06


(3)InetAddress.getByAddress(addr)

如果后面的API中,要接收IP的形参类型是InetAddress的话,就可以刚才的方法来创建对象

代码:

package com.atguigu.test08;
import java.net.InetAddress;
import java.net.UnknownHostException;
import org.junit.Test;
public class TestInetAddress {
@Test
public void test03() throws UnknownHostException{
byte[] addr = {(byte)192,(byte)168,30,(byte)142};
InetAddress ben = InetAddress.getByAddress(addr);
System.out.println(ben);
}

@Test
public void test02() throws UnknownHostException{
InetAddress bai = InetAddress.getByName("www.baidu.com");
System.out.println(bai);
}

@Test
public void test01() throws UnknownHostException{
InetAddress ben = InetAddress.getLocalHost();
System.out.println(ben);//Irene-PC/192.168.30.142
}
}

总结

1、对于IPV4、IPV6、三次握手、四次挥手等概念要能够深入了解,能说出来原由
2、对于各个常用端口号要记忆,比如各种数据库的注册端口号Oracle(1521),MySQL(3306),SQL Server(1433)


举报

相关推荐

0 条评论