CN101616192B - IPv4地址和端口复用的分级转换方法 - Google Patents
IPv4地址和端口复用的分级转换方法 Download PDFInfo
- Publication number
- CN101616192B CN101616192B CN200910089342.4A CN200910089342A CN101616192B CN 101616192 B CN101616192 B CN 101616192B CN 200910089342 A CN200910089342 A CN 200910089342A CN 101616192 B CN101616192 B CN 101616192B
- Authority
- CN
- China
- Prior art keywords
- ipv6
- address
- ipv4
- port
- computer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
IPv4地址和端口复用的分级转换方法属于计算机网络通信技术领域,其特征在于,分级对IPv4分组和IPv6分组进行转换,第一级利用无状态的IPv4/IPv6地址和协议转换方法在IPv4地址和特定的IPv6地址间建立转换关系,第二级利用IPv6/IPv6地址和端口转换方法使多个用户的IPv6地址通过端口复用的方法共享特定的IPv6地址,因此可以根据需求采用不同的复用比,通过有限的IPv4地址使大量的IPv6用户与全球IPv4互联网进行双向发起的通信,本发明可以有效地解决IPv4/IPv6的互联互通问题,推进互联网从IPv4向IPv6的过渡。
Description
技术领域
IPv4地址和端口复用的分级转换方法属于计算机互联网通信技术领域。
背景技术
互联网已经成为全世界最重要的信息基础设施,但目前互联网广泛使用的第四版网络协议IPv4的地址的寻址范围只有232,即43亿地址,根据目前IPv4地址的分配速度,预计在2011年之后,IPv4地址即将分配完毕。
目前中国网民人口的绝对数已经成为世界第一,但互联网的普及率只有22%,远低于世界发达国家的水平(70%)。同时,平均每个中国网民仅有0.6个IPv4地址。因此,对于中国来说,IPv4地址是无法满足需求的。这个问题对于印度等其它亚洲国家和非洲国家来说,都是非常严重的。
为了解决IPv4地址不够用的问题,国际互联网工程组(IETF)设计了第六版网络协议IPv6,它的地址寻址范围有2128,能够满足需求。但由于种种原因,IPv6协议于IPv4协议是不兼容的,不能很好的互联互通。当时设计的理念是用“双协议栈”的方法解决互联互通的问题,但近十年IPv6推广的经验和教训证明,不能访问IPv4众多网络信息资源,不能与IPv4众多的用户通信的IPv6网络是不可能发展起来的。
地址转换和协议转换是解决IPv4和IPv6互联互通的方法,无状态的地址转换和协议转换方法,具有可扩展性,但无状态的转换方法需要用户使用特定的IPv6地址,不允许使用自动配置的IPv6地址。同时,IPv4地址是紧缺资源,需要更好地利用。
本发明的基本原理是在无状态地址转换和协议转换的基础上,增加IPv6/IPv6端口复用地址转换网关,根据需求把IVI地址利用端口复用转换为大量的IPv6地址。
本发明的基本特征包括:1)采用IPv4地址嵌入IPv6地址的第一类编码格式在IPv4地址与运营商的一个IPv6地址的子集IVI6地址之间建立唯一的映射关系;2)采用二级转换方法,采用IPv4地址和端口范围嵌入IPv6地址的第二类编码格式通过IPv6/IPv6转换网关,根据需求定义复用比,把少量的IVI6地址转换为大量IPv6地址,供IPv6用户与IPv4互联网通信用。
发明内容
IPv4地址和端口复用的分级转换方法,其特征在于,依次含有以下步骤:步骤(1)初始化
步骤(1.1)在IPv4和IPv6网络之间设立一个IVI转换网关,并定义第一类编码格式:把IPv4地址直接嵌入所述IPv6地址的编码格式,构成一个IPv6地址,在运营商基于32位聚类前缀的所述IPv6地址格式中的第32+n位嵌入32位IPv4地址,n<32,同时在第64+n到128位之间空余位填充全0,其中:当所述IPv4地址为所述运营商准备给IPv6主机使用的IPv4地址时,构成IVI6地址,当所述IPv4地址为包含所述运营商自己在内的全球IPv4地址,又不属于所述IPv6主机的IPv4地址时,构成IVIG6地址,所述IVI6和IVIG6统称为IVI地址由此在所述IPv4地址和IPv6地址的子集之间形成一一对应的双向映射关系,
步骤(1.2)在IPv6主干网和IPv6园区网之间设立IPv6/IPv6端口复用地址转换网关,并定义第二类编码格式:即把IPv4地址加传输层端口编码嵌入所述IPv6地址的编码格式,在基于运营商32位聚类前缀的所述IPv6地址编码格式中的第32+n位嵌入32位IPv4地址,n<32,构成IVI前缀,在当64+n到第96位之间如有空余位时填充全0,在第96位至111位嵌入地址复用比M,在第112位至128位嵌入端口位移值k,0≤k≤M-1,所述M表示一个所述IPv4地址通过IPv6/IPv6端口复用地址转换网关同时供多个IPv6计算机使用的计算机个数,
步骤(1.3)对于不同的园区网定义不同的IPv4地址复用比,并根据用户的IPv6地址的使用情况,根据IVI6地址和特定的端口范围,与用户使用的IPv6地址间建立一一对应的映射关系,即用户在与IPv4互联网通信时,只能使用特定的端口范围;
步骤(2)IPv4计算机向IPv6计算机发起通信,其中源地址为IPv4计算机的地址,目的地址为IPv6计算机的IPv6地址的IPv4镜像,其端口为所述IPv6计算机所允许使用的端口;
步骤(3):所述IVI转换网关接收分组,依次执行步骤(3.1)-步骤(3.4);
步骤(3.1):所述目标地址按步骤(1.1)按设定的第一类编码格式把IPv4地址转换为IVI6地址,
步骤(3.2):所述源地址按步骤(1.1)设定的第一类编码格式把IPv4地址转换为IVIG6地址,
步骤(3.3):按RFC2765执行除地址转换之外的其它处理程序,并重新计算传输层校验和,从而形成所述IPv6分组;
步骤(3.4):向所述IPv6/IPv6转换网关发送步骤(3.3)形成的第一类编码格式的IPv6分组;
步骤(4):IPv6/IPv6端口复用地址转换网关接到步骤(3.4)发送的所述IPv6分组后,执行以下步骤(4.1)-步骤(4.3),形成第二类编码格式的IPv6分组并发送,
步骤(4.1):根据目标地址和目标端口把第一类编码格式的IPv6地址转换为第二类编码格式的IPv6地址;
步骤(4.2):重新计算传输层校验和,并形成IPv6分组;
步骤(4.3):向所述IPv6计算机发送步骤(4.2)中所述IPv6分组;
步骤(5):所述IPv6计算机接收分组;
步骤(6):所述IPv6计算机向IPv4计算机发送IPv6分组,其中源地址地址为IPv6计算机的地址,源端口为所述IPv6计算机所允许使用的源端口,目的地址为IPv4计算机的IPv4地址的镜像,即IVIG6地址;
步骤(7):所述IPv6/IPv6转换网关接收IPv6分组,按以下步骤形成新的IPv6分组,
步骤(7.1):验证源端口,如符合对应的端口范围,执行步骤(7.1),否则丢弃分组,返回步骤(7);
步骤(7.2):把第二类编码格式的IPv6地址转换为第一类编码格式的IPv6地址;
步骤(7.3):重新计算传输层校验和并形成IPv6分组,
步骤(7.4):向所述IVI转换网关发送步骤(7.3)中所述的IPv6分组;
步骤(8):IVI转换网关接收IPv6分组步骤(7.3)发送的所述IPv6分组,通过以下步骤(8.1)-步骤(8.3)形成IPv4分组并发送,
步骤(8.1):所述目标地址按步骤(1.1)设定的IPv6地址编码格式转换为IPv4地址,
步骤(8.2):所述源地址按步骤(1.1)设定的IPv6地址编码格式转换为IPv4地址,
步骤(8.3):按RFC2765执行除地址转换之外的其它处理程序,并重新计算传输层校验和,从而形成所述IPv4分组;
步骤(8.4):向IPv4计算机发送步骤(8.3)形成的IPv4分组;
步骤(9):所述IPv4计算机接收步骤(8.4)发送的IPv4分组;
附图说明
图1:IPv4地址和端口复用的分级转换方法的网络连接方式;
图2:IPv4地址和端口复用的分级转换方法的工作流程图;
图3:IPv4地址嵌入IPv6地址的定义格式。
具体实施方式和方法案例
本发明的连接方式如图1所示,其中IVI转换网关为第一级转换,把IPv4分组转换为基于第一类编码格式的IPv6分组,6/6端口复用转换网关为第二级转换网关,跟据端口复用比,把第一类编码格式的分组转换为第二类编码格式的分组。
本发明的工作流程如图2所示。
本发明的IVI转换网关的映射规则如图3所示,通信流程举例如下:
如运营商的IPv6地址的前缀为2001:da8::/32,所选用的IVI4地址为202.38.108.0/24,则第一类编码格式IVI6地址范围为2001:da8:ffca:266c:0::/64,如所选用的复用比为256,所选用的计算机为202.38.108.2,端口为4097,则该IPv6计算机的第二类编码格式的IPv6地址为2001:da8:ffca:266c:200::100:1/128,如通信的IPv4计算机的IPv4地址为18.181.0.31,则第一类编码格式IVIG6的地址为2001:da8:ff12:b500:1f00::/72,对于IPv4计算机不需要第二类编码格式,通信流程为:
(1)IPv4计算机18.181.0.31需要与IPv6计算机2001:da8:ffca:266c:200::100:1的4097端口发起通信,则在IPv4网络中18.181.0.31需要对202.38.108.2的4097端口发起通信,因为这是对应于IVI6=2001:da8:ffca:266c:200::的IVI4,即IPv4分组的源地址和目标地址分别为:
18.181.0.31←→202.38.108.2,目标端口为4097。
(2)在IVI转换网关中,18.181.0.31转换为2001:da8:ff12:b500:1f00::,202.38.108.2转换为2001:da8:ffca:266c:200::,即IPv6分组的源地址和目标地址分别为:2001:da8:ff12:b500:1f00::←→2001:da8:ffca:266c:200::。
(3)在6/6端口复用转换网关中,源地址不变,根据目标端口4097,目标地址由2001:da8:ffca:266c:200::转换为2001:da8:ffca:266c:200::100:1/,即IPv6分组的源地址和目标地址分别为:2001:da8:ff12:b500:1f00::←→2001:da8:ffca:266c:200::100:1。
(4)返回的IPv6分组的源地址和目标地址分别为:2001:da8:ffca:266c:200::100:1/←→2001:da8:ff12:b500:1f00::。
(5)在6/6端口复用转换网关中,源端口4079符合转换范围源地址由2001:da8:ffca:266c:200::100:1转换为2001:da8:ffca:266c:200::,目标地址不变,即IPv6分组的源地址和目标地址分别为:2001:da8:ffca:266c:200::←→2001:da8:ff12:b500:1f00::。
(6)通过IVI转换网关,转换为IPv4分组的源地址和目标地址分别为:202.38.108.2←→18.181.0.31。
注意对于由IPv6计算机发起的通信,其源端口必须符合给定的端口范围,否则分组将被6/6端口复用转换网关丢弃。这个规定可以由修改IPv6计算机的操作系统实现。
利用本发明定义的方法,可以在共享IPv4地址的情况下,利用端口复用技术使IPv6计算机与IPv4互联网进行双向发起的通信。
Claims (1)
1.IPv4地址和端口复用的分级转换方法,其特征在于,依次含有以下步骤:
步骤(1)初始化
步骤(1.1)在IPv4和IPv6网络之间设立一个IVI转换网关,并定义第一类编码格式:把IPv4地址直接嵌入IPv6地址的编码格式,构成一个IPv6地址,在运营商基于32位聚类前缀的所述IPv6地址格式中的第32+n位嵌入32位IPv4地址,0<n<32,同时在第64+n到128位之间空余位填充全0,其中:当所述IPv4地址为所述运营商准备给IPv6主机使用的IPv4地址时,构成IVI6地址,当所述IPv4地址为包含所述运营商自己在内的全球IPv4地址,又不属于所述IPv6主机的IPv4地址时,构成IVIG6地址,所述IVI6和IVIG6统称为IVI地址由此在所述IPv4地址和IPv6地址的子集之间形成一一对应的双向映射关系,
步骤(1.2)在IPv6主干网和IPv6园区网之间设立IPv6/IPv6端口复用地址转换网关,并定义第二类编码格式:即把IPv4地址加传输层端口编码嵌入IPv6地址的编码格式,在基于运营商32位聚类前缀的所述IPv6地址编码格式中的第32+n位嵌入32位IPv4地址,0<n<32,构成IVI前缀,在当64+n到第96位之间如有空余位时填充全0,在第96位至111位嵌入地址复用比M,在第112位至128位嵌入端口位移值k,0≤k≤M-1,所述M表示一个所述IPv4地址通过IPv6/IPv6端口复用地址转换网关同时供多个IPv6计算机使用的计算机个数,
步骤(1.3)对于不同的园区网定义不同的IPv4地址复用比,并根据用户的IPv6地址的使用情况,根据IVI6地址和特定的端口范围,与用户使用的IPv6地址间建立一一对应的映射关系,即用户在与IPv4互联网通信时,只能使用特定的端口范围;
步骤(2)IPv4计算机向IPv6计算机发起通信,其中源地址为IPv4计算机的地址,目标地址为IPv6计算机的IPv6地址的IPv4镜像,其端口为所述IPv6计算机所允许使用的端口;
步骤(3):所述IVI转换网关接收分组,依次执行步骤(3.1)-步骤(3.4);
步骤(3.1):目标地址按步骤(1.1)按设定的第一类编码格式把IPv4地址转换为IVI6地址,
步骤(3.2):所述源地址按步骤(1.1)设定的第一类编码格式把IPv4地址转换为IVIG6地址,
步骤(3.3):按RFC2765执行除地址转换之外的其它处理程序,并重新计算传输层校验和,从而形成所述IPv6分组;
步骤(3.4):向IPv6/IPv6转换网关发送步骤(3.3)形成的第一类编码格式的IPv6分组;
步骤(4):IPv6/IPv6端口复用地址转换网关接到步骤(3.4)发送的所述IPv6分组后,执行以下
步骤(4.1)-步骤(4.3),形成第二类编码格式的IPv6分组并发送,
步骤(4.1):根据目标地址和目标端口把第一类编码格式的IPv6地址转换为第二类编码格式的IPv6地址;
步骤(4.2):重新计算传输层校验和,并形成IPv6分组;
步骤(4.3):向所述IPv6计算机发送步骤(4.2)中所述IPv6分组;
步骤(5):所述IPv6计算机接收分组;
步骤(6):所述IPv6计算机向IPv4计算机发送IPv6分组,其中源地址地址为IPv6计算机的地址,源端口为所述IPv6计算机所允许使用的源端口,目标地址为IPv4计算机的IPv4地址的镜像,即IVIG6地址;
步骤(7):所述IPv6/IPv6转换网关接收IPv6分组,按以下步骤形成新的IPv6分组,
步骤(7.1):验证源端口,如符合对应的端口范围,执行步骤(7.1),否则丢弃分组,返回步骤(7);
步骤(7.2):把第二类编码格式的IPv6地址转换为第一类编码格式的IPv6地址;
步骤(7.3):重新计算传输层校验和并形成IPv6分组,
步骤(7.4):向所述IVI转换网关发送步骤(7.3)中所述的IPv6分组;
步骤(8):IVI转换网关接收IPv6分组步骤(7.3)发送的所述IPv6分组,通过以下步骤(8.1)-步骤(8.3)形成IPv4分组并发送,
步骤(8.1):所述目标地址按步骤(1.1)设定的IPv6地址编码格式转换为IPv4地址,
步骤(8.2):所述源地址按步骤(1.1)设定的IPv6地址编码格式转换为IPv4地址,
步骤(8.3):按RFC2765执行除地址转换之外的其它处理程序,并重新计算传输层校验和,从而形成所述IPv4分组;
步骤(8.4):向IPv4计算机发送步骤(8.3)形成的IPv4分组;
步骤(9):所述IPv4计算机接收步骤(8.4)发送的IPv4分组。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910089342.4A CN101616192B (zh) | 2009-07-16 | 2009-07-16 | IPv4地址和端口复用的分级转换方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910089342.4A CN101616192B (zh) | 2009-07-16 | 2009-07-16 | IPv4地址和端口复用的分级转换方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101616192A CN101616192A (zh) | 2009-12-30 |
CN101616192B true CN101616192B (zh) | 2014-01-01 |
Family
ID=41495590
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910089342.4A Active CN101616192B (zh) | 2009-07-16 | 2009-07-16 | IPv4地址和端口复用的分级转换方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101616192B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102209121A (zh) * | 2010-03-29 | 2011-10-05 | 杭州华三通信技术有限公司 | IPv6网络和IPv4网络之间互通的方法和装置 |
CN102594932B (zh) * | 2010-12-10 | 2015-11-25 | 清华大学 | 使用非特定IPv6地址的IPv4/IPv6分级转换方法 |
CN102098356A (zh) * | 2011-03-25 | 2011-06-15 | 清华大学 | 基于云服务的由IPv4方发起通信的IPv4/IPv6翻译方法 |
CN103888555A (zh) * | 2014-03-26 | 2014-06-25 | 清华大学 | 一种IPv4/IPv6无状态翻译算法 |
CN116132397B (zh) * | 2022-11-28 | 2024-05-14 | 赛尔新技术(北京)有限公司 | IPv6至IPv4的转换方法以及转换装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1691665A (zh) * | 2004-04-21 | 2005-11-02 | 华为技术有限公司 | 一种IPv4网络与IPv6网络通信的实现方法 |
CN101068226A (zh) * | 2007-02-01 | 2007-11-07 | 西安交通大学 | IPv4/IPv6混合环境下多媒体交互网关实现方法 |
CN101431477A (zh) * | 2008-12-17 | 2009-05-13 | 清华大学 | 端到端运营商级和园区网路由器组合的IPv4/IPv6分组转换方法 |
-
2009
- 2009-07-16 CN CN200910089342.4A patent/CN101616192B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1691665A (zh) * | 2004-04-21 | 2005-11-02 | 华为技术有限公司 | 一种IPv4网络与IPv6网络通信的实现方法 |
CN101068226A (zh) * | 2007-02-01 | 2007-11-07 | 西安交通大学 | IPv4/IPv6混合环境下多媒体交互网关实现方法 |
CN101431477A (zh) * | 2008-12-17 | 2009-05-13 | 清华大学 | 端到端运营商级和园区网路由器组合的IPv4/IPv6分组转换方法 |
Non-Patent Citations (1)
Title |
---|
欧阳利军等.NAT技术及IPv4到IPv6地址转换研究.《信息技术》.2006,(第4期),91-93. * |
Also Published As
Publication number | Publication date |
---|---|
CN101616192A (zh) | 2009-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101610295A (zh) | 使用非特定IPv6地址的无状态IPv4/IPv6分组转换方法 | |
CN1118167C (zh) | 在网络上用域名路由选择发送数据到目的端的系统和方法 | |
CN101616192B (zh) | IPv4地址和端口复用的分级转换方法 | |
CN105791214A (zh) | 一种RapidIO报文和以太网报文之间的转换方法和设备 | |
CN102098355B (zh) | 基于云服务的由IPv6方发起通信的IPv4/IPv6翻译方法 | |
CN101431477B (zh) | 端到端运营商级和园区网路由器组合的IPv4/IPv6分组转换方法 | |
CN102098356A (zh) | 基于云服务的由IPv4方发起通信的IPv4/IPv6翻译方法 | |
CN102143250B (zh) | 非对称数字用户环线的IPv4/IPv6翻译和隧道组合通信方法 | |
CN101431478B (zh) | 端到端运营商级路由器和家庭网关组合的IPv4/IPv6分组转换方法 | |
CN101483602B (zh) | 基于准静态映射的IPv6客户机访问IPv4服务器的方法 | |
CN1549503A (zh) | 网络通信系统中用户位置信息的传递方法 | |
CN100428681C (zh) | 在ip网络中采用单播地址来标识多播组的方法 | |
CN104506460B (zh) | 一种实现napt端口资源分配的方法 | |
CN101938530B (zh) | 地址转换设备中用户身份认证及溯源方法 | |
CN101783818A (zh) | IPv4地址和端口复用的IPv6地址构造方法 | |
CN102594932B (zh) | 使用非特定IPv6地址的IPv4/IPv6分级转换方法 | |
CN102143251B (zh) | 面向运营商非对称数字用户环线的IPv4/IPv6翻译方法 | |
CN1866972A (zh) | 一种向量网络地址编码方法 | |
CN1243437C (zh) | 一种可穿越网络地址翻译的自动隧道的方法 | |
CN107277185B (zh) | 网络通讯系统及网络穿透方法 | |
CN101800740A (zh) | 互联网协议转换及地址转换的虚拟接口实现方法 | |
CN102594655A (zh) | 使用非特定IPv6地址的最小状态IPv4/IPv6分组转换方法 | |
CN1914887A (zh) | 至网际协议第六版通信网络设备的前缀自动分配 | |
TWI449391B (zh) | 識別碼的產生與辨識方法與通訊系統 | |
CN104468864B (zh) | 一种IPv6-in-IPv4隧道包的网络地址转换方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |