防火墙基础SNAT·DNAT

SNAT策略

SNAT策略的典型应用环境

局域网主机共享单个公网IP地址接入Internet

SNAT策略的原理

源地址转换,Source Network Address Translation
修改数据包的源地址

SNAT的典型应用环境

局域网共享上网

SNAT策略的工作原理

未做SNAT转换时的情况

进行SNAT转换后的情况

项目实操

Nat转换:入站接受PREROUTING策略匹配,出站POSTROUTING策略匹配

出站(内-外):OUTPUT–POSTROUTING(解决上网问题)
SNAT 192.168.6.0/24—>192.168.7.11
入站(外-内):PREROUTING–INPUT–FORWARD(服务映射)
DNAT 192.168.7.11—>192.168.6.10

流程解析:

具体的实现方法:

1.中间的防火墙充当路由器,开启nat功能
2.防火墙上做策略,指定192.168.6.0/24(10)的主机转换成192.168.7.11

iptables -F
iptables -t nat -I POSTROUTING -s 192.168.6.0/24 -o ens37(外网卡) -j SNAT --to-source 192.168.7.11

SNAT转换后,源地址变为网关服务器上映射的外网地址

DNAT:相当于华为路由器中的servernat的知识点,让外网的用户可以访问内网发布的服务

具体的实现方法:

1.中间的防火墙充当路由器,开启nat功能
2.防火墙上做策略,指定访问网关的某服务映射给内网服务器

iptables -F
iptables -t nat -A PREROUTING -i ens37(外网卡) -d 192.168.7.11 -p tcp --dport 80 -j DNAT --to-destination 192.168.6.10

基础设置

1.在局域网PC上

[root@server1 ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
[root@server1 ~]# systemctl restart network
[root@server1 ~]# ifconfig

在这里插入图片描述

2.在防火墙上

[root@server2 ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
[root@server2 ~]# cp /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-ens37
[root@server2 ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens37
[root@server2 ~]# systemctl restart network
[root@server2 ~]# ifconfig 

在这里插入图片描述

开启路由功能

[root@server2 ~]# echo "net.ipv4.ip_forward=1" > /etc/sysctl.conf
[root@server2 ~]# sysctl -p

在这里插入图片描述

外网服务器

[root@client1 ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
[root@client1 ~]# systemctl restart network
[root@client1 ~]# ifconfig 

在这里插入图片描述

以上完成基本配置

在防火墙进行策略

[root@server2 ~]# hostnamectl set-hostname iptables
[root@server2 ~]# bash
[root@iptables ~]# iptables -F
[root@iptables ~]# iptables -n -L -t nat
[root@iptables ~]# iptables -t nat -I POSTROUTING -s 192.168.6.0/24 -o ens37 -j SNAT --to-source 192.168.7.11
[root@iptables ~]# iptables -t nat -L POSTROUTING 
[root@iptables ~]# ping 192.168.7.12

在这里插入图片描述

在局域网PC上

[root@server1 ~]# hostnamectl set-hostname client
[root@server1 ~]# bash
[root@client ~]# ping 192.168.7.12

在这里插入图片描述

以上实现内网到外网的上网问题

在局域网PC上

[root@client ~]# yum -y install httpd
[root@client ~]# echo "this is a tree." > /var/www/html/index.html
[root@client ~]# systemctl start httpd
[root@client ~]# systemctl stop firewalld
[root@client ~]# setenforce 0
[root@client ~]# netstat -anpt | grep httpd

在这里插入图片描述

在防火墙进行入站策略

[root@iptables ~]# iptables -t nat -A PREROUTING -i ens37 -d 192.168.7.11 -p tcp --dport 80 -j DNAT --to-destination 192.168.6.10
[root@iptables ~]# iptables -t nat -L
[root@iptables ~]# systemctl stop firewalld
[root@iptables ~]# setenforce 0

在这里插入图片描述

外网服务器

[root@client1 ~]# hostnamectl set-hostname service
[root@client1 ~]# bash
[root@service ~]# curl http://192.168.7.11

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值