SNAT和DNAT简介
SNAT:局域网共享一个公网IP接入lnternel,好处如下:
1、保护内网用户安全,因为公网地址总有一些人恶意扫描,而内网地址在公网没有路由所以无法被扫描,能被扫描的只有防火墙这一台,这样就减少了被攻击的可能。
2、Ipv4地址匮乏,很多公司只有一个ipv4地址,但是却有几百个用户需要上网,这个时候就需要使用SNAT。
3、省钱,公网地址付费,使用SNAT只需要一个公网ip就可以满足几百人同时上网。
DNAT:向internel发布内网服务器
1、在内网中有服务器,如果想让公网用户访问有有两种方法。
2、配置双网卡,一网卡对内,一网卡对外;一般是高访问量的web服务器,为了避免占用网关的流量才这样做,使用不是很广泛。
3、内网web服务器,或是ftp服务器,为了用户在公网也可以访问,有不想买公网ip地址,采用DNAT方案。
实验拓扑(准备工作)
1、下图为本次实验拓扑,中间SSH大白云忽略,是用于物理机SSH配置使用。
2、本次实验所有centOS7系统均需要关闭和开启以下服务:
防火墙关闭 命令:
systemctl stop firewalld
SElinux关闭 命令:
setenforce 0
开启Centos7的IP路由转发功能 命令:
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf sysctl -p
3、本次大致设备配置信息如下图
SNAT配置(拓扑左侧)
1、依据“设备信息图”配置SNAT服务器内外网端口的IP。
sudo ip addr add 1.1.1.1/30 dev eth1 sudo ip addr add 192.168.10.254/24 dev eth0 service network restart #重启网络服务 #配置一条默认路由 route add default gw 1.1.1.2
2、安装iptables服务
#安装iptables服务 yum install -y iptables iptables-services #开启iptables systemctl start iptables #加入开机启动项 systemctl enable iptables
3、配置SNAT将192.168.10.0网络所有主机只要通过防火墙上网就做源地址修改,将源地址修改为1.1.1.1。
#出网将源地址修改为1.1.1.1。 iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -o eth1 -j SNAT --to-source 1.1.1.1 #保存配置 service iptables save #查看snat转换配置 iptables -L -t nat
4、配置win客户端(左侧拓扑)IP地址为:192.168.10.1,网关为192.168.10.254。
DNAT配置(拓扑右侧)
1、依据“设备信息图”配置DNAT服务器内外网端口的IP。
sudo ip addr add 1.1.1.2/30 dev eth1 sudo ip addr add 192.168.20.254/24 dev eth0 service network restart #重启网络服务 #配置一条默认路由 route add default gw 1.1.1.1
2、安装iptables服务
#安装iptables服务 yum install -y iptables iptables-services #开启iptables systemctl start iptables #加入开机启动项 systemctl enable iptables
3、防火墙配置DNAT
iptables -t nat -A PREROUTING -d 1.1.1.2 -p tcp --dport 80 -j DNAT --to-destination 192.168.20.100
4、在Web1服务器配置httpd服务并搭建基础默认网页。
安装httpd服务
yum -y install httpd
启动http服务
systemctl start httpd
输入下方命令建立默认基于IP访问的默认web页面。
echo -e "ip:192.168.20.100 </br> I'm a web1 server" > /var/www/html/index.html #配置内网端口的ip sudo ip addr add 192.168.20.100/24 dev eth0 #配置一条默认路由 route add default gw 192.168.20.254
SNAT配置检验
1、开启左侧SNAT的iptables服务,左侧客户端浏览器访问192.168.20.100,在web1服务器查看访问记录同时并且使用抓包工具查看源IP。
web1访问记录中记录的源IP。
tail -1 /var/log/httpd/access_log
wireshark抓包工具中记录的源IP。
2、停用左侧SNAT的iptables服务,客户端浏览器访问192.168.20.100,在web1服务器查看访问记录同时并且使用抓包工具查看源IP。
#停用SNAT systemctl stop iptables
web1访问记录中记录的源IP。
tail -1 /var/log/httpd/access_log
wireshark抓包工具中记录的源IP。
DNAT配置检验
关闭左侧SNAT,开启右侧DNAT的iptables服务,左侧客户端浏览器访问1.1.1.2,在web1服务器查看访问记录同时并且使用抓包工具查看源IP。
1、左侧客户端浏览器访问1.1.1.2
2、web1访问记录中记录的源IP。
tail -1 /var/log/httpd/access_log
3.wireshark抓包工具中记录的源IP。
版权声明:本文为原创文章,版权归 阁主 所有,欢迎分享本文,转载请保留出处!
免责申明:有些内容源于网络,没能联系到作者。如侵犯到你的权益请告知,我们会尽快删除相关内容。