【综合实验】之 SNAT 和 DNAT


需求一:12.0.0.12:8080 --> 192.168.80.20:80
需求二:http://www.kgc.com:8080 --> 192.168.80.20:80
在这里插入图片描述

1 关闭三台虚拟机防火墙

systemctl stop firewalld
systemctl disable firewalld
setenforce 0

2 配置网关服务器

第一步:添加一张外网网卡网段为12.0.0.0/24
在这里插入图片描述
第二步:查看真机的网段与虚拟机所设网段是否一致,不一致要修改一致
在这里插入图片描述

第三步:添加一张网卡
在这里插入图片描述
在这里插入图片描述
第四步:配置内网网卡ens33

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33

在这里插入图片描述
第五步:配置外网网卡ens37

[root@localhost ~]# cd /etc/sysconfig/network-scripts 
[root@localhost network-scripts]# ifconfig          #查看网卡
[root@localhost network-scripts]# cp ifcfg-ens33 ifcfg-ens37
[root@localhost network-scripts]# vim ifcfg-ens37

在这里插入图片描述
第六步:重启服务

[root@localhost network-scripts]# systemctl restart network
[root@localhost network-scripts]# ifconfig

在这里插入图片描述
第七步: 网关服务器开启 SNAT

[root@localhost ~]# vim /etc/sysctl.conf

net.ipv4.ip_forward = 1
 
[root@localhost ~]# sysctl -p   #打开ip路由转发功能

在这里插入图片描述

4 配置内网192.168.80.20

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

在这里插入图片描述
在这里插入图片描述

5 配置外网12.0.0.200

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

在这里插入图片描述
在这里插入图片描述

6 测试三台虚拟机是否可以正常访问

第一步:在192.168.80.20上安装http服务并启动httpd服务

由于是内网环境仅主机模式下 所以要安装一个本地yum仓库

#安装http服务
[root@localhost ~]# mount /dev/sr0 /mnt
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls
CentOS-Base.repo  CentOS-CR.repo  CentOS-Debuginfo.repo  CentOS-fasttrack.repo  CentOS-Media.repo  CentOS-Sources.repo  CentOS-Vault.repo
[root@localhost yum.repos.d]# mkdir repos.bak
[root@localhost yum.repos.d]# mv *.repo repos.bak
[root@localhost yum.repos.d]# touch local.repo
[root@localhost yum.repos.d]# vim local.repo
[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0
[root@localhost yum.repos.d]# yum clean all && yum makecache 
[root@localhost yum.repos.d]# yum install httpd -y

#启动httpd服务
[root@localhost ~]# systemctl start httpd.service 
[root@localhost ~]# netstat -atpn |grep httpd     #查看服务是否启动

在这里插入图片描述
第二步:在默认目录中写一段话并在三台虚拟机上测试

[root@localhost ~]# cd /var/www/html/
[root@localhost html]# ls
[root@localhost html]# echo 'this is first test web!' > index.html
[root@localhost html]# ls
index.html

在这里插入图片描述
测试结果
在这里插入图片描述

7 配置网关服务器的 iptables 规则

1、查看网关服务器的iptables规则并清除

iptables -nL			#查看规则
iptables -nL -t nat		#查看规则
iptables -F				#清除iptables的规则
iptables -F -t nat		#清除iptables的规则

在这里插入图片描述
2、添加规则 SNAT 和 DNAT

[root@localhost ~]# iptables -t nat -A POSTROUTING -s 192.168.80.0/24 -o ens37 -j SNAT --to 12.0.0.254                                       源地址(内网网段)      出站网卡
  外网网关                                                                                       
[root@localhost ~]# iptables -t nat -A PREROUTING -i ens37 -d 12.0.0.254 -p tcp --dport 8080 -j DNAT --to 192.168.80.20:80

[root@localhost ~]# iptables -nL -t nat

在这里插入图片描述

8 客户端12.0.0.254:8080测试

在这里插入图片描述
服务端查看
在这里插入图片描述

9 分离解析配置—网关服务器

第一步:安装 bind

root@localhost ~]# yum install -y bind

在这里插入图片描述
第二步:修改配置文件/etc/named.conf

[root@localhost ~]# vim /etc/named.conf

在这里插入图片描述
第三步:修改配置文件/etc/named.rfc1912.zones

[root@localhost ~]# vim /etc/named.rfc1912.zones

view "nei" {
  match-clients { 192.168.80.0/24; };
  zone "kgc.com" IN {
        type master;
        file "kgc.com.zone.nei";
  };
  zone "." IN {
         type hint;
         file "name.ca";
  };

};

view "wai" {
  match-clients { any; };
  zone "kgc.com" IN {
        type master;
        file "kgc.com.zone.wai";
  };
};

在这里插入图片描述
第四步:修改 kgc.com.zone.nei 和 kgc.com.zone.wai

[root@localhost ~]# cd /var/named/
[root@localhost ~]# cp -p named.localhost kgc.com.zone.nei

[root@localhost ~]# vim kgc.com.zone.nei
$TTL 1D
@       IN SOA  @ admin.kgc.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A       192.168.80.15
www IN  A       192.168.80.20

[root@localhost named]# cp -p kgc.com.zone.nei kgc.com.zone.wai
[root@localhost named]# vim kgc.com.zone.wai 

[root@localhost named]# systemctl start named

在这里插入图片描述
在这里插入图片描述
第五步:修改网卡

[root@localhost named]# vim /etc/resolv.conf 
nameserver 192.168.80.15
[root@localhost named]# host www.kgc.com
[root@localhost named]# nslookup www.kgc.com

在这里插入图片描述
第六步:客户端修改网卡

[root@localhost ~]# vim /etc/resolv.conf 
nameserver 12.0.0.254
[root@localhost ~]# nslookup www.kgc.com

第七步:网关服务器和客户端访问
在这里插入图片描述
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值