NAT(网络地址转换)

1 概念

NAT(网络地址转换)属接入广域网(WAN)技术,是一种将私有地址转化为合法IP地址的转换技术,它被广泛应用于各种类型Internet接入方式和各种类型的网络中。原因很简单,NAT不仅完美地解决了lP地址不足的问题,而且还能够有效地避免来自网络外部的***,隐藏并保护网络内部的计算机。

2 原理

客户端                                                                       服务端       

序号1:假设在局域网的客户端的一台电脑A(192.168.1.100)大打开了IE浏览器,IE浏览器程序运行后,就会打开本机的1111端口(这个端口是随机的,系统动态产生),然后若要浏览新浪首页,就在地址栏输入http://www.sina.com.cn/,即访问http://www.sina.com.cn/ (12.130.132.30:80),此时电脑A就向内网(局域网)发一个数据包,这个数据包不仅有数据(浏览网页),还包括源地址和目标地址。源地址和目的地址都是由IP和端口号组成,这里的源地址为:192.168.1.100:1111;目标地址为:12.130.132.30:80。数据包以广播的形式发出,局域网上的其他电脑均能收到但不会有响应,但是作为NAT服务器的计算机(本例为192.168.1.1)收到此数据包会有响应。

序号2和3: NAT服务器会将数据包的源地址(192.168.1.100:1111)改为122.195.93.74:2222,然后再根据数据包中的目标地址将这个数据包发送到目标地址12.130.132.30:80—新浪网站(WEB服务器),这个过程就是NAT,目标地址不变。

(注意:IE浏览器打开的端口和NAT服务器的映射端口都是随机产生的,但是一旦产生两者就是一一对应的映射的关系,不会被其它程序所使用。这种一一映射的关系在不中断IE浏览器程序运行的情况下,会一直保持,此时如果打开另一个网页,就会另外新建一个对应的映射关系)

序号4:新浪网站(WEB服务器)—12.130.132.30:80口运行的程序收到此数据包之后,处理分析得知,要把本站某网页内容复制后再发到NAT服务器,随即打包数据发送,这个数据包也有源地址和目标地址,源地址12.130.132.30:80(新浪),目标地址122.195.93.74:2222(NAT服务器)。

序号5:当NAT服务器收到数据包时,将目标地址从122.195.93.74:2222改成192.168.1.100:1111,这个过程也是NAT,源地址不变,为新浪网址12.130.132.30:80。

序号6:NAT服务器修改目标地址后,就向内网发送数据包,此时客户端运行的IE浏览器程序就会收到它所需要的外网数据,处理之后就能在客户端的显示器上将新浪网页显示出来。

上述过程完成了内网计算机通过NAT服务器和外网设备的一次完整通信。整个过程NAT服务器改变了两次地址,内网计算机发送数据包的过程中,NAT将源地址改变,目标地址一直不变;外网计算机发送数据包的过程中,NAT将目标地址改变,源地址一直不变。

代理服务器

原理

代理服务器有很多种,大体来说有http,ftp,socks()代理三种,其中又分透明代理和不透明代理。其中透明代理一般是网关,是硬件。
      当机器通过代理服务器上网时。通讯是分两次的,先是机器和代理服务器通讯,再是代理服务器和目的地址通讯。 
      机器和代理服务器通讯时,目的IP是代理服务器的IP。代理服务器和目的地址通讯时,源IP是代理服务器的IP,当外部的数据也是一样的,在内网中,出现的IP数据,全是内网和代理服务器的IP。因此,从IP包头是看不出任何与外面通讯的信息的。只有从数据中才能看到。

转载于:https://blog.51cto.com/zhangxinbei/1829081

NAT原理?代理服务器原理?相关推荐

  1. NAT和代理服务器的原理及应用

    NAT原理: NAT网络地址转换(NAT,Network Address Translation)属接入广域网(WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技术,它被广泛应用于各种类 ...

  2. 关于NAT/NAPT的原理,牢记这几点!

    各位朋友,大家晚上好,今天来给大家讲解一下NAT它解决了什么问题各位朋友,大家晚上好,今天来给大家讲解一下NAT它解决了什么问题还的呢,小老虎相信大家对这个工具应该是再也熟悉不过的了吧,因为咱们现在都 ...

  3. NAT技术代理服务器

    一.NAT ★什么是NAT 网络地址转换(NAT,Network Address Translation)属接入广域网(WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技术,它被广泛应用 ...

  4. 20181210-es6(letconst解构模版字符串原理 展开运算符、剩余运算符运用 深拷贝原理 reduce原理 箭头函数)...

    变量声明 var 特点: 1.可以重复声明 2.不能定义常量 3.不支持块级作用域 复制代码 let //1.不存在预解释 变量提升 //2.暂时性死区 //3.具备块级,同一块内不能重复声明;let ...

  5. MySQL主从复制原理(原理+实操)

    1.MySQL主从复制原理(原理+实操) 主从复制简介 在实际的生产中,为了解决Mysql的单点故障已经提高MySQL的整体服务性能,一般都会采用「主从复制」. 比如:在复杂的业务系统中,有一句sql ...

  6. Docker实现原理/容器原理(LXC,Cgroups,Docker)

    Docker实现原理/容器原理 Docker实现原理/容器原理 什么是容器(Container) 容器 传统架构问题 容器是什么 容器如何实现 Cgroups Cgroups是什么 Cgroups解决 ...

  7. Spring原理/SpringMVC原理/IOC/AOP原理

    Spring原理/SpringMVC原理/IOC/AOP原理 我的微型IOC框架实现 我的微型IOC框架实现 当你打开这本书的时候我要告诉你的第一句话就是认真把前言读完,因为前言概括的本书的大纲以及思 ...

  8. NAT(网络地址转换)技术与代理服务器原理

    一.    Nat技术: NAT英文全称是"Network Address Translation",中文意思是"网络地址转换",它是一个IETF(Intern ...

  9. NAT和代理服务器的原理及代表产品

    NAT原理: NAT网络地址转换(NAT,Network Address Translation)属接入广域网(WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技 术,它被广泛应用于各种 ...

最新文章

  1. KEGG功能注释工具 KofamKOALA 安装与使用
  2. 如何显示服务器上excel,如何在HTML中使用OWC正确显示、加载服务器端的excel文件呢?...
  3. 冲刺周期二--站立会议01
  4. java虚拟机如何判断两个类相同_你有没有想过: Java 虚拟机是如何判断两个对象是否相同的?判断的流程是什么?...
  5. 艾欧币 不需繁琐存币不用学习使用钱包
  6. mysql数据库发布到web服务器上_web应用发布至服务器
  7. vue delete删除json数组_vue面试题总结(二)
  8. 什么是恶意软件?病毒,蠕虫,特洛伊木马等有害程序
  9. 后台管理系统开发缺陷日志
  10. JSP教程|1小时玩转JSP网站开发技术
  11. python中两个大于号是什么意思_C语言中,两个大于号是什么意思?
  12. 创建服务器站点的步骤,如何自己建立网站 基本步骤和流程有哪些
  13. 南方航空认沽权证21日上市 初始行权价为7.43元
  14. Java买飞机票代码
  15. (字符串分解器)StringTokenizer类的使用_无名小仙男
  16. 解决无法在设置线程模式后对其加以更改问题:2147549446(0x80010106)
  17. 《吴恩达深度学习》编程作业-第二周
  18. C++之string
  19. 反射方程的分解、预计算BRDF
  20. 七天学会h5和css3之盒子模型内边距和外边距(27)

热门文章

  1. centos关闭邮件提醒
  2. 云服务器 ECS 建站教程:部署Linux主机管理系统WDCP
  3. 淘汰Hyper-V replication 拥抱Storage Replica
  4. angular项目整合到.net mvc中
  5. PHP5与MySQL数据库操作
  6. .NET_.NET Copy Web 部署概念_01-3
  7. Web前端技术趋势:HTML5仍不宜用作生产
  8. Hashmap扩容时出现循环链表(jdk1.8把头插法换成了尾插法的原因)
  9. Spark性能调优-RDD算子调优篇
  10. 算法题存档20190204