只要坚持尝试,失败也会帮你(第十三周)

一、 简述DNS服务器原理。
DNS是什么?
DNS服务器所提供的服务是完成将主机名和域名转换为IP地址的工作。
为什么需要将主机名和域名转换为IP地址的工作呢?这是因为,当网络上的一台客户机访问某一服务器上的资源时,用户在浏览器地址栏中输入的是便于识记的主机名和域名。而网络上的计算机之间实现连接却是通过每台计算机在网络中拥有的惟一的IP地址来完成的,这样就需要在用户容易记忆的地址和计算机能够识别的地址之间有一个解析,DNS服务器便充当了地址解析的重要角色,相当一个记录的本子,其中记录所有的服务器主机名称和ip的对应关系。
DNS解析过程怎么样?
只要坚持尝试,失败也会帮你(第十三周)
第一步,客户端向本地DNS服务器发送解析请求;
第二步,本地DNS如有相应记录会直接返回结果给客户端,如没有就向DNS根服务器发送请求;
第三步,DSN根服务器接收到请求,返回给本地服务器一个所查询域的主域名服务器的地址;
第四步,本地dns服务器再向返回的主域名服务器地址发送查询请求;
第五步,主域名服务器如有记录就返回结果,没有的话返回相关的下级域名服务器地址;
第六步,本地DNS服务器继续向接收到的地址进行查询请求;
第七步,下级域名服务器有相应记录,返回结果
第八步,本地dns服务器将收到的返回地址发给客户端,同时写入自己的缓存,以便下次查询;
因此,DNS域名查询实际上就是个不断递归查询的过程,直到查找到相应结果,需要注意的时,当找不到相应记录,会返回空结果,而不是超时信息。
什么是反向解析?
反向解析就是将ip地址解析成相应的域名,一个ip地址实际上可以绑定多个域名信息,不过在邮件系统中,对发送端的ip进行DNS反向解析,可以很好的查询到没有域名记录的ip,从而达到对垃圾邮件进行过滤和屏蔽。

二、搭建主-辅服务器;
1、设置主DNS服务器
安装软件
只要坚持尝试,失败也会帮你(第十三周)
1.1、配置环境
[root@node1 ~]# vim /etc/resolv.conf #修改DNS配置文件
nameserver 192.168.1.17
[root@node1 ~]# vim /etc/named.conf
只要坚持尝试,失败也会帮你(第十三周)
1.2、配置解析一个正向区域
[root@node1 ~]# vim /etc/named.rfc1912.zones
只要坚持尝试,失败也会帮你(第十三周)
1.3、建立区域数据文件
[root@node1 ~]# vim /var/named/magedu.com.zone
只要坚持尝试,失败也会帮你(第十三周)
1.4、修改权限,检测语法
只要坚持尝试,失败也会帮你(第十三周)
1.5、服务器重载配置文件和区域数据文件
只要坚持尝试,失败也会帮你(第十三周)
只要坚持尝试,失败也会帮你(第十三周)
1.6、DNS主服务器正向解析测试
只要坚持尝试,失败也会帮你(第十三周)
只要坚持尝试,失败也会帮你(第十三周)
其他配置都可以解析出MX1、MX2等。
1.7、配置解析一个反向区域
vim /etc/named.rfc1912.zones
只要坚持尝试,失败也会帮你(第十三周)
1.8、建立反向区域数据文件
[root@node1 ~]# vim /var/named/192.168.1.zone
只要坚持尝试,失败也会帮你(第十三周)
1.9、修改反向区域文件权限,检测语法
只要坚持尝试,失败也会帮你(第十三周)
1.10、重载配置文件和区域数据文件
只要坚持尝试,失败也会帮你(第十三周)
只要坚持尝试,失败也会帮你(第十三周)
1.11、主服务器反向解析测试
只要坚持尝试,失败也会帮你(第十三周)
2.1、设置辅DNS服务器
[root@node1 ~]# yum -y install bind bind-utils
[root@node1 ~]# systemctl start named.service
[root@node1 ~]# vim /etc/resolv.conf
nameserver 192.168.1.18
[root@node1 ~]# vim /etc/named.conf
只要坚持尝试,失败也会帮你(第十三周)
2.2、配置192.168.1.18辅服务器的正向区域
[root@node1 ~]# vim /etc/named.rfc1912.zones
只要坚持尝试,失败也会帮你(第十三周)
2.3、来到192.168.1.17主服务器上去配置文件
[root@node1 ~]#vim /var/named/test.com.zone上添加记录
只要坚持尝试,失败也会帮你(第十三周)
2.4、更新数据和验证
只要坚持尝试,失败也会帮你(第十三周)
2.5、在192.168.1.18服务器上同步更新。
只要坚持尝试,失败也会帮你(第十三周)
2.6、配置192.168.1.18辅服务器反向区域
[root@node1 ~]# vim /etc/named.rfc1912.zones
只要坚持尝试,失败也会帮你(第十三周)
[root@node1 ~]# named-checkconf
2.7、配置192.168.1.17主服务器反向区域的数据文件
[root@node1 ~]# vim /var/named/192.168.1.zone
只要坚持尝试,失败也会帮你(第十三周)
只要坚持尝试,失败也会帮你(第十三周)
2.8、测试在192.168.1.18辅服务器反向解析IP
只要坚持尝试,失败也会帮你(第十三周)
完成可以进一步测试:手动测试区域传送功能
[root@node1 ~]# dig -t axfr test.com @192.168.10.11(测试完成)

三、搭建并实现智能DNS。
要实现DNS服务器的智能解析,需要先理解一个概念:view,
假如有台web主机,www.magedu.com 是域名,它有两个IP,一个接内网IP为192.168.1.17,一个接外网IP为1.1.1.1。来自互联网的用户会解析成1.1.1.1,而来自内网的用户不需要解析成外网IP在连进来,只需要直接解析成内网IP为192.168.1.17就可以了。这种根据客户端的不同来源将同一个主机解析成不同的结果,就叫做view。
1、 修改DNS的配置文件
[root@node1 ~]# vim /etc/named.conf
只要坚持尝试,失败也会帮你(第十三周)
2、建立两个正向区域数据文件
[root@node1 ~]# vim /var/named/magedu.com/internal
只要坚持尝试,失败也会帮你(第十三周)
[root@node1 ~]# vim /var/named/magedu.com/external
只要坚持尝试,失败也会帮你(第十三周)
3、检测语法并设置权限
只要坚持尝试,失败也会帮你(第十三周)
4、进行解析,解析成内网IP
[root@node1 ~]# dig -t A www.test.com @192.168.10.10
只要坚持尝试,失败也会帮你(第十三周)
5、进行解析,解析成外网IP
[root@node1 ~]# dig -t A www.test.com @192.168.10.10
只要坚持尝试,失败也会帮你(第十三周)
此时一个智能DNS服务器就搭建完成了,服务器自动解析成自己服务器上相对应的电信IP或者网通IP,从而使客户端和服务端连接在同一个运营商的线路上,获得最好的网速。

四、编译安装Mariadb,并启动后可以正常登录
1、MariaDB 5.5及更高版本使用cmake编译,所有得先安装cmake,这里使用编译安装cmake,编译环境及依赖关系
只要坚持尝试,失败也会帮你(第十三周)
[ root@node1 ~ ]#yum groupinstall -y Development Tools
[ root@node1 ~ ]#yum -y install ncurses-devel zlib-devel
2、获取cmake :
[ root@node1 ~ ]#wget https://cmake.org/files/v3.9/cmake-3.9.3.tar.gz
[ root@node1 ~ ]#tar xf cmake-3.9.3.tar.gz -C /usr/local/
3、编译安装:
[ root@node1 ~ ]# cd /usr/local/cmake-3.9.3/
[ root@node1 ~ ]# ./configure
只要坚持尝试,失败也会帮你(第十三周)
[ root@node1 ~ ]# gmake && gmake install
只要坚持尝试,失败也会帮你(第十三周)
只要坚持尝试,失败也会帮你(第十三周)
4、接下来安装Mariadb
[ root@node1 ~ ]#tar xf mariadb-5.5.67.tar.gz -C /usr/local/mysql
[ root@node1 /usr/local/mysql ]#
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DSYSCONFDIR=/etc \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all
只要坚持尝试,失败也会帮你(第十三周)
[ root@node1 /usr/local/mysql ]# make && make install
只要坚持尝试,失败也会帮你(第十三周)
5、创建mysql用户
[ root@node1 / ]# useradd -M -s /sbin/nologin mysql
[ root@node1 / ]#chown mysql:root /usr/local/mysql/
[ root@node1 / ]# cp support-files/my-medium.cnf /etc/my.cnf #复制6、配置文件,复制启动脚本
[ root@node1 / ]# cp support-files/mysql.server /etc/init.d/mysqld [ root@node1 / ]# vim /etc/my.conf
datadir = /usr/local/msyql/data/ #指定数据库路径,不然无法启动mysql
innodb_file_per_table = on #设置后当创建数据库的表的时候表文件都会分离开,方便复制表,不开启创建的表都在一个文件
skip_name_resolve = on #跳过名称反解,Mysql每次使用客户端链接时都会把ip地址反解成主机名
7、设下置Mysql环境变量
[ root@localhost / ]# echo "export PATH=$PATH:/usr/local/mysql/bin">>/etc/profile #设置mysql环境变量
8、执行脚本初始化数据库
[ root@localhost / ]#/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/mydata/
9、安全初始化mysql及设定(前提先启动Mysql服务: server mysqld start)
[ root@localhost / ]# /usr/local/mysql/bin/mysql_secure_installation
10、测试能否登录入数据库
[ root@localhost ~ ]#mysql -uroot -p

猜你喜欢

转载自blog.51cto.com/7814301/2476479