最早接触NAT是在做网络工程师的时候,NAT是做网络工程师必需会的知识点和技能,后来在面试运维的时候也经常被用到,在运维的某些知识点当中也会被引用到,如LVS当中。

为什么需要NAT(网络地址转换)?因为IPV4时代公网IP地址缺,所以公司内部通常用的就是私网地址,公司内网的数据想要在互联网上传播就要将私网的地址转换为公网的地址,NAT技术就要用来做这个事情的,所谓的转换其实就将私网地址替换成公网地址,就是这么简单。

网络地址转换分为源地址转换和目的地址转换。源地址转换就是将源地址转换一下,如何转换呢?就是将私网的源IP替换成公网接口的IP,替换的时候会有替换对应的记录,在路由器会体现为一张表。那为什么会用到这张表呢?内网有很多电脑,都使用一个公网IP地址向公网发送数据包,那么当数据包回来的时候路由器怎么知道要将回包发送给哪一个私网电脑,所以路由器在进行源地址转换的时候就需要生成一张对应表,这张对应表的作用就是当数据包回来的时候,路由器可以根据这张表知道将数据转发给哪一个私网电脑。以上就是源NAT转换的基本原理,源NAT转换的根本目的是节省IPV4的公网地址。

此外还有一个目的地址转换,那么目的地址转换用在什么地方呢?目的地址转换用在内网DMZ区有服务器使用私网地址将服务发布到公网的场景中,客户端访问公网IP时,路由器就将公网IP替换成私网IP转换给私网DMZ区的服务器。

那么NAT地址用在什么地方呢?之前都是用在路由器上,但现在中低端的的路由器和防火墙逐渐有了整合的趋势,所以NAT也常见部署于网络出口防火墙上。

此外LVS里面的模式也有用到LVS的,原理差不多, 这里就不仔细说了。

如果笔试的时候如果问到这个问题,让我们阐述NAT的原理?如何用最简单、直白的方式说明呢?不能长篇大论吧,写的多了即影响美观又浪费时间,最好的方式就是画图了,所以我们去面试的时候最好是带着文具盒去,准备铅笔和橡皮,最好准备几张白纸,机会总是留给有准备的人。

NAT网络地址转换的原理--笔试答题版的更多相关文章

  1. [译] NAT - 网络地址转换(2016)

    [译] NAT - 网络地址转换(2016) Published at 2019-02-17 | Last Update 译者序 本文翻译自 2016 年的一篇英文博客 NAT - Network A ...

  2. NAT 网络地址转换

    NAT  网络地址转换(Network Address Translation) NAT(Network Address Translation,网络地址转换)是1994年提出的. 属接入广域网(WA ...

  3. CCNA学习 NAT网络地址转换

    CCNA基础 NAT网络地址转换 在计算机网络中,网络地址转换(Network Address Translation,缩写为NAT),也叫做网络掩蔽或者IP掩蔽(IP masquerading),是 ...

  4. NAT网络地址转换模拟过程

    原理图,如图1 图1 以下为配置NAT网络地址转换的实验: eNSP模拟图,如图2 图2 Step1.给路由器的每个接口赋予一个地址,如图3,图4 图3 图4 AR1和AR2中添加路由表项,如图5,图 ...

  5. iptables做nat网络地址转换

    iptables做nat网络地址转换. 0. 权威文档 http://www.netfilter.org/documentation/HOWTO/NAT-HOWTO-6.html e文好的直接跳过本文 ...

  6. NAT网络地址转换技术

    NAT网络地址转换技术 目录 一.NAT概述 1.1.概述 1.2.NAT 的应用场景 二.NAT的类型及配置命令 2.1.静态NAT 2.2.动态NAT 2.3.Easy IP 2.4.NATP 2 ...

  7. NAT—网络地址转换

    参考链接:http://www.qingsword.com/qing/745.html 视频链接: 一.什么是NAT? NAT --- Network Address Translation  也就是 ...

  8. firewalld 防火墙 nat 网络地址转换

    目的:实现以下效果 一. 准备环境 @1 三台虚拟机 @2  client 端 ip  192.168.1.2      server端   两块网卡 , ip 分别是 192.168.1.1   和 ...

  9. Nat网络地址转换

    Nat中的术语 -------------------------------------------------------------------------------------------- ...

随机推荐

  1. 让人又爱又恨的this

    this是个神奇的东西, 既可以帮助我们把模拟的类实例化. 又可以在事件绑定里准确指向触发元素. 还可以帮助我们在对象方法中操作对象的其他属性或方法. 甚至可以在使用apply.call.bing.f ...

  2. T-SQL 简介

    1. 变量说明语句:用来说明变量的命令. 2. 数据定义语言(Data Definition Language,DDL):用来建立数据库和定义列等数据结构,主要是create table,drop d ...

  3. java 常见高级开发面试题 非算法等特定岗 一

    基础1.List和Set区别 List:1.可以允许重复的对象. 2.可以插入多个null元素. 3.是一个有序容器,保持了每个元素的插入顺序,输出的顺序就是插入的顺序. 4.常用的实现类有 Arra ...

  4. 《Linux内核原理与分析》教学进程

    目录 2019-2020-1 <Linux内核原理与分析>教学进程 考核方案 第一周: 第二周: 第三周: 第四周: 第五周 第六周 第七周: 第八周 第九周 第十周 第十一周: 第十二周 ...

  5. VBA基础 - 分支和循环

    概要 编程语言的基础除了数据类型, 就是控制结构了. 所谓控制结构, 主要就是分支和循环. 分支 废话不说, 直接示例代码: 单条件判断 1 Sub Test() 2 If 2 > 1 Then ...

  6. CentOS7-安装后常见问题--ssh慢,汉字乱码gbk,-locale设置等

    00.ssh 慢问题解决修改:  [test@centos ~]$ sudo vi /etc/ssh/sshd_config /** 使用/命令查找 API 字符串*/ # GSSAPI option ...

  7. Autoware 培训笔记 No. 1——构建点云地图

    1. 首记 相信许多刚开始玩无人驾驶的人都用过Autoware,对runtime manager都比较熟悉,虽然可以通过各种渠道了解到有些设置,甚至有些设置的app下参数的含义,但是,在真车的使用过程 ...

  8. Rust从入门到放弃(1)—— hello,world

    安装及环境配置 特点:安全,性能,并发 rust源配置 RLS安装 cargo rust管理工具,该工具可以愉快方便的管理rust工程 #!/bin/bash mkdir learn cd learn ...

  9. LeetCode 1293. Shortest Path in a Grid with Obstacles Elimination

    题目 非常简单的BFS 暴搜 struct Node { int x; int y; int k; int ans; Node(){} Node(int x,int y,int k,int ans) ...

  10. ASP.NET Core快速入门(第5章:认证与授权)--学习笔记

    课程链接:http://video.jessetalk.cn/course/explore 良心课程,大家一起来学习哈! 任务31:课时介绍 1.Cookie-based认证与授权 2.Cookie- ...