开发者社区> 技术小胖子> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Java网络编程从入门到精通(1):Internet地址概述

简介:
+关注继续查看
所有连入Internet的终端设备(包括计算机、PDA、打印机以及其他的电子设备)都有一个唯一的索引,这个索引被称为IP地址。现在Internet上的IP地址大多由四个字节组成,这种IP地址叫做IPv4。除了这种由四个字节组成的IP,在Internet上还存在一种IP,这种IP16个字节组成,叫做IPv6IPv4IPv6后面的数字是Internet协议(Internet ProtocolIP)的版本号。
IPv4地址的一般表现形式为:X.X.X.X。其中X0255的整数。这四个整数用“.”隔开。从理论上说,IPv4地址可以表示232次幂,也就是4,294,967,296IP地址,但由于要排除一些具有特殊意义的IP(如0.0.0.0127.0.0.1224.0.0.1255.255.255.255等),因此,IPv4地址可自由分配的IP数量要小于它所能表示的IP地址数量。
为了便于管理,人为地将IPv4划分为A类、B类和CIP地址。
  • AIP地址
范围:0.0.0.0 –– 127.255.255.255,标准的子网掩码是255.0.0.0
  • BIP地址
范围:128.0.0.0 –– 191.255.255.255,标准的子网掩码是255.255.0.0
  • CIP地址
范围:192.0.0.0 –– 223.255.255.255,标准的子网掩码是255.255.255.0
从上面的描述可看出,第一个字节在0127之间的是AIP地址,在128191之间的是BIP地址,而在192223之间的是CIP地址。如果两个IP地址分别和它们的子网掩码进行按位与后得到的值是一样的,就说明这两个IP在同一个网段。下面是两个CIP地址IP1IP2和它们的子网掩码。
IP1192.168.18.10    子网掩码: 255.255.255.0
IP2192.168.18.20    子网掩码: 255.255.255.0
这两个IP和它们的子网掩码按位与后,得到的值都是192.168.18.0。因此,IP1IP2在同一个网段。当用户使用ModemADSL Modem上网后,临时分配给本机的IP一般都是C类地址,也就是说,第一个字节都会在192223之间。
上面给出的IP地址和子网掩码只是标准的形式。用户也可以根据自己的需要使用其他的IP和子网掩码,如IP地址设为10.0.0.1,子网掩码设为255.255.255.128。但为了便于分类和管理,在局域网中设置IP地址时,建议按着标准的分类来设置。
IPv6地址由16个字节组成,共分为8段。每一段由16个字节组成,并用4个十六进制数表示,段与段之间用“:”隔开。如A34E:DD3D:1234:4400:A123:B231:A111:DDAA是一个标准的IPv6地址。IPv6在两种情况下可以简写:
1.       0开头的段可省略0。如A34E:003D:0004:4400:A123:B231:A111:DDAA可简写为A34E: 3D4:4400:A123:B231:A111:DDAA
2. 连续出现0的多个段可使用“::”来代替多个为0的段。如A34E:0000:0000:0000:A123:B231:0:DDAA可简写为A34E::A123:B231:0:DDAA。在使用这种简写方式时,“::”只能出现一次,如果出现多次,IPv6地址将会产生歧义。
IPv4IPv6混合的网络中,IPv6地址的后四个字节可以被写成IPv4的地址格式。如A34E::A123:B231:A111:DDAA可以写成A34E::A123:B231:161.17.221.170。当访问网络资源的计算机使用的是IPv4的地址时,系统会自动使用IPv6的后四个字节作为IPv4的地址。
无论是IPv4地址,还是IPv6地址,都是很难记忆的。因此,为了使这些地址便于记忆,Internet的设计师们发明了DNSDomain Name System,域名系统)。DNSIP地址和域名(一个容易记忆的字符串,如microsoft)联系在一起,当计算机通过域名访问Internet资源时,系统首先通过DNS得到域名对应的IP地址,再通过IP地址访问Internet资源。在这个过程中,IP地址对用户是完全透明的。如果一个域名对应了多个IP地址,DNS从这些IP地址中随机选取一个返回。
域名可以分为不同的层次,如常见的有顶层域名、顶级域名、二级域名和三级域名。
  • 顶层域名
顶层域名可分为类型顶层域名和地域顶层域名。如www.microsoft.comwww.w3c.org中的comorg就是类型顶层域名,它们分别代表商业(com)和非盈利组织(org)。而www.dearbook.com.cn中的cn就是地域顶层域名,它表示了中国(cn)。主要的类型顶层域名有com(商业)edu(教育)gov(政府)int(国际组织)mil(美国军方)net(网络部门)、org(非盈利组织)。大多数国家都有自己的地域顶层域名,如中国(cn)、美国(us)、英国(uk)等。
  • 顶级域名
www.microsoft.com中的microsoft.com就是一个顶级域名。在Email地址的“@”后面跟的都是顶级域名,如abc@126.commymail@sina.com等。
  • 二级域名
blog.csdn.net就是顶级域名csdn.net的二级域名。有很多人认为www.csdn.net是顶级域名,其实这是一种误解。实际上www.csdn.net是顶级域名csdn.net的二级域名。www.csdn.netblog.csdn.net在本质上是一样的,只是我们已经习惯了使用www表示一个使用HTTPHTTPS协议的网址,因此,给人的误解就是www.csdn.net是一个顶级域名。
  •  三级域名
   如abc.photo.163.com就是二级域名photo.163.com的三级域名。有很多blog或电子相册之类的网站都为每个用户分配一个三级域名。
 


 本文转自 androidguy 51CTO博客,原文链接:http://blog.51cto.com/androidguy/214820,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
强哥说Java--网络编程(一)
强哥说Java--网络编程(一)
21 0
Java基础之网络编程
Java基础之网络编程
31 0
Java网络编程之网络基础
现代的应用程序都离不开网络,网络编程是非常重要的技术。 Java SE提供java.net包,其中包含了网络 编程所需要的最基础一些类和接口。这些类和接口面向两个不同的层次:基于Socket的低层次网络编 程和基于URL的高层次网络编程。
29 0
Java Review(三十八、网络编程)
Java Review(三十八、网络编程)
43 0
《Java 2D游戏编程入门》—— 第1章 Hello World
大多数编程图书的第1章是创建一个Hello World应用程序,它执行一个简单的函数以确认一切都能工作。最简单的计算机游戏是一个黑色背景的窗口,还有一个紧凑的while循环,它负责尽可能快地清除屏幕并且重新绘制黑色的背景。
1594 0
Java:网络编程
一、因特网地址   InetAddress类:实现主机名和因特网地址之间的转换。     InetAddress address=InetAddress.getByName(String);返回一个InetAddress实例     InetAddress[] address=InetAddress.getAllByName(host);获取所有主机的地址。
41352 0
java网络编程
  所谓计算机网络,就是把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大、功能强的网络系统,从而使众多的计算机可以方便地互相传递信息、共享硬件、软件、数据信息等资源。   计算机网络是现代通信技术与计算机技术相结合的产物,计算机网络可以提供以下一些主要功能.     –资源共享。
938 0
Java中网络编程之TCP协议
一、TCP的基本概念 TCP是专门设计用于在不可靠的英特网上提供可靠的、端到端的字节流通信的协议,是一个面向连接的协议,TCP连接是字节流而非报文流。UDP和TCP各有65536个端口号互不影响。   二、单线程服务端 以下代码只能实现服务端和客户端的同步对话。服务端处理完一个客户端请求,才会处理另一个客户端请求。服务器端的输出效果是Client1阻塞20秒,Client2不会执行
1200 0
21114
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载