注意: IP代理精灵仅提供国内ip网络节点,不提供境外网络节点,不能用于任何非法用途或访问境外封闭网站,不能跨境联网,只能用于合法的国内网络加速。

请登录 注册

首页 > 新闻资讯 > 代理服务器、路由和NAT技术的区别

代理服务器、路由和NAT技术的区别

来源:IP代理精灵 作者:admin 时间:2019-06-12 13:56:25

代理服务器、路由和NAT技术是三种常用的局域网接入Internet的技术,大家知道这三者有什么区别吗?今天就来为各位讲讲代理服务器、路由和NAT技术的区别。


一、直接路由


第一种方法比较简单直接,不过要求客户机都有真实IP,仅这一点,大多数的环境就无法满足–IP地址可是紧缺资源哦。而且一台硬件路由器的价格不斐,真实IP挂在网上安全上也让人不放心。所以这种方案应用得不多。


二、代理服务器


代理服务器(Proxy Server)是一种重要的服务器安全功能,它的工作主要在(OSI)模型的会话层,从而起到防火墙的作用。代理服务器大多被用来连接INTERNET(国际互联网)和Local Area Network(局域网)。


代理分类:HTTP代理;socks代理;VPN代理;FTP代理:


工作原理


客户端首先与代理服务器创建连接,接着根据代理服务器所使用的代理协议,请求对目标服务器创建连接、或者获得目标服务器的指定资源(如:文件)。


在后一种情况中,代理服务器可能对目标服务器的资源下载至本地缓存,如果客户端所要获取的资源在代理服务器的缓存之中,则代理服务器并不会向目标服务器发送请求,而是直接返回缓存了的资源。一些代理协议允许代理服务器改变客户端的原始请求、目标服务器的原始响应,以满足代理协议的需要。代理服务器的选项和设置在计算机程序中,通常包括一个“防火墙”,允许用户输入代理地址,它会遮盖他们的网络活动,可以允许绕过互联网过滤实现网络访问。


功能


* 突破自身IP访问限制:*访问一些国外的站点;比如Google,Facebook等网站;


提高访问速度:通常代理服务器都设置一个较大的硬盘缓冲区,当有外界的信息通过时,同时也将其保存到缓冲区中,当其他用户再访问相同的信息时, 则直接由缓冲区中取出信息,传给用户,以提高访问速度;


隐藏真实IP:上网者也可以通过这种方法隐藏自己的IP,免受攻击;


连接内网与Internet,充当防火墙(Firewall):因为所有内部网的用户通过代理服务器访问外界时,只映射为一个IP地址,所以外界不能直接访问到内部网;同时可以设置IP地址过滤,限制内部网对外部的访问权限;


节省IP开销:代理服务器允许使用大量的伪IP地址,节约网上资源,即用代理服务器可以减少对IP地址的需求,对于使用局域网方式接入Internet ,如果为局域网(LAN)内的每一个用户都申请一个IP地址,其费用可想而知。但使用代理服务器后,只需代理服务器上有一个合法的IP地址,LAN内其他用户可以使用10...*这样的私有IP地址,这样可以节约大量的IP,降低网络的维护成本;


设置用户验证和记账功能,可按用户进行记账,没有登记的用户无权通过代理服务器访问Internet网。并对用户的访问时间、访问地点、信息流量进行统计;


三、NAT技术


工作在网络层


NAT(Network Address Translation)网络地址转换,用于将访问Internet上公网的私有IP地址转换为合法的公有IP地址,以少量的公有IP地址代替大多的私有IP地址访问的方式,能有助于减缓IP地址不足的问题,同时能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。


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


NAT将自动修改IP报文的源IP地址和目的IP地址,Ip地址校验则在NAT处理过程中自动完成。有些应用程序将源IP地址嵌入到IP报文的数据部分中,所以还需要同时对报文的数据部分进行修改,以匹配IP头中已经修改过的源IP地址。否则,在报文数据部分嵌入IP地址的应用程序就不能正常工作。


私有 IP 地址是指内部网络或主机的IP地址,公有IP地址是指在因特网上全球唯一的IP地址。RFC 1918 为私有网络预留出了三个IP 地址块,如下:


A 类:10.0.0.0——10.255.255.255


B 类:172.16.0.0——172.31.255.255


C 类:192.168.0.0——192.168.255.255


上述三个范围内的地址不会在因特网上被分配,因此可以不必向ISP 或注册中心申请而在公司或企业内部自由使用;


NAT服务器有内部和外部两个网卡,只有当内外部网络之间需要进行数据传送时,才进行地址转换。在NAT服务器上都维护一张状态表,称为NAT表。该表记录每个数据包在NAT服务器上被转换的情况。根据采用的地址转换技术不同,可以分为三类:静态转换、动态转换和端口多路复用;


用图来展示NAT技术原理

image.png

静态转换


静态转换是指将内部网络的私有IP地址转换为公有IP地址,IP地址对是一对一的,是一成不变的,某个私有IP地址只转换为某个公有IP地址。借助于静态转换,可以实现外部网络对内部网络中某些特定设备(如服务器)的访问。


首先,当内网终端要访问外网服务器时,会先将请求发送给NAT服务器;


NAT服务器接收到请求后,根据接收到的数据包检查NAT表;如果已为该地址配置了静态地址转换,NAT服务器就使用对应的公网IP地址转发数据包,否则,NAT服务器不对地址进行转换,直接将数据包丢弃;


Internet主机接收到请求之后,会将应答信息返回给端口NAT服务器;


当NAT服务器接收到来自Internet上的主机返回的数据包后,检查静态NAT表。如果NAT表中存在匹配的映射项,则将目标地址转换为相应的内网IP,并将数据包转发给内网主机。如果不存在匹配映射项,则将数据包丢弃;


动态转换


动态转换是指将内部网络的私有IP地址转换为公用IP地址时,IP地址是不确定的,是随机的,所有被授权访问上Internet的私有IP地址可随机转换为任何指定的合法IP地址。也就是说,只要指定哪些内部地址可以进行转换,以及用哪些合法地址作为外部地址时,就可以进行动态转换。动态转换可以使用多个合法外部地址集。当ISP提供的合法IP地址略少于网络内部的计算机数量时。可以采用动态转换的方式。


动态转换的过程和静态转换差不多,只是其转换成对应的合法公有IP地址是不确定的,也就是随机分配的;


端口多路复用


端口多路复用是指改变外出数据包的源端口并进行端口转换,即端口地址转换(PAT,Port Address Translation).采用端口多路复用方式。内部网络的所有主机均可共享一个合法外部IP地址实现对Internet的访问,从而可以最大限度地节约IP地址资源。同时,又可隐藏网络内部的所有主机,有效避免来自internet的攻击。因此,目前网络中应用最多的就是端口多路复用方式。


当内网主机需要与Internet建立连接时,首先将请求发送到端口NAT服务器。NAT服务器接收到请求后,根据接收到的数据包,检查端口NAT映射表;如果还没有为该内网主机建立地址转换映射项,则NAT服务器会创建一个会话,并给该会话分配一个端口。之后将源地址及端口改为企业公网IP地址及相应的端口,发送数据包到Internet主机上;


Internet主机接收到信息后,将应答信息返回给端口NAT服务器;


当端口NAT服务器接收到应答信息后,检查端口NAT映射表。如果端口NAT表存在匹配的映射项,则将目标地址及端口转换为对应的内网IP及端口,将数据包转发给内网主机。如果不存在匹配映射项,就将数据包丢弃;


最新资讯

推荐阅读

  1. 17

    2019-05

    爬虫怎样选择ip代理软件

    在我们学习各种编程语言的时候,出现各种异常是很常见的,拿最简单最基础的爬虫采集数据为例,过程中就会面临,IP被封,爬取受限、违法操作等多种问题,所以在爬取数据之前,一定要了

  2. 24

    2019-05

    为什么说电商要使用高匿IP代理

    随着电商的日益火爆和激烈,越来越多的人加入到电商大军当中,电商也由之前躺着挣钱变成了需要争夺客源,那么在争夺流量的方式上,很多店铺会采用IP代理来刷店铺点击、收藏、成交来增

  3. 08

    2019-11

    Java如何利用代理IP发送HTTP请求?

    Java如何利用代理IP发送HTTP请求?大数据时代下,数据采集推动着数据分析,数据分析推动发展。但是在这个过程中会出现很多问题。拿最简单最基础的爬虫采集数据为例,过程中就会面临,IP被

  4. 23

    2019-08

    IP代理精灵带你了解什么是代理IP

    代理,也称网络代理,是一种特殊的网络服务,允许一个网络终端(一般为客户端)通过这个服务与另一个网络终端(一般为服务器)进行非直接的连接。使用代理IP有利于保障网络终端的隐私

  5. 27

    2019-05

    python爬虫需要了解的代理IP知识

    代理IP,作为现代网络兴起的一种上网方式,被逐步应用于人们的学习、生活中。特别是一些python爬虫,为了业务的顺利进行,代理IP算得上是必备资源。那什么是代理IP呢?大家都知道,IP地址

  6. 08

    2019-10

    PHP如何获取代理IP?

    PHP如何获取代理IP?PHP,超文本预处理器,是一种通用开源脚本语言,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用P