Linux中IP隧道的分析与建议

2016-01-29 19:43 48 1 收藏

Linux中IP隧道的分析与建议,Linux中IP隧道的分析与建议

【 tulaoshi.com - Linux 】

  ****************************************************************

作者的话:

本文系在阅读Linux源码及一些相关资料的基础上写成的。

欢迎就文章的各个方面提出建议和批评意见,作者希望更多的交流和探讨。

欢迎在保留原文完整性的前提下在网上转贴,需部分引用请通知作者。

传统媒体转载和引用此文,请务必经过作者同意。

欢迎在实际的应用中使用此文提出的思想,希望同时知会作者。



作者信箱: xiaoman04@hotmail.com



欢迎来信!!
*****************************************************************

O、

由于网络的日益普及,网络的安全成为目前的热门话题。本文对隧道技术的分析,

就侧重安全领域,对利用隧道技术实现虚拟专网提出建议。



为什么需要IP隧道?没有接触过这个概念的人自然提出这样的疑问。实际上概念

最初的提出很简单,为了在TCP/IP网络中传输其他协议的数据包。设想IPX协议或

X.25封装的数据包如何通过Internet网进行传输,在已经使用多年的桥接技术中是

通过在源协议数据包上再套上一个IP协议头来实现,形成的IP数据包通过Internet后

卸去IP头,还原成源协议数据包,传送给目的站点。对源协议数据来说,就如被IP

带着过了一条隧道。这种技术在业余无线网络(Amateur Packet Radio network,

应该怎么翻,请告诉我)得到了最广泛的应用。

利用IP隧道来传送的协议包也包括IP数据包,本文主要分析的IPIP封包就是如此,从字

面来理解IPIP就对了,就是把一个IP数据包又套在一个IP包里。为什么要这么做呢?

多此一举嘛。其实不然,见过一些应用就会明白,移动IP(Mobile-IP)和IP多点广播

(IP-Multicast)是两个通常的例子。目前,IP隧道技术在构筑虚拟专网( Virtual 

Private Network)中也显示出极大的魅力。本文也将对利用IP隧道技术构筑VPN做

简单设想。







背景:隧道的多种理解和实现



Internet的研究者多年前就感到需要在网络中建立隧道,最初的理解是在网络

中建立一条固定的路径,以绕过一些可能失效的网关。可以说,隧道就是一条

特定的路径。

这样的隧道是通过IP报头中的源路由选项来实现的,在目前看来,这个方法的缺陷

十分明显。要设置源路由选项就必须知道数据包要经过的确切路径,而且目前

多数路由实现中都不支持源路由。



另一个实现隧道的机制是开发一种新的IP选项,用来表明源数据包的信息,原IP头

可能成为此选项的一部分。这种隧道的意义与我们所说的隧道已十分接近。但它的

不足在于要对目前IP选项的实现和处理做较大的修改,也缺乏灵活性。



最后常用的一种实现方法是开发一种新的IP封包协议,仍然套用当前的IP头格式。

通过IP封包,不须指明网络路径,封包就能透明地到达目的地。也可以通过封包空

间把未直接连接的机器绑在一起,从而创建虚拟网络。这种方法易行、可靠、可扩

展性强,Linux采用了这一方法,这也是目前我们所理解的隧道思想。







一、

封包协议的结构和实现



封包协议的实现原理十分简单。先看看通过隧道传送的数据报在网络中如何流动,

如图一。

为了叙述简便,我把在隧道中传送的IP数据包称为封包。



     --------------                    -----------

    /    子网A                       /   子网C   

   /                                /             

  |                  |              |               |

  |     &      

来源:http://www.tulaoshi.com/n/20160129/1509960.html

延伸阅读
标签: 手机游戏 IOS
细说《梦回大唐》中各大职业PK与建议 本人内测以来,最喜欢的就是PK。六十刺客的我与各种玩家职业都PK过。所以说说以下个人见解与建议。 【战士】 分狂战士和血战士。简单的说就是攻击跟血牛。但是在PK时攻击和血牛都是充当一个角色那就是血牛。挨打的命。为什么这么说呢?无可厚非的是攻击战士他的攻击并不怎么出色,可以换句话说,...
标签: 服务器
Linux如何禁止特定ip地址访问   Linux系统中,如果你需要禁止特定ip地址访问来保证系统的安全,只需通过操作iptalbes来实现,下面小编就给大家介绍下Linux如何禁止某个ip地址访问,感兴趣的朋友可以来了解下。 一、概述 这两个文件是tcpd服务器的配置文件,tcpd服务器可以控制外部IP对本机服务的访问。这两个配置文件的...
  原始文件:Linux IP Alias mini HOWTO 翻译日期:1997/10/23 翻译维护:cwhuang@phys.ntu.edu.tw ---------------------------------------------------------------------------------------------- 本文最後修改日期: January 13th 1997. 如何在 Linux 机器上设定 IP 别名(aliasing) G...
标签: 服务器
在Linux系统上实现IP转发的方法   大家好,今天我们学习一下在 Linux 上用 iptables 实现从一个网络接口到另一个接口的IP转发(数据包转发)。IP转发的概念是,使 Linux 机器像路由器一样将数据从一个网络发送到另一个网络。所以,它能作为一个路由器或者代理服务器,实现将一个连接的互联网或者网络连接共享给多个客户端机器。 ...
标签: 电脑入门
对于刚入门的Linux初学者来说,还不知道如何配置ip地址,今天图老师小编就给大家介绍下Linux系统要如何配置ip地址,希望能帮助到你。 (1)Ifconfig命令 第一种使用ifconfig命令配置网卡的ip地址。此命令通常用来零时的测试用,计算机启动后 ip地址的配置将自动失效。具体用法如下。Ipconfig ethx ipadd netmask x.x.x.x。 其中ethx中的x...

经验教程

776

收藏

58
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部