NAT&代理服务器技术调研


ForeWord


相信用过facebook等其他国外社交网站的小伙伴,都离不开一个东西——**软件

为什么不能直接通过网络连接访问这些网站,而要借助于这些软件呢?这个嘛,你懂得。。。

1

本文将介绍其背后的机制:NAT&代理服务器技术

Key Point

  1. 引言:为什么需要NAT&代理服务器技术
  2. 2者概念及区别

     tips:全文阅读需**3min**
    

引言


如果一个组织内部组建了局域网,那么IP地址将只用于局域网内的通信,而不直接连到Internet上。

理论上,使用任意的IP地址都可以连接网络,但是RFC1918规定了用于组建局域网的私有IP地址,这些地址不会出现在Internet上。

那这些私有IP地址就不能连接Internet了么?

156

So……

使用私有IP地址的局域网主机虽然没有Internet的IP地址,但也可以通过代理服务器或NAT(网络地址转换)等技术连到Internet上。


Concept


1. NAT技术

1.1 概念

关于NAT技术,百度百科的介绍是这样的:

563
博主最近又开始在百度盗图了,我的错,我有罪╮(╯﹏╰)╭

根据概念我们可以总结:

所谓NAT技术,就是在一个主机只能有一个IP地址的情况下,利用NAT路由器,将自身IP地址转换为一个有效的外部全球地址,从而连接全球Internet的技术。

1.2 技术背景

再来了818它的技术背景

378

所以,路由器真是个好东西୧(๑•̀⌄•́๑)૭碉堡

到这里,相信你已经对NAT技术有一个大致的了解了,但是我们还要知道它的原理和工作流程。

1.3 原理和工作流程

从上边的概念我们可以知道,借助于NAT,私有(保留)地址的”内部”网络通过路由器发送数据包时,私有地址被转换成合法的IP地址,一个局域网只需使用少量IP地址(甚至是1个)即可实现私有地址网络内所有计算机与Internet的通信需求。

再来看一下它的工作原理:

67

Step1:

    client(终端) 的 gateway (网关)设定为 NAT 主机,当要连上 Internet 的时候,该封包就会被送到 NAT 主机,这个时候的封包 Header 之 source IP(源IP) 为 192.168.1.100 

Step2:

   NAT 主机将 client 的对外联机封包的 source IP ( 192.168.1.100 ) 伪装成 ppp0 ( 假设为拨接情况 )这个接口所具有的公共 IP ,因为是公共 IP 了,所以这个封包就可以连上 Internet 了,同时 NAT 主机会记忆这个联机的封包是由哪一个 ( 192.168.1.100 ) client 端传送来的

Step3:

   Internet 传送回来的封包由 NAT主机来接收,NAT 主机查询原本记录的路由信息,并将目标 IP 由 ppp0 上面的公共 IP 改回原来的 192.168.1.100 

Step4:

   由 NAT 主机将该封包传送给原先发送封包的 Client 

这就是NAT技术的原理。

2. 代理服务器技术

2.1 概念

所谓“代理”,就是代而劳之的意思。代理服务器就是代理网络用户去取得网络信息,形象的说:它是网络信息的中转站,使得一个网络终端和另一个网络终端不直接进行相连,而由代理服务器代理网络用户去取得信息。主要工作在OSI的会话层中。

2.2 功能

代理服务器(Proxy Server)是Internet链路级网关所提供的一种重要的安全功能,主要的功能有:

编号功能
1突破自身IP访问限制,访问国外站点
2提高访问速度:通常代理服务器都设置了一个较大的硬盘缓冲区,当有外界的信息通过的时候,同时也将其保存在缓冲区中,当其他用户在访问相同的信息时,则直接有缓冲区取出信息,传给用户,以提高访问速度
3链接内网与Internet,充当防火墙:因为所有的内部网用户通过代理服务器访问外界时,只映射一个IP地址,所以外界不能直接访问到内部网;同时可以设置IP地址过滤,限制内部网对外部的访问权限
4节省IP开销:代理服务器允许使用大量的伪IP地址,节约上网资源,即代理服务器可以减少对IP地址的需求,对于使用局域网方式接入Internet,如果为局域网(LAN)内的每一个用户都申请一个IP地址,其费用可想而知。但使用代理服务器之后,只需代理服务器上有一个合法的IP地址,LAN内其他用户可以使用私有IP地址,这样可以节约大量的IP,降低网路的维护成本。
5隐藏真实IP:上网者可以通过这种方式隐藏自己的IP,以免受到攻击
6设置用户验证和记账功能,没有登记的用户无权通过代理服务器访问Internet网。并对用户的访问时间、访问地点、信息流量进行统计

2.3 工作流程

一个完整的代理请求过程为:

Step1: 客户端与代理服务器创建连接,接着根据代理服务器所使用的代理协议,请求对目标服务器创建连接或者获得目标服务器的指定资源(如文件)。
Step2: 如果客户端索要获取的资源在代理服务器的缓存之中,则代理服务器并不会向目标服务器发送请求,而是直接返回缓存的资源。

注意以下几点:

    1. 一些代理协议允许代理服务器改变客户端的原始请求、目标服务器的原始响应,以满足代理协议的需要。
    2. 代理服务器的选项和设置在计算机程序中,通常只包括一个“防火墙”,允许用户输入代理地址,他会这该他们的网络活动,可以允许绕过互联网过滤实现网络访问。

区别


虽然NAT技术和代理服务器技术都可以解决“翻墙”问题,但他们的区别可不小。

突出在以下几点:

  1. 运算成本和网络性能方面

    NAT:使用路由器,成本较低
    代理服务器:成本较高
    
  2. 网络安全性方面

    NAT: 工作原理决定了IP地址不能隐藏,用户主机容易受到攻击
    代理服务器:用户可以隐藏IP地址,以防受到攻击,安全性较高
    
  3. 访问速度

    NAT:  工作流程使访问速度受限
    代理服务器:设置了一个较大的硬盘缓冲区,当有外界的信息通过的时候,同时也将其保存在缓冲区中,当其他用户在访问相同的信息时,则直接有缓冲区取出信息,传给用户,以提高访问速度
    
  4. IP开销

    NAT: 要为局域网(LAN)内的每一个用户都申请一个IP地址
    代理服务器:允许使用大量的伪IP地址,节约上网资源,即代理服务器可以减少对IP地址的需求
    

The End


知道了这两个技术,以后看到舍友用facebook的时候还能顺便装个逼。妙哉妙哉……

本文引用:

  1. NAT技术百度百科
  2. 代理服务器和NAT技术

本篇博客到这里就结束了,青山不改,绿水长流。愿博主能活在你们每个人的心中:

191

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值