天天看点

Snat Dnat 的发布策略

snat 源地址转换

源地址转换是内网地址向外访问时,发起访问的内网ip地址转换为指定的ip地址(可指定具体的服务以及相应的端口或端口范围),这可以使内网中使用保留ip地址的主机访问外部网络,即内网的多部主机可以通过一个有效的公网ip地址访问外部网络。

步骤如下

  1. 图解
Snat Dnat 的发布策略

准备A、B两台liunx机器并配置好网卡

A机器做路由器配置源地址转换,设置两张网卡ens33,ip 192.168.225.111,用户上网,ens37,ip192.168.90.1作为lan口连接内网机器,图中均为桥接模式 B机器为内网虚拟机,ip 192.168.90.10,网关为A机器ens37的ip,DNS为114.114.114.114。

开启A机器路由功能

echo  1 >/proc/sys/net/ipv4/ip_forward

使用iptables添加snat策略

iptables -t nat -A POSTROUTING  -s 192.168.90.0/24 -o ens33 -j MASQUERADE

测试B机器是否能上网

[[email protected] shell-script]# ping www.baidu.com
PING www.a.shifen.com (183.232.231.174) 56(84) bytes of data.
64 bytes from 183.232.231.174 (183.232.231.174): icmp_seq=1 ttl=128 time=23.1 ms
64 bytes from 183.232.231.174 (183.232.231.174): icmp_seq=2 ttl=128 time=36.7 ms
64 bytes from 183.232.231.174 (183.232.231.174): icmp_seq=3 ttl=128 time=28.5 ms
           

dnat 目的地址转换的

互联网主机C想访问企业内部的web服务器A,但A的地址是私有地址,无法直接访问。此时,C可以访问防火墙的公网地址,C的请求数据包(源:ipC,目标:ipB)到达防火墙B后,在B的prerouting上将请求数据包的目标地址进行修改,并将数据包(源:ipC,目标:ipA)发送给A。

步骤如下

大致图解比snat多加了个客户机,用来访问私网B机器

Snat Dnat 的发布策略
  1. 还是用snat的两台配置好了的Linux虚拟机器,外加一台Windows,C机器
  2. 为B机器安装好nginx,web服务
  3. 使用iptables 添加一条访问内部B机器的web服务的dnat策略

iptables -t nat -A PREROUTING -i ens33 -d 192.168.225.111 -p tcp --dport 80 -j DNAT --to-destination 192.168.90.10

在Windows机器上用浏览器访问192.168.225.111,就可以映射到B机器的web服务

Snat Dnat 的发布策略