dnat

Linux虚拟网络基础——NAT

怎甘沉沦 提交于 2019-11-26 10:56:16
一 NAT的基本概念 在讲述nat这张表如何处理之前,先了解一下NAT的基本概念。 NAT(Network Address Translation,网络地址转换),顾名思义,就是从一个IP地址转换为另一个IP地址。当然,这里面的根本原因是还是IP地址不够用的问题(解决IP地址枯竭的方法一个是IPv6,另外一个是NAT)。所以NAT,大家基本做得还是公网地址与私网地址的互相转换。如果一定要在公网地址之间转换,或者私有地址之间互相转换,技术上是支持的,只是这种场景非常少。 NAT,从实现技术角度,分为:静态NAT、动态NAT和端口复用三种方案。 1 静态NAT 静态NAT,有两个特征: 1.1 私网IP地址与公网IP地址的转换规则是静态指定的,比如10.10.10.1与50.0.0.1互相转换,这个是静态指定好的。 1.2 私网IP地址与公网IP地址是1:1,即一个私网IP地址对应1个公网IP地址。 2 动态NAT 一般情况下是公网IP比私网IP少的时候,用到动态NAT方案。如果公网IP地址比私网IP地址多或者相等,则用静态NAT就可以了,没必要这么麻烦。 动态NAT,就是一批私网IP地址与公网IP地址之间不是固定的转换关系,而是在IP报文处理过程中由NAT模块进行动态匹配。虽然,公网IP比私网IP地址少,但是,同时在线的私网IP需求小于等于公网IP数量

NAT的实现

杀马特。学长 韩版系。学妹 提交于 2019-11-26 10:51:03
三-四-三、NAT的实现 可以使用 iptables nat 表来实现网络地址转换(NAT)。NAT 包括 SNAT (源地址转换)和 DNAT (目的地址转换)。两者的区别在于做地址转换是在路由前还是路由后: 1)SNAT:路由 - 转换 - 发出 数据经过时, 源地址发生改变,目的地址不变。SNAT 的具体数据流向: 1.封包先经过 PREROUTING,检查目的 IP 是不是本网段的地址。是的话,走filter表的INPUT。 2.如果不是,则开始查询路由表,查找到相应路由条目后(查找路由的过程在 PREROUTING 和 FORWARD 之间),经过 FORWARD 链进行转发,再通过 postrouting 时进行NAT转换。 从这里可以看出,SNAT转换的步骤在 POSTROUTING 链上实现, PREROUTING 只是用来做路由选择。因此,要做 SNAT 的话,需要添加 POSTROUTING 规则,使用 “-j SNAT -to-source”。比如: iptables -t nat -A POSTROUTING -s 192.168.252.0/24 -j SNAT --to-source 100.100.100.1 (2)DNAT:转换 - 路由- 发出 DNAT 的功能正好和 SNAT 相反,源地址不变,目的地址发生改变。DNAT 可以用作 PNAT

Palo alto防火墙配置Nat详解

吃可爱长大的小学妹 提交于 2019-11-25 23:38:06
NAT 策略的区域选择基于 NAT 前地址区域 1 、 snat ,主要用于防火墙内部用户访问外网 举例如下所示: ps:在源地址转换中,转换类型有静态ip,在这种情况下,内部的一个服务器私有地址被转为一个公网地址来上网;如果勾选了双向,外部用户可以通过该公网地址来访问内部的服务器。但是静态ip模式的优先级比较低,如果想让该策略生效,需要把该策略放到最前面。 使用场景如下图所示: 2 、 dnat ( ip mapping ) ,将某一个公网地址单独的映射给内部的某一台服务器。 在做dnat时,区域基于nat前 地址所在的区域。源区域一般为untrust,目标区域要使用驻留公共 IP 地址的区域(即untrust)来配置 NAT 策略,在这种情况下,源和目标区域将是相同的。 配置完dnat后,还需要配置相应的放行策略,如下图所示,源zone为untrust,目的zone为dmz,目的ip为服务器映射的公网地址。 3 、 dnat ( port mapping ) ,将某一个公网地址的不同端口映射给内部的不同服务器的不同端口。 4 、 dnat (内部用户通过公网地址访问内部服务器) trust用户也通过访问3.1.1.100来访问内部服务器。 5 、 dnat ( server 和内部用户都在 trust 区域) 默认trust-trust为放行的。 ps:在monitor>日志