1.1、名词解释
DNS系统
域名系统(DNS)是一个分层的分布式数据库。它存储用于将Internet主机名映射到IP地址(反
之亦然)的信息、邮件路由信息以及Internet应用程序使用的其他数据。
客户端通过调用解析器库在DNS中查找信息,解析器库向一个或多个名称服务器发送查询并解
释响应。BIND 9软件发行版包含一个名称服务器,named和一个名为liblwres的解析器库。
域和域名
存储在DNS中的数据由根据组织或管理边界组织为树的域名标识。树的每个节点(称为域)都
有一个标签。节点的域名是从节点到根节点的路径上所有标签的串联。这以书面形式表示为从右到左列
出并用点分隔的标签串。标签只需在其父域中是唯一的。
例如,example,Inc.公司主机的域名可以是ourhost.example.com,其中com是
ourhost.example.com所属的顶级域,example是com的子域,ourhost是主机的名称。
出于管理目的,名称空间被划分为称为区域的区域,每个区域从一个节点开始,向下延伸到
“叶”节点或其他区域开始的节点。每个区域的数据存储在名称服务器中,该服务器使用DNS协议回答有关
该区域的查询,与每个域名关联的数据以资源记录(RRs)的形式存储。
区域
如前所述,区域是DNS树中的委托点。区域由域名服务器拥有完整信息并拥有权限的域树的连
续部分组成。它包含从域树中某一点向下的所有域名,但委托给其他区域的域名除外。委派点由父分区
中的一个或多个NS记录标记,这些记录应与委派分区根上的等效NS记录匹配。
权威服务器
每个区域至少由一个权威名称服务器提供服务,该服务器包含该区域的完整数据。为了使DNS
能够容忍服务器和网络故障,大多数区域在不同的网络上有两个或两个以上的权威服务器。来自权威服
务器的响应在响应数据包中设置了“权威应答”(AA)位。
主服务器
维护区域数据主副本的权威服务器称为主(或主)服务器,或简称为主服务器。通常,它从一
些由人工编辑的本地文件加载分区内容,或者可能从一些由人工编辑的其他本地文件机械生成分区内
容。此文件称为区域文件或主文件。但是,在某些情况下,区域文件可能根本不由人工编辑,而是动态
更新操作的结果。
辅助服务器
其他权威服务器(称为辅助(或从属)服务器)使用称为区域传输的复制过程从另一台服务器
加载区域内容。通常,数据直接从主主机传输,但也可以从另一个辅助主机传输。换句话说,辅助服务
器本身可以充当从属辅助服务器的主服务器。辅助服务器必须定期发送刷新查询,以确定区域内容是否已更新。这是通过发送一个对区域开
始授权(SOA)记录的查询并检查序列字段是否已更新来完成的;如果是,则启动新的传输请求。这些
刷新查询的计时由SOA刷新和重试字段控制,但可以使用最大刷新时间、最小刷新时间、最大重试时间
和最小重试时间选项覆盖。
如果无法在SOA EXPIRE选项指定的时间内更新区域数据(最多硬编码24周),则辅助区域将过
期,不再响应查询。
缓存服务器
大多数操作系统提供的解析程序库都是存根解析程序,这意味着它们无法通过直接与权威服务
器对话来自行执行完整的DNS解析过程。相反,它们依赖本地名称服务器来代表它们执行解析。这样的
服务器称为递归名称服务器;它对本地客户端执行递归查找。
为了提高性能,递归服务器缓存它们执行的查找结果。由于递归和缓存过程紧密相连,术语递
归服务器和缓存服务器通常是同义词。
记录可以保留在缓存名称服务器的缓存中的时间长度由与每个资源记录关联的生存时间(TTL)字段控
制。
转发服务器
即使是缓存名称服务器本身也不一定执行完整的递归查找。相反,它可以将无法满足的部分或
全部查询从其缓存转发到另一个缓存名称服务器(通常称为转发器)。
当管理员不希望给定站点上的所有服务器直接与Internet的其余部分交互时,通常使用转发
器。例如,常见的情况是多个内部DNS服务器位于Internet防火墙后面。防火墙后面的服务器将其请求转
发给具有外部访问权限的服务器,该服务器代表内部服务器查询Internet DNS服务器。
2:配置bind
思路:首先明确配置这个需要配置两个文件(第一个是/etc/named.conf 第二个是在第一个文件下写的区域文件 扩充:你也可以写反向区域文件)
1:/etc/named.conf
options {
listen-on port 53 { 192.168.10.40; };
directory "/var/named";
};
zone "example.com" IN {
type master;
file "example.com";
};
代码解释: (1):这里的listen-on 的ip是dns本身的
(2): zone是区域文件 你要编写对应的区域文件
2:区域文件:vi /var/named/baidu.com
$TTL 1D
@ IN SOA @ admin.example.com.(1 1D 1H 2D 1D)
IN NS ns
ns IN A 192.168.10.40
www IN A 192.168.10.200
解释: 因为用的keepalived 需要虚拟ip 所以这里的www写虚拟ip
这里的ns写自己的bindip
3:配置haproxy(需要两台)
每一台都要安装keepalive和haproxy
配置haproxy
vi /etc/haproxy/haproxy.cfg
:
global
log 127.0.0.1 local2
chroot /var/lib/haproxy
pidfile /var/run/haproxy.pid
maxconn 4000
user haproxy
group haproxy
daemon
# turn on stats unix socket
stats socket /var/lib/haproxy/stats
# utilize system-wide crypto-policies
ssl-default-bind-ciphers PROFILE=SYSTEM
ssl-default-server-ciphers PROFILE=SYSTEM
defaults
mode http
log global
option httplog
option dontlognull
option http-server-close
option forwardfor except 127.0.0.0/8
option redispatch
retries 3
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 1m
timeout server 1m
timeout http-keep-alive 10s
timeout check 10s
maxconn 3000
frontend main
bind 192.168.10.200:80
acl n1 path_sub -m sub /n1
use_backend n1servers if n1
default_backend nginxservers
backend n1servers
balance roundrobin
server nginx1 192.168.10.10:80 check inter 2000 rise 3 fall 2 weight 2
backend nginxservers
balance roundrobin
server nginx2 192.168.10.20:80 check inter 2000 rise 3 fall 2 weight 2
配置keepalived
vi /etc/keepalived/keepalived.conf
第一个haproxy
global_defs {
router_id LVS_DEVEL-1
}
vrrp_instance VI_1 {
state MASTER
interface ens160
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.10.200
}
}
第二个haproxy
global_defs {
router_id LVS_DEVEL-2
}
vrrp_instance VI_1 {
state BACKUP
interface ens160
virtual_router_id 51
priority 90
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.10.200
}
}
4:配置nfs
dnf install nfs-utils -y
33 mkdir /nfs/data -p
34 chown -R nobody: /nfs/data
35 ll -d /nfs/data
36 vi /etc/exports
37 echo "index.html" > /nfs/data/index.html
39 ll /nfs/data/index.html
42 systemctl start nfs-server
43 ps -ef | grep nfs*
44 ss -lntup
45 showmount -e 192.168.10.30
47 ls
48 cd /nfs/data/
50 mkdir n1
51 echo "nginx 192.169.72.10" > test/index.html
52 echo "nginx 192.169.72.10" > n1/index.html
53 chown -R nobody: /nfs/data
54 ls
55 echo "nginx 192.169.72.10" > index.htmlinit
58 systemctl start nfs-server
5:配置nginx(两台)
dnf install nginx -y
145 cd /usr/share/nginx/html/
146 ;s
147 ls
148 rm -rf *
149 ls
150 dnf install nfs-utils -y
151 mount -t nfs 192.168.10.30:/nfs/data /usr/share/nginx/html/
152 ls
153 showmount -e
154 showmount -e 192.168.10.30:
155 showmount -e 192.168.10.30
162 systemctl start nfs-utils
163 ls
164 cd
165 ls /usr/share/nginx/html/
166 cd /usr/share/nginx/html/
167 ls
169 touch /usr/share/nginx/html/test.html
171 systemctl start nginx
4514

被折叠的 条评论
为什么被折叠?



