需求:
访问http://www.web.cc —显示出this is myweb.cc
访问http://ftp.test.net —显示出this is myftp
思路:
- 首先搭建DNS服务器
- 搭建WEB服务器
- 客户端指定DNS服务测试验证
环境:
- WEB-Server:172.16.10.188
- DNS-Server:172.16.10.166
- Client:172.16.10.177
步骤:
在DNS-Server上:
yum -y install bind //下载安装bind
[root@DNS data]# rpm -ql bind
//查看安装的文件列表
[root@DNS data]# vim /etc/named.conf //修改主配置文件
options {
listen-on port 53 { 127.0.0.1;any; }; //any 允许所有监听
listen-on-v6 port 53 { ::1; };
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";
recursing-file "/var/named/data/named.recursing";
secroots-file "/var/named/data/named.secroots";
allow-query { localhost;any; }; //any 允许所有人
[root@DNS data]# vim /etc/named.rfc1912.zones //修改zone配置文件
...
zone "myweb.cc" IN { //正向解析
type master;
file "myweb.cc.zone"; //在/var/named/ 里创建相应的文件
allow-update { none; };
};
zone "test.net" IN {
type master;
file "test.net.zone"; //在/var/named/ 里创建相应的文件
allow-update { none; };
};
[root@DNS data]# cd /var/named/
[root@DNS named]# cp -p named.localhost myweb.cc.zone //拷贝模板复制
[root@DNS named]# cp -p named.localhost test.net.zone //拷贝模板复制
[root@DNS named]# vim myweb.cc.zone
$TTL 1D
@ IN SOA myweb.cc. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS a.myweb.cc.
a A 172.16.10.166
www A 172.16.10.188
[root@DNS named]# vim test.net.zone
$TTL 1D
@ IN SOA test.net. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS b.test.net.
b A 172.16.10.166
ftp A 172.16.10.188
配置好DNS服务器之后重启服务
[root@DNS~]# systemctl restart named
在WEB-Server端:
安装Apache
[root@WEB~]# yum -y install httpd
[root@WEB~]# rpm -ql httpd
创建相应的数据目录和首页文件
[root@WEB~]# mkdir /data/
[root@WEB~]# mkdir /data/{myweb,myftp}
[root@WEB~]# echo "this is myweb.cc" > /data/myweb/index.html
[root@WEB~]# echo "this is myftp" > /data/myftp/index.html
发布网站
[root@WEB~]# vim /etc/httpd/conf/httpd.conf
.....
Listen 80
....
<VirtualHost *:80 >
DocumentRoot /data/myweb/
ServerName www.myweb.cc
ErrorLog logs/myweb-error_log
CustomLog logs/myweb-access_log common
<Directory "/data/myweb/">
AllowOverride None
Options None
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:80 >
DocumentRoot /data/myftp/
ServerName ftp.test.net
ErrorLog logs/myftp-error_log
CustomLog logs/myftp-access_log common
<Directory "/data/myftp/">
AllowOverride None
Options None
Require all granted
</Directory>
</VirtualHost>
重启服务
[root@WEB~]# systemctl restart httpd.service
在客户端测试
[root@client~]# yum -y install elinks
[root@client~]# echo nameserver 172.16.10.166 >/etc/resolv.conf
[root@client~]# elinks http://www.myweb.cc
[root@client~]# elinks http://ftp.test.net