摘  要在IP地址紧缺的背景下,IPv6、NAPT、SuIP几种解决方案应运而生。分析、比较几种方案后,可知SuIP是最佳方案。

关键词:IPv6;NAPT;SuIP;IP地址空间扩展

The Investigation About Several Solutions To Expand The IP Address Space

Zhongxing Song

(Computer Science And Technology Academy Of Henan University, Kaifeng, 475004, China)

Abstract: In the background of the lacking of IP address space, several solution emerged, such as IPv6, NAPT, and SuIP. After the analysis of the solutions, SuIP is the best.

Key words: IPv6; NAPT; SuIP; Expand the IP address space

美国时间2011年2月3日,国际互联网名称和编号分配公司(英文简写:ICANN)宣布IPv4地址分配完毕。至2013年3月25日,中国大陆IPv4 地址数量约为3.30亿个,而今年三大运营商的IPv4地址将要告罄,与之相对应的一组数字是:截至2012年12月底,我国网民规模达5.64亿,全年共计新增网民5090万人。因此,IP地址紧缺问题也就成为我国乃至世界网络发展的一个瓶颈。目前针对这个问题,主要有IPv6、NAPT、SuIP三种可行的解决方案。下面将就这三种方案分析其各自优缺点。

 

1 IPv6

这种解决方案很易懂,即将IP位数又32位增加至128位,这样据说地球上每粒沙子都能分到一个IP。但这样带来问题也是显而易见的:

1)IP地址将会变的太过廉价,非法网站可能会掌握一大批IP,利用经常更换IP来逃避监管,这给网络监管带来极大困难。

2)网络边缘的设备可能会由于缺少动力,而不会统一行动。

3)IPv6需要网络上所有的节点都支持此协议,操作系统、软件等也需要更换。更严重的是大量的设备要更新硬件,这将造成成本的急剧提高。

这样看来IPv6的推广是有很大的难度的。

2 NAPT(Network Address and Port Translator)

NAPT首先用专用IP组建起来局域网,然后通过一个拥有一个或若干个全球IP的路由器,实现局域网内主机与互联网上主机的交互。如图1所示的拓扑结构中,主机1由30000端口向主机2的80端口发送请求时,路由器将源IP和端口修改为172.32.0.1:60000,并留下如表1的一条记录;当主机2向路由器60000端口发送报文时,路由器便会查找记录,发现记录中60000端口对应的网路主机IP和端口和发来的报文匹配上了,于是将目的IP和端口修改为172.20.0.1:30000并转发,若匹配失败,就丢弃报文。

这种方式可以极大扩展IP空间,目前我们常用的手机上网、WiFi、以及网通和电信提供的服务,此外还有教育网、大量的企业网也都采用这种方式来应对IP地址紧缺的情况。NAPT的缺点在于它的访问方式是单向的,也就是互联网上的其它主机不能主动访问私有网络里的主机,使得因特网中主机端到端的访问受到极大限制。虽然我们可以用端口来标识专用网中的IP,但这样就将使IP协议复杂化。

图1 NAPT拓扑示意图

表1 NAPT地址转换表

路由端口

局域网内主机IP端口

网络主机IP端口

60000

172.20.0.1:30000

172.33.0.1:80

3 SuIP

SuIP是由汪涛发明,其思想是基于NAPT,给每个使用专用地址的网络编号,就可实现从互联网上的主机主动向使用专用地址的主机发送数据。而其编号可以使用连接私有网络与互联网的路由器的全球IP,这样私有网络里的一个主机IP便可这样表示173.32.0.1.172.20.0.1。报文在互联网上传播时,在穿越了图1中路由器后只需将目的地址173.32.0.1替换为172.20.0.1,而其本身与IPv4所用的协议并无太大差别,所以升级只需将原来担任NAPT网关的路由器软件升级一下即可,成本极小。另外,SuIP可支持多层,所以其可以扩展的到的IP数量也极为可观。

4 结论

通过以上分析可知,在IPv6,、NAPT、SuIP三种扩展IP地址空间的解决方案中,SuIP是最佳方案。

参考文献:

[1]  谢希仁.计算机网络[M].第五版.北京市:电子工业出版社,2009.

[2]  汪涛.超级IP协议横空出世,IPv6进程面临彻底终止.[EB/OL]. http://unsnet.blog.163.com/blog/static/64284222200811104359780/,2008-02-01/2013-06-01.

[3]  李刚.IPv4和IPv6、IPv9研究的现状与分析.[EB/OL]. http://www.doc88.com/p-07339294725.html,未知/2013-06-01.

关于扩展IP地址空间的几个方案的探讨的更多相关文章

  1. PHP 扩展 trie-tree, swoole过滤敏感词方案

    在一些app,web中评论以及一些文章会看到一些*等,除了特定的不显示外,我们会把用户输入的一些敏感字符做处理,具体显示为*还是其他字符按照业务区实现. 下面简单介绍下业务处理. 原文地址:小时刻个人 ...

  2. 访问控制技术- 扩展IP访问列表

    1.设置pc IP 网关 192.168.1.1 192.168.1.254 192.168.1.2 192.169.1.254 192.168.3.1 192.168.3.254 192.168.3 ...

  3. EasyNVR摄像机网页直播中,推流组件EasyRTMP推送RTMP扩展支持HEVC(H.265)的方案

    众所周知,RTMP标准协议实际是不支持HEVC(H.265)编码格式的,同样,现行的H5标准里面,也没有对H.265的描述,所以,在很大程度上,H5网页浏览器是无法接入HEVC(H.265)的,但是, ...

  4. 空间搜索(圆范围)中Geohash编码方案和网格编码方案对比探讨

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 多个项目中实现范围(圆)搜索的方案为:依赖库表中的X和Y字段构 ...

  5. 七种方案!探讨Redis分布式锁的正确使用姿势

    前言 日常开发中,秒杀下单.抢红包等等业务场景,都需要用到分布式锁.而Redis非常适合作为分布式锁使用.本文将分七个方案展开,跟大家探讨Redis分布式锁的正确使用方式.如果有不正确的地方,欢迎大家 ...

  6. 彻底理解Cisco/Linux/Windows的IP路由

    -1.只要理解实质,名称并不重要! 很多使用Linux的网络高手在面对Cisco管理员的诸如管理距离,路由度量等词汇时,还没有PK就自觉败下阵来了.我觉得这实在太可惜了,大家本是一家,为何这么为难对方 ...

  7. IP地址 A\B\C类

    互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址),缩写为IP地址(IP Address),在Internet上,一种给主机编址的方式.常见的IP地址,分为 ...

  8. 八 ip和子网详解

    IP和子网掩码我们都知道,IP是由四段数字组成,在此,我们先来了解一下3类常用的IP A类IP段 0.0.0.0 到127.255.255.255  B类IP段 128.0.0.0 到191.255. ...

  9. Windows 之 IP地址

    IP地址是指互联网协议地址(Internet Protocol Address,又译为网际协议地址),是IP Address的缩写.IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络 ...

随机推荐

  1. 使用ANR-WatchDog来检測ANR

    使用开源项目ANR-WatchDog来检測ANR.下载链接为:https://github.com/SalomonBrys/ANR-WatchDog Eclipse版本号仅仅需下载相应的jar包.在主 ...

  2. 网站教学 提纲总结到ajax结束后面还有

    Repeater - 重复器五个模板:HeaderTemplate - 在最上面,显示一次FooterTemplate - 最下面,显示一次ItemTemplate - 在中间,显示n次Alterna ...

  3. 黑客白皮书:如何成为一名黑客(附FAQ)

    内容一览 为什么会有这份文档? 什么是黑客? 黑客应有的态度 黑客的基本技能 黑客文化中的地位 黑客和书呆子(Nerd)的联系 风格的意义 其它资源 FAQ(常问问题解答)   作为Jargon Fi ...

  4. 记录break和continue的区别

    我对break 和 continue 还是有点搞不清除,今天在看<Thinking in Java>,看到这个,学习了一下.       break的作用是跳出这个循环(如果这个break ...

  5. Oracle控制文件操作

    控制文件是连接instance和 database的纽带.记录了database的结构信息. 控制文件是1个2进制文件.记录的是当前database的状态. 控制文件可以有多个,在参数文件中通过con ...

  6. 【机器学习】SVM核函数

    知识预备 1. 回顾:logistic回归出发,引出了SVM,即支持向量机[续]. 2.  Mercer定理:如果函数K是上的映射(也就是从两个n维向量映射到实数域).那么如果K是一个有效核函数(也称 ...

  7. 《Java并发编程实战》第十六章 Java内存模型 读书笔记

    Java内存模型是保障多线程安全的根基,这里不过认识型的理解总结并未深入研究. 一.什么是内存模型,为什么须要它 Java内存模型(Java Memory Model)并发相关的安全公布,同步策略的规 ...

  8. nginx fastcgi 自定义错误页面

    http{ fastcgi_intercept_errors on; error_page 404 /404.html; } fastcgi_intercept_errors on;必须设置 之后通过 ...

  9. C++编程命名规范

    原地址:http://www.cnblogs.com/joinclear/archive/2013/02/21/2921422.html C++编程命名规范 0前言 根据多年工作经验和其它命名规范整理 ...

  10. .net Mvc文件下载的功能,大文件下载完成之后修改数据库功能

    原文:.net Mvc文件下载的功能,大文件下载完成之后修改数据库功能 我服务器上文件只能下载一次,下载了之后就不能下载了,大文件或网速不好时,可能服务端文件流发送完了,客户端还没下载完,导致下载失败 ...