听CCIE大神说
面试被问了一个NAT的问题,有点懵,和PAT的概念有点混淆,PAT是一个静态映射表,那么NAT是什么?
咨询了朋友,一个CCIE大神,获得信息如下:
-
在Cisco的技术栈中,没有直接的PAT的概念,只有以下三种
- Static NAT
- Dynamic NAT
- 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 这段替换掉,重新打包封装发给内网,就回到了原来的主机。