目录

一.网络地址转换NAT

1.什么是网络地址转换NAT

2.NAT路由器的工作原理


一.网络地址转换NAT

1.什么是网络地址转换NAT

下面讨论一种情况,就是在专用网内部的一些主机本来已经分配到了本地IP地址,(即仅在本专用网内使用的专用地址),但现在又想和互联网上的主机通信(并不需要加密),那么应当采取什么措施呢?

最简单的办法就是设法再申请一些全球IP地址。但这在很多情况下是不容易做到的,因为全球IPV4的地址已所剩不多了。目前使用得最多的方法是采用网络地址转换。

网络地址转换NAT,这种方法需要在专用网连接到互联网的路由器上安装NAT软件。装有NAT软件的路由器叫做NAT路由器,它至少有一个有效的外部全球IP地址。这样,所有使用本地地址的主机在和外界通信时,都要在NAT路由器上将其本地地址转换成全球IP地址,才能和互联网连接。下图给出了NAT路由器的工作原理。在图中,专用网192.168.0.0内所有主机的IP地址都是本地IP地址192.168.x.x。NAT路由器至少要有一个全球IP地址,才能和互联网相连。图中表示出NAT路由器有一个全球IP地址172.38.1.5(当然,NAT路由器可以有多个全球IP地址)。

2.NAT路由器的工作原理

在上图中,NAT路由器收到从专用网内部的主机A发往互联网上主机B的IP数据报:源IP地址是192.168.0.3,而目的IP地址是213.18.2.4。NAT路由器把IP数据报的源IP地址192.168.0.3,转换为新的源IP地址(即NAT路由器的全球IP地址)172.38.1.5,然后转发出去。因此,主机B收到这个IP数据报时,以为A的IP地址是172.38.1.5。当B给A发送应答时,IP数据报的目的IP地址是NAT路由器的IP地址172.38.1.5。B并不知道A的专用地址192.168.0.3.实际上,即使知道了,也不能使用,因为互联网上的路由器都不转发目的地址是专用网本地IP地址的IP数据报。当NAT路由器收到互联网上的主机B发来的IP数据报时,还要进行一次IP地址的转换。通过NAT地址转换表,就可把IP数据报上的旧的目的P地址172.38.1.5,转换为新的目的P地址192.168.0.3(主机A真正的本地IP地址)。

由此可见,当NAT路由器具有n个全球IP地址时,专用网内最多可以同时有n台主机接入到互联网。这样就可以使专用网内较多数量的主机,轮流使用NAT路由器有限数量的全球IP地址。

显然,通过NAT路由器的通信必须由专用网内的主机发起。设想互联网上的主机要发起通信,当IP数据报到达NAT路由时,NAT路由器就不知道应当把目的IP地址转换成专用网内的哪一个本地IP地址。这就表明,这种专用网内部的主机不能充当服务器用,因为互联网上的客户无法请求专用网内的服务器提供服务。

为了更加有效地利用NAT路由器上的全球IP地址,现在常用的NAT转换表把运输层的端口号也利用上。这样,就可以使多个拥有本地地址的主机,共用一个NAT路由器上的全球IP地址,因而可以同时和互联网上的不同主机进行通信。使用端口号的NAT也叫做网络地址与端口号转换NAPT,而不使用端口号的NAT就叫做传统的NAT。但在许多文献中并没有这样区分,而是不加区分地都使用NAT这个更加简洁的缩写词。下表说明了NAPT的地址转换机制。

从上表可以看出,在专用网内主机192.168.0.3向互联网发送IP数据报,其TCP端口号选择为30000。NAPT把源IP地址和TCP端口号都进行转换(如果使用UDP,则对UDP的端口号进行转换。原理是一样的)。另一台主机192.68.0.4也选择了同样的TCP端口号30000这纯属巧合(端口号仅在本主机中才有意义)。现在NAPT把专用网内不同的源IP地址都转换为同样的全球IP地址。但对源主机所采用的TCP端口号(不管相同或不同),则转换为不同的新的端口号。因此,当NAPT路由器收到从互联网发来的应答时,就可以从IP数据报的数据部分找出运输层的端口号,然后根据不同的目的端口号,从NAPT转换表中找到正确的目的主机。

计算机网络 | NAT | 什么是NAT | 网络地址转换相关推荐

  1. NAT(Network Address Translation)网络地址转换

    NAT(Network Address Translation)网络地址转换 (不止能pingt通,可以访问网站) 背景:IPv4地址不够用 IPv6 IPv4:32位 2^32 IPv6:128位 ...

  2. java nat 端口转发_NAT网络地址转换——静态NAT,端口映射(实操!!)

    NAT概述 NAT(Network Address Translation,网络地址转换)是1994年提出的.当在专用网内部的一些主机本来已经分配到了本地IP地址(即仅在本专用网内使用的专用地址),但 ...

  3. NAT详解(网络地址转换)

    目录 一句话说清楚它是干什么的: 概念: 实现方式: 重点理解: 优缺点: 优点 缺点 一句话说清楚它是干什么的: 网络地址转换:是指通过专用网络地址转换为公用地址,从而对外隐藏内部管理的IP地址,它 ...

  4. 接入广域网技术——NAT内、外部网络地址转换

    NAT基本IP地址转换原理 总体来说,NAT进行地址转换的过程就是"本地地址"与"全局地址"之间的转换过程,无论数据包是从内部网络发往外部网络,还是从外部网络发 ...

  5. 外部地址是什么意思_NAT网络地址转换

    目录 一.NAT是什么? 二.为什么需要NAT? 三.NAT的类型 四.NAT的配置 一.NAT是什么? 网络地址转换(NAT,Network Address Translation)属接入广域网(W ...

  6. 【计算机网络】思科实验(8):网络地址转换之路由器动态NAT模拟

    系列文章目录 [计算机网络]思科实验(1):交换机的VLAN划分 [计算机网络]思科实验(2):交换机间的VLAN通信 [计算机网络]思科实验(3):使用三层交换机实现跨VLAN间的通信 [计算机网络 ...

  7. 【计算机网络】思科实验(7):网络地址转换之路由器静态NAT模拟

    系列文章目录 [计算机网络]思科实验(1):交换机的VLAN划分 [计算机网络]思科实验(2):交换机间的VLAN通信 [计算机网络]思科实验(3):使用三层交换机实现跨VLAN间的通信 [计算机网络 ...

  8. 计算机网络之网络层:5、DHCP协议、ICMP协议、网络地址转换NAT

    网络层:5.DHCP协议.ICMP协议.网络地址转换NAT TCP/IP协议栈: IP获取方式: NAT网络地址转换: DHCP工作流程: ICMP协议: ICMP报文格式: ICMP报文类型: IC ...

  9. 【计算机网络】Internet原理与技术2(因特网的路由协议RIP、OSPF、BGP,网络地址转换NAT,网络协议IPv6)

    Internet原理与技术 因特网的路由协议 自治系统与路由协议分类(IGP.EGP) 内部网关协议 - RIP [例]RIP路由信息表的交换 RIP工作过程 内部网关协议 - OSPF 外部网关协议 ...

最新文章

  1. 日志模块 logging
  2. 更改WSSv3站点集访问地址
  3. nyist 303 序号互换
  4. CNDO-INTGRL-SS-BINTGS-斯莱特轨道指数--- 精确方法
  5. SonarQube系列二、分析dotnet core/C#代码
  6. html画等边三角形,前台面试:使用CSS画一个等边三角形
  7. 开源GraphView的使用--数据统计
  8. Docker 精通之 Dockerfile
  9. 2019最全BAT资深Java面试题答案合集,建议收藏~
  10. c语言程序综合实习学生成绩,C语言程序设计综合实习报告
  11. LeetCode_database刷题记录(182. 查找重复的电子邮箱)
  12. 物联网大数据如何改善农业运营
  13. [译文]使用VBA-SDL-H寻找图片
  14. .Net FW上线报错:The OwinStartup attribute discovered in assembly ‘AppName‘.
  15. nn.functional.normalize
  16. (PADA)Partial Adversarial Domain Adaptation笔记
  17. 笔记本电脑换加内存条与加固态硬盘详细介绍
  18. 递归详解——让你真正明白递归的含义
  19. 计算圆、圆球和圆锥的面积和体积
  20. 为什么字库取模软件的取模只有人家的一半?

热门文章

  1. 知海匠库 | 毕业生起薪降了?我们能怎么办?
  2. java都市男人心痒痒_一招让男人想你到发疯-撩的男人心痒痒的话
  3. SuperMap GIS 三维方向矢量数据优化详解
  4. java jsqlparse,JSqlParser使用
  5. win11右键菜单恢复默认显示更多选项
  6. 国内网站免备案需要条件
  7. @ComponentScan包扫描机制
  8. Cocos Creator JSZip压缩
  9. java程序设计-推箱子(董可举、于泮之)
  10. Java-线程池 ThreadPool 专题详解 (美团面试题)