iptable之SNAT的实现

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iptable之SNAT的实现相关的知识,希望对你有一定的参考价值。


概念:

定义:

SNATSource NAT(POSTROUTING):源地址转换,请求由内网的主机发起,修改IP源,外网的目的地址不变。

作用:

在生产环境中,源地址转换能够让我们公司的内网或者个人的主机可以访问外网而且不让自己的私网IP地址暴露在公网中,达到既能上网有隐藏ip防止被攻击的作用。

 

准备环境:

准备三台centos7的虚拟机

一台充当内网主机,ip地址为192.168.146.129

一台充当NAT Server,内网接口地址是192.168.146.120,

外网接口的地址是172.18.250.98.

一台充当外网,地址是172.18.250.195

 

实验拓扑图:

技术分享

实验步奏:

1、 分别centos7上的3台主机上关闭firewad和清空iptablesnat

[[email protected] ~]# systemctl stop firewalld

[[email protected] ~]# iptables  -F

2、  NDA Server 上打开内核转发

 [[email protected] ~]# echo 1  >/proc/sys/net/ipv4/ip_forward

3、   在内网的机器上添加内网的网关,外网添加外网对应的网关

          route add default gw 192.168.146.130  #内网

          route add default gw 172.18.250.98    #外网

4、  在NDA Server上做SNAT源地址转换规则

         iptables -t nat -A POSTROUTING  -s 192.168.146.0/24 -j SNAT

        --to-source172.18.250.98

5、  测试

在内网的机器上测试,ping 公网的IP结果是可以PING通外网。

技术分享

用外网ping内网,是不通的,说明实验成功了。

        [[email protected] ~]#  ping 192.168.146.129

        connect: Network is unreachable

 

注意事项:

1、NAT Server机器上一定要开启内核转发功能,就算做了策略,内网也ping不 通外网。

2、   SNAT源地址转换NAT表对应的链是POSTROUTING,不是PREROUTING链。

3、      SNAT源地址转换NAT是把源地址转换成外网网关的172.18.250.98,所以规则上填入的是--to-source 172.18.250.98


本文出自 “12180356” 博客,请务必保留此出处http://12190356.blog.51cto.com/12180356/1975724

以上是关于iptable之SNAT的实现的主要内容,如果未能解决你的问题,请参考以下文章

网络SNAT与DNAT防火墙之iptables

Linux防火墙iptables之SNAT与DNAT

iptables之SNAT与DNAT

Linux|计算机网络|iptables|dnat+snat实现外网访问局域网内部服务器

iptables 垫脚石之 NAT DNAT SNAT 代理 深度理解

firewall之iptables ,SNAT,DNAT