课程设计代做网站推荐,网站运行费用,网站开发毕业设计论文,年轻人必备的十大网站NAT技术
IPv4协议中#xff0c;会存在IP地址数量不充足的问题#xff0c;所以不同的子网中会存在相同IP地址的主机。那么就可以理解为私有网络的IP地址并不是唯一对应的#xff0c;而公网中的IP地址都是唯一的#xff0c;所以NAT#xff08;Network Address Translation会存在IP地址数量不充足的问题所以不同的子网中会存在相同IP地址的主机。那么就可以理解为私有网络的IP地址并不是唯一对应的而公网中的IP地址都是唯一的所以NATNetwork Address Translation网络地址转换技术是当前解决IP地址不够用的主要手段, 是路由器的一个重要功能。
NAT能够将私有IP对外通信时转为全局IP。也就是就是一种将私有IP和全局IP相互转化的技术方法。全局IP要求唯一但是私有IP不需要在不同的局域网中出现相同的私有IP是完全不影响的。 NAT转换过程 当客户端A想要向目标服务器发送数据时会进行在网络层将源IP和目的IP字段填充进报头字段中然后进行路由选择选择合适的发送路径。NAT路由器将源地址从10.0.0.10替换成全局的IP 202.244.174.37。NAT路由器收到外部的数据时, 又会把目标IP从202.244.174.37替换回10.0.0.10。在NAT路由器内部, 有一张自动生成的, 用于地址转换的表地址映射表。当 10.0.0.10 第一次向 163.221.120.9 发送数据时就会生成表中的映射关系。所以有了转换表以后不论是数据发送时私有IP向全局IP地址的转换还是数据接收时的全局IP向私有IP的转换都可以通过NAT路由器内部的路由表进行映射互为键值关系 如果此时客户端B 也在向目标服务器发送数据呢
NAPT
如果局域网内有多个主机都访问同一个外网服务器并且此时这些主机的端口号也是一样的话那么对于服务器返回的数据中目的IP都是相同的。那么NAT路由器在进行IP地址转换后的源地址都是NAT路由器的IP地址那么转换后的源目的IP组就都是一样的了所以数据就回不来了。
这时候NAPT来解决这个问题了。使用IPport来建立这个关联关系 可以看出当我们的同一局域网下的主句同时访问相同服务器的话那么 NAT路由器在转换的过程中会将源IP转换成NAT路由器的IP地址端口的转换就取决于该路由表中是否存在重复的IPPORT组如果不重复就端口号不变如果重复就同时替换端口号。NAT的右侧不一定是公网也可能是运营商构建的子网。内网路由器在向上转发报文的时候都会将源IP替换成路由器WAN口IP NAT技术的缺陷
无法一开始从NAT外部向内部服务器建立连接NAT转换表未形成可以看作内网主机保护转换表的生成和销毁都需要额外开销。通信过程中一旦NAT设备异常即使存在热备所有的TCP连接也都会断开。 代理服务器
代理服务器Proxy Server是一种位于客户端与目标服务器之间的中介服务它充当了客户端和目标服务器之间的“代理”接收来自客户端的请求并将其转发给目标服务器然后将目标服务器的响应返回给客户端。也就是说代理服务器的作用就相当于一个中间跑路人。
正向代理工作原理
正向代理服务器也称为客户端代理位于客户端和目标服务器之间。它的主要功能是代替客户端向目标服务器发送请求并将目标服务器的响应返回给客户端。 当客户端在浏览器中设置好代理服务器后所有通过该浏览器发出的网络请求都会先发送给代理服务器。代理服务器接收到请求后会检查自己是否有缓存的响应数据。如果有则直接返回给客户端如果没有则向目标服务器发起请求并将获取到的响应数据返回给客户端。同时代理服务器还会将响应数据缓存起来以便后续相同请求的快速响应。以上的过程其实我们的校园网就在使用
优点
资源共享代理服务器内部缓存资源内网安全隐藏客户端的真实IP用户拦截客户端访问的URL是可视的 反向代理工作原理
反向代理服务器位于目标服务器和客户端之间。主要功能是接收客户端的请求并将这些请求转发给后端的多个服务器中的一个进行处理。 优点
负载均衡将客户端的请求分发到多个服务器上进行处理提高系统的性能和可靠性。提供安全性反向代理服务器可以隐藏真实的服务器地址和配置信息增加系统的安全性。同时它还可以对请求进行过滤和检查防止恶意攻击和非法访问。 NAT与代理服务器比较 从应用上讲NAT设备是网络基础设备之一解决的是IP不足的问题。代理服务器则是更贴近具体应用比如通过代理服务器进行翻墙另外像迅游这样的加速器也是使用代理服务器。从底层实现上讲NAT是工作在网络层直接对IP地址进行替换。代理服务器往往工作在应用层。从使用范围上讲NAT一般在局域网的出口部署代理服务器可以在局域网做也可以在广域网做也可以跨网。从部署位置上看NAT一般集成在防火墙路由器等硬件设备上代理服务器则是一个软件程序 需要部署在服务器上。 内网打洞和内网穿透
内网打洞
内网打洞主要用于解决两个私有网络内网中的设备之间直接通信的问题。内网打洞依赖于NAT技术通过在内网和外网之间建立一个虚拟通道使得内网主机能够通过这个通道与另一个内网进行通信。
实现过程 共享信息两个位于不同私有网络的设备例如PC1和PC2首先需要通过某种方式如通过共同访问公共服务器从而公共服务可以分别拿到PC1和PC2两台主机的公网入口路由器的IPport。服务器得知两台主机各自的公网入口路由器的IPPort之后然后服务器将两台主机公网入口路由器的IPport返回给对方主机那么此时PC1就可以拿到PC2的公网入口路由器的IPport同时PC2就可以拿到PC1的公网入口路由器的IPport。 触发NAT映射接着双方设备几乎同时向对方的入口路由器的公网IP地址和端口发送UDP数据包。这些数据包触发了各自的NAT设备并且也会在NAT转换表中创建临时的NAT映射规则允许后续来自相同源IP地址和端口的数据包通过。 直接通信一旦双方的NAT设备都建立了映射规则双方设备就可以直接进行通信绕过任何中间服务器。 内网穿透
内网穿透也称为NAT穿透的基本原理是通过某种方式让外网设备能够访问到内网中的资源。
实现过程内网穿透的原理其实和内网打洞的原理是一样的但是实现过程有些许差异。首先两个内网想要进行通信如PC1和PC2。首先PC2会访问服务器建立tcp连接那么此时途中NAT路由器就会构建生成NAT转化表然后紧接着PC1将想要发送的数据发给相同的服务器此时PC1在访问服务器的这条路径中所有NAT路由器的NAT转换表同样形成然后该服务器将数据返回给PC2通过构建好的NAT转换表。此后双方就建立起通信。其实接下来也可以采用打通的方式进行通信。