加我微信拉你进高质量java群
IP是互联网的核心协议,为解决IPv4耗尽问题,解决办法就是采用新的IP版本即IPv6,
IPV6仍支持无连接传送,但是将协议单元PDU称为分组,主要变化有(1)更大的地址空间(2)扩展的地址层次结构,(3)灵活的首部格式(4)改进的选项(5)允许协议继续扩充(6)支持即插即用,即自动配置,因此IPv6不需要DHCP(7)支持资源与分配(8)IP首部改为8字节对齐
IPv6将将首部固定为40个字节,所以取消了首部字段。 源地址与目的之都是128。IPv6将IPv4的首部中的选项功能放到了扩展首部中 ,数据报途中经过的路由器都不处理这些扩展首部,这就大大提高了路由器的处理效率。
IPv6数据报的目的地址可以是以下三种基本类型地址之一,(1)单播(2)多播(3)任播,这是IPv6新增 的一种类型,任播的目的栈是一组计算机,但进行数据报交付的时候交付其中的一个,通常是距离中最近的一个。一个接口可以有多个单播地址,其中的任何一个地址都可以当做到达该点的目的地址,既一个接口的单播地址可用来唯一的标示该节点。
IPv6地址的表示方法:冒号十六进制记法,零压缩(在任意地址中只能使用一次零压缩),CIDR的斜线表示法。
IPv6地址分类
地址类型 | 二进制前缀 |
未指明地址 | 00…0(128位),可记为 ::/128。 |
环回地址 | 00…1(128位),可记为 ::1/128。 |
多播地址 | 11111111(8位),可记为 FF00::/8。 |
本地链路单播地址 | 1111111010(10位), 可记为 FE80::/10。 |
全球单播地址 | (除上述四种外,所有其他的二进制前缀) |
向IPv6转变只能采用逐步演进的方法,同时还必须使新安装的IPv6地址能够向后兼容,两种IPv6过度策略,使用双栈技术,使用隧道技术。
双栈协议的主机记为IPv4/IPv6,表名他同时具有两种IP,当主机和IPv6主机通信时采用IPv6地址,和IPv4主机通信时采用IPv4地址。根据DNS返回地址类型来判断使用哪种地址。
隧道技术在IPv6数据报要进入IPv4网络的时候,报IPv6数据报封装成IPv4数据报的格式。
IPv6也不保证数据的可靠交付,因为互联网中的路由器可能会丢失数据报。因此IPv6也需要使用ICMP来反馈一些差错信息,新的版本称为ICMPv6.
地址解析协议ARP和网际管理层协议IGMP,协议已经被整合到ICMPv6中。
IP多播
目的是为了更好的支持一对多的通信。(一个源点发送到许多的端点),互联网的多播主要靠路由来实现的。能够运行多播协议的路由也称为多播路由。
IP多播传送的分组需要多播多播IP地址,再多播数据报的目的地址写入的是多播组的标示符,多播组的标示符就是IP地址中的D类地址。每一个D类地址标志着一个多播组。多播地址只能用于目的地址,而不能用于源地址。
多播数据报和一般的数据报的区别就是他使用D类IP地址作为目的地址,并且首部中的协议字段是2,表示使用网际组管理协议IGMP,多播数据报也是尽最大努力的交付,多播数据报不产生ICMP差错报文。
由于多播的IP地址于以太网硬件地址映射关系不是唯一的,因此收到多播数据报的主机,还要在IP层利用软件进行过滤。把不是本主机要接受的数据丢弃。
网际组管理协议(IGMP) 为了使路由器知道多播组成员的信息,需要利用网际组管理协议IGMP
IGMP并非在互联网范围内对所有的多播组成员进行管理的协议,IGMP不知道IP多播组所包含的成员数,也不知带这些成员分配在哪些网络上。IGMP协议是让本地局域网上的多播路由器知道本局域网上是否有主机参加或退出某个多播组。和ICMP类似,IGMP使用数据报传递报文,但他向IP提供服务。因此我们不把IGMP看成一个单独的协议,而是属于整个网际协议IP的一个组成部分。
IGMP工作分为两个阶段,(1)加入多播组,当某个主机加入多播组时,该主机应该向多播组的多播地址发送IGMP报文,声明自己要成为多播组成员。本地的多播路由器收到IGMP报文后,将组成员关系发送给互联网其他多播路由器。(2)探寻组成员变化情况,因为组成员关系是动态的,因此本地多播路由器要周期性的探寻本地局域网上的主机,以便知道这些主机是否还是多播组的成员。只要多播组上有一个主机响应那么就认为这个组是活跃的。但一个组经过几次探寻之后仍然没有一个主机响应,则不在将该组成员关系转发给其他多播路由器。
在主机和多播路由器之间所有的通信都使用IP多播。多播路由器在探寻成员关系时,只需要多所有的组发出一个请求信息的询问报文,而不需要对每一个分组发送一个询问报文
虚拟专用网VPN和网络地址转换NAT
问题:在内部使用的本地地址可能与互联网中某个地址重合,这样就会出现地址二义性问题解决:RFC1918指明了一些专用地址,专用地址只能用作本地地址而不能用作全球地址,在互联网的所有路由器中,对目的地址是专用地址的数据报一律不进行转发。
采用这样IP的网络称为专用网络或本地互联网,简单些就叫做专用网。因为这些地址仅在本专业内部使用,专用IP也叫可重复地址。
VPN定义:利用互联网作为本机构个网络之间的通信载体,这样的专用网又称为虚拟专用网。“专用网”是因为这种网络是用于本机构的主机用于机构内部通信的。“虚拟”表示好像是,但实际并不存在的,因为现在并没有使用真正的使用专线,而VPN实在效果上和专用网络一样。
如果专用网络不同网点之间的通信要经过公用网络 ,但又有保密要求,那么所有通过互联网传送的数据都必须加密。一个机构要构建自己的VPN就必须为他的每一个场所购买专门的硬件和软件,并进行配置,使每一个场所的VPN系统都知道其他场所的地址。
内联网(intranet 一个机构内部)和外联网(extranet,一个机构和某些外部机构共同构建)
他们都是基于TCP/IP的协议,远程接入VPN可以满足外部流动员工访问公司网络的需求。在外部工作的员工拨号接入互联网,而驻留在员工PC机中的VPN软件可在员工PC与公司主机之间建立VPN隧道,因而外地员工与公司的通信是保密的。
网络地址转换NAT:
专用网上使用的主机如何与互联网上的主机通信(并不需要加密):(1)再申请一些全球IP,但这种情况下是不容易做到的。(2)采用网络地址转换NAT,这是目前使用最多的方法。需要在专用网络连接到互联网上的路由器上装上NAT软件,装有NAT的路由器叫做NAT路由器。她阿至少有一个有效的全球IP地址,所有使用本地主机和外界互联网通信的时候都要在NAT路由器上将其本地地址转换为全球IP地址。才能和互联网连接。
内部主机与外部主机进行通信的时候,在NAT路由器上发生了两次地址转换离开专用网时:替换源地址,转换为全球地址进入专用网时:替换目的地址,将全球地址替换为内部地址。
当NAT路由器有n个全球IP地址时,专用网最多可以有n台主机接入互联网。通过NAT路由器的通信必须由专用网内部的主机发起,专用网内部的主机不能充当服务器用。因为互联网中的客户无法请求专用网内部服务器提供服务。
为了更加有效的利用NAT路由器上的全球IP地址,现在常用的NAT转换表把运输层的端口号也利用上,这样就可以使多个专用网上的主机共用一个NAT路由器上的全球IP地址。因而同时可以和不同的主机进行通信。使用端口好的NAT叫做网络地址与端口号NAPT,而不使用的叫做传统NAT.
NAPT 把专用网内不同的源IP地址,都转换为同样的全球IP地址,但对源主机所采用的TCP端口号,则转换为不同的新的端口号,因此当NAPT收到互联网发来的应答时,就可以从IP数据报的数据部分找到运输层的端口号,然后根据不同目的端口号,从NAPT中找到正确的目的主机。