NAT

2020-07-22

img

听CCIE大神说

面试被问了一个NAT的问题,有点懵,和PAT的概念有点混淆,PAT是一个静态映射表,那么NAT是什么?

咨询了朋友,一个CCIE大神,获得信息如下:

  • 在Cisco的技术栈中,没有直接的PAT的概念,只有以下三种

    1. Static NAT
    2. Dynamic NAT
    3. Overloading

其中Overloading 等同于PAT

  • NAT可以是IP 映射IP 也可以是 IP+Port 映射 IP+Port

  • 如果是IP 映射IP 就有 Public IP Pool的概念

  • 静态NAT 是人工设定的

  • 动态NAT 是系统自动分配的,此时映射关系会有一个生命周期的概念,比如我们一般会设置500秒,或者120秒, 这段时间如果没有session保持,那么映射关系就会被清除。此时再有response 从公网发过来,就会被丢弃。一般来说这个时间周期内都没有返回的包, 那也不是什么正常的通讯。

  • NAT不管哪一种, 核心都是会使用translation table, 动态和静态的区别就是静态NAT在你配置完命令后这个表格里就有内容了

  • 大家会说NAT 某种程度上也起到一定的安全作用, 就是有里面向外的访问, 才可以让外面向内传输, 否则,外面不能直接凭空向内访问

自说自话

网关是如何处理外网对内网的应答呢?response 回到了网关,这时候根据包头中 destination 的 IP+Port 信息,对照映射表,网关就可以判断是内网里哪个 IP+Port ,把包中的 destination 这段替换掉,重新打包封装发给内网,就回到了原来的主机。