读书频道 > 网站 > 网页设计 > Linux网络安全技术与实现(第2版)
16.2.1 L2TP协议的原理
12-09-02    叶孤城
收藏    我要投稿   
《Linux网络安全技术与实现(第2版)》首先讨论网络基础架构,然后循序渐进地讲解安全、基于策略的路由、流量控制和虚拟专用网络等知识,带您在网络安全世界中尽情畅游。如果您准备投身Linux网络安全领域,那么这...立即去当当网订购

以图16-2为例,在L2TP服务器上有一组公网IP,在这个示例中,笔者假设其为10.0.1.210,我们假设客户端主机的IP是DHCP服务器所分配的,当L2TP连接建立之后,在L2TP服务器及客户端主机上会分别多出一个虚拟接口,这个虚拟接口的名称通常是PPP0,而且这两个PPP接口上的IP都属于同一个网段,因此这个结构看起来有点像把整个因特网当成一条虚拟连接来建立PPP连接,所以从192.168.0.1发送出去的数据就一定是给192.168.0.10,而从192.168.0.10发送出去的数据也一定是给192.168.0.1。

 
图16-2 L2TP示例图

在了解PPP及L2TP的工作模式之后,接下来以图16-2及图16-3为例来说明L2TP协议的工作原理。首先我们假设客户端主机要通过L2TP来建立VPN连接,并使用TELNET协议来连接192.168.0.20这台主机。一开始使用者在客户端主机上运行telnet 192.168.0.20命,通过TELNET协议来连接到192.168.0.20这台主机,然后这个数据包被送到传输层,并且在数据包前面封装上TCP包头.,接着数据包也被送入到网络层的位置,并且在数据包前面加上一个IP包头.。不过此时IP包头内的Source IP应该是192.168.0.10,而Destination IP应该是192.168.0.20,但接下来数据包并不是直接送到以太网来处理,而是送到PPP机制来处理.,并且在数据包的前端加上PPP包头。按照一般的做法,接下来数据包应该直接从网络实体层送离本机,但这里最特殊之处在于PPP会将数据包转发给L2TP机制.,并且在数据包的前面封装一个L2TP包头。

L2TP则又是一个更特殊的机制,L2TP会把整个数据包送回传输层.,接着在整个数据包的最前面再封装一个UDP包头,然后数据包会继续往下层发送到网络层.,这时数据包的最前端会再被封装一个IP包头,不过这个时候IP包头内的Source IP是客户端主机网络接口上的IP。在这个示例中是10.0.1.200,而Destination IP将会是10.0.1.210,如此这个数据包将可以通过这两个公网IP,将数据包跨过因特网送到L2TP服务器上。但在数据包送达L2TP服务器之后,数据包又是如何送到192.168.0.20呢?当然这又是另一种技术,不过这里暂不讨论,稍后将会进行完整描述。

 
图16-3 L2TP的工作原理

在了解了整个L2TP协议的工作原理之后,再来看实际截取的L2TP协议下的数据包。从图16-4中的数据包结构可以看到,其最下方的位置应该就是应用层协议的部分,接下来被封装上一个TCP包头,再封装一个IP包头,从这里我们可以清楚地看到IP包头内的IP是一组私有IP,接着则是被封装上一个PPP包头,再被加上L2TP包头;然后我们可以看到数据包被送回传输层,并且封装上UDP包头,接着再封装上IP包头,这个IP包头内的IP也是一组公网IP,最后数据包被送到以太网来处理,最后送离本机。
 



图16-4 L2TP协议的数据包结构

点击复制链接 与好友分享!回本站首页
分享到: 更多
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:1.3 功能
下一篇:1.5 小结
相关文章
图文推荐
JavaScript网页动画设
1.9 响应式
1.8 登陆页式
1.7 主题式
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做最好的IT技术学习网站