构建分离解析的域名服务器,以及实现SNAT和DNAT 转换
2018-07-15 16:26
656 查看
分离解析(Split DNS)的域名服务器实际也是主域名服务器,这里主要是指根据不同的客户端提供不同的域名解析记录。来自不同地址的客户机请求解析同一域名时,为其提供不同的解析结果。
实验准备:
l 一台linux作为网关服务器l 一台linux事先搭建好Apache服务作为局域网Web服务器,l 一台Win7作为外网主机l 关闭三台主机的防火墙和selinux
实验要求:
如图所示
1.在网关服务器搭建DNS分离解析,使局域网主机解析www.benet.com 为192.168.100.101,外网主机解析www.benet.com 为12.0.0.1
2.并且实现SNAT和DNAT 转换成eth0接口地址,外网主机可以使用域名www.benet.com解析12.0.0.1直接访问局域网主机的Apache网站。
开始实验:
配置网关服务器搭建DNS分离解析1.为网关服务器配置双网卡
2.安装bind软件包mount /dev/sr0 /mnt
rpm -ivh /mnt/Packages/bind-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm
3.修改主配置文件named.confvim /etc/named.confoptions { listen-on port 53 { any; }; #监听本机或者any listen-on-v6 port 53 { ::1; }; #ipv6的监听,可注释掉 directory "/var/named"; #服务的根的位置 dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { any; }; #允许所有主机解析 4.修改区域配置文件named.rfc1912.zonesvim /etc/named.rfc1912.zonesview "lan" { #定义内网view match-clients { 192.168.100.0/24; }; #匹配内网网段zone "benet.com" IN { #设置要解析的区域 type master; file "benet.com.zone.lan"; #数据配置文件}; zone "." IN { type hint; #hint是根区域类型 file "named.ca";}; }; view "wan" { #定义外网view match-clients { any; }; #匹配除了内网网段以外的任意地址 zone "long.com" IN { type master; file " benet.com.zone.wan"; };};#注意:一旦启用view,所有的zone必须都在view下,所以要把系统默认的自检用的zone也放在view下或者删除 5.修改区域数据配置文件
cd /var/namedcp -p named.localhost benet.com.zone.lancp -p named.localhost benet.com.zone.wan vim benet.com.zone.lan$TTL 1D@ IN SOA benet.com. admin.benet.com. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS benet.com. A 192.168.100.1www IN A 192.168.100.101 #解析www.benet.com的地址 vim benet.com.zone.wan$TTL 1D@ IN SOA benet.com. admin.benet.com. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS benet.com. A 12.0.0.1www IN A 12.0.0.1 #解析www.benet.com的地址
6.启动服务
service named start
7.局域网主机测试
7.1 先为局域网主机指定DNS服务器地址
echo "nameserver 192.168.100.1" >> /etc/resolv.conf
7.2 测试结果
host www.benet.com
8.外网主机测试
8.1 先为外网主机指定DNS服务器地址
8.2 测试结果
nslookup www.benet.com
在网关服务器配置SNAT和DNAT实现地址转换
1.配置SNAT和DNAT规则
iptables -F #清空防火墙规则
iptables -t nat -F
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.100.0/24 -j SNAT --to-source 12.0.0.1 #配置SNAT规则
iptables -t nat -A PREROUTING -i eth0 -d 12.0.0.1 -p tcp -dport 80 –j DNAT --to-destination 192.168.100.101 #配置DNAT规则
2.在外网主机使用域名www.benet.com访问
2.查看局域网Web服务器的Apache日志文件cd /usr/local/apache/logs
tail access_log
实验准备:
l 一台linux作为网关服务器l 一台linux事先搭建好Apache服务作为局域网Web服务器,l 一台Win7作为外网主机
l 关闭三台主机的防火墙和selinux
service iptables stop
setenforce 0
实验要求:如图所示
1.在网关服务器搭建DNS分离解析,使局域网主机解析www.benet.com 为192.168.100.101,外网主机解析www.benet.com 为12.0.0.1
2.并且实现SNAT和DNAT 转换成eth0接口地址,外网主机可以使用域名www.benet.com解析12.0.0.1直接访问局域网主机的Apache网站。
开始实验:
配置网关服务器搭建DNS分离解析1.为网关服务器配置双网卡
2.安装bind软件包mount /dev/sr0 /mnt
rpm -ivh /mnt/Packages/bind-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm
3.修改主配置文件named.confvim /etc/named.confoptions { listen-on port 53 { any; }; #监听本机或者any listen-on-v6 port 53 { ::1; }; #ipv6的监听,可注释掉 directory "/var/named"; #服务的根的位置 dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { any; }; #允许所有主机解析 4.修改区域配置文件named.rfc1912.zonesvim /etc/named.rfc1912.zonesview "lan" { #定义内网view match-clients { 192.168.100.0/24; }; #匹配内网网段zone "benet.com" IN { #设置要解析的区域 type master; file "benet.com.zone.lan"; #数据配置文件}; zone "." IN { type hint; #hint是根区域类型 file "named.ca";}; }; view "wan" { #定义外网view match-clients { any; }; #匹配除了内网网段以外的任意地址 zone "long.com" IN { type master; file " benet.com.zone.wan"; };};#注意:一旦启用view,所有的zone必须都在view下,所以要把系统默认的自检用的zone也放在view下或者删除 5.修改区域数据配置文件
cd /var/namedcp -p named.localhost benet.com.zone.lancp -p named.localhost benet.com.zone.wan vim benet.com.zone.lan$TTL 1D@ IN SOA benet.com. admin.benet.com. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS benet.com. A 192.168.100.1www IN A 192.168.100.101 #解析www.benet.com的地址 vim benet.com.zone.wan$TTL 1D@ IN SOA benet.com. admin.benet.com. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS benet.com. A 12.0.0.1www IN A 12.0.0.1 #解析www.benet.com的地址
6.启动服务
service named start
7.局域网主机测试
7.1 先为局域网主机指定DNS服务器地址
echo "nameserver 192.168.100.1" >> /etc/resolv.conf
7.2 测试结果
host www.benet.com
8.外网主机测试
8.1 先为外网主机指定DNS服务器地址
8.2 测试结果
nslookup www.benet.com
在网关服务器配置SNAT和DNAT实现地址转换
1.配置SNAT和DNAT规则
iptables -F #清空防火墙规则
iptables -t nat -F
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.100.0/24 -j SNAT --to-source 12.0.0.1 #配置SNAT规则
iptables -t nat -A PREROUTING -i eth0 -d 12.0.0.1 -p tcp -dport 80 –j DNAT --to-destination 192.168.100.101 #配置DNAT规则
2.在外网主机使用域名www.benet.com访问
2.查看局域网Web服务器的Apache日志文件cd /usr/local/apache/logs
tail access_log
相关文章推荐
- Nginx安装配置,简单构建LNMP环境配置反向代理,实现动静分离,以及实现负载均衡。
- 在RHEL5下使用bind构建分离解析的域名服务器
- 搭建DNS服务,构建分离解析的域名服务器。
- 构建带分离解析的域名服务器(第一部分:构建主域名服务器)
- 构建带分离解析的域名服务器(第二部分:构建从域名服务器)
- iptables实现网络防火墙功能,SNAT以及DNAT功能
- Halcon中循环读取文件的实现以及数字与字符的转换
- android实现json数据的解析和把数据转换成json格式的字符串
- 利用MySQL的表实现树的构建以及优化
- j2me常用的字符,日期,以及转换编码实现
- Angular.js项目中使用gulp实现自动化构建以及压缩打包详解
- 二叉树构建,先序,中序,后序遍历(以及非递归实现),广度优先遍历
- DataSet,DataTable.DataRow复制(解决此行已属于另一个表)以及DataTable 实现表结构转换
- Java实现完全二叉树的构建以及三种遍历方式
- 一个.NET通用JSON解析/构建类的实现(c#)转
- 原创]unity3D学习【功能实现】之一:坐标的转换以及物体的移动
- .NET通用JSON解析/构建类的实现(c#)
- Halcon中循环读取文件的实现以及数字与字符的转换
- 一个.NET通用JSON解析/构建类的实现(c#)
- 二叉树构建以及前中后序遍历(递归和非递归)Java实现