DNS

1.安装软件包
[root@svr7 ~]# yum -y install bind-chroot bind
bind-9.9.4-29.el7.x86_64   //域名服务包
bind-chroot-9.9.4-29.el7.x86_64   //提供虚拟根支持 牢笼

2.修改配置文件/etc/named.conf
[root@svr7 ~]# cp /etc/named.conf  /root/named.bak
[root@svr7 ~]# vim /etc/named.conf
 options {
    directory       "/var/named";  #指定地址库文件路径
  };
  zone "tedu.cn" IN {         #指定本机负责解析的域名
        type master;          #本机为权威主DNS服务器
        file "tedu.cn.zone";  #指定地址库文件名字
  };

3.创建地址库文件/var/named/tedu.cn.zone
# cd  /var/named
# cp -p named.localhost  tedu.cn.zone  #保持属性不变
# ls -l tedu.cn.zone

# vim tedu.cn.zone            
 #没有以点结尾,默认补全tedu.cn.
 tedu.cn.    NS  svr7        #tedu.cn.区域有svr7负责
 svr7        A   192.168.4.7 #svr7的IP地址为192.168.4.7
 www         A   1.1.1.1
 ftp         A   2.2.2.2

4.重起named服务
# systemctl  restart  named

5.客户端验证
1.指定DNS服务器位置
# echo nameserver 192.168.4.7 > /etc/resolv.conf
2.域名解析测试
# nslookup www.tedu.cn 
# nslookup ftp.tedu.cn 
多区域的DNS服务器
虚拟机A:
1.修改配置文件/etc/named.conf      
  ......
  zone "qq.com" IN {       
        type master;         
        file "qq.com.zone"; 
  };
3.创建地址库文件/var/named/qq.com.zone
# cd  /var/named
# cp -p tedu.cn.zone  qq.com.zone 
# vim qq.com.zone           
 qq.com.     NS  svr7      
 svr7        A   192.168.4.7
 www         A   3.3.3.3
 ftp         A   4.4.4.4
4.重起named服务
# systemctl  restart  named          

5.客户端验证
1.指定DNS服务器位置
# echo nameserver 192.168.4.7 > /etc/resolv.conf
2.域名解析测试
# nslookup www.qq.com
# nslookup ftp.qq.com
特殊的解析记录,以tedu.cn.zone为例

一 DNS的负载均衡,轮询的相同解析记录(了解)

[root@svr7 /]# vim /var/named/tedu.cn.zone
tedu.cn.    NS  svr7
svr7        A   192.168.4.7
www         A   192.168.4.1
www         A   192.168.4.2
www         A   192.168.4.3
www         A   192.168.4.4
ftp         A   2.2.2.2

[root@svr7 /]# !sys
systemctl restart named

二 泛域名解析

[root@svr7 /]# vim  /var/named/tedu.cn.zone
.......

*           A   10.11.12.14
[root@svr7 /]# !sys
systemctl restart named

客户端验证:
[root@pc207 /]# nslookup wwwwww.tedu.cn
[root@pc207 /]# nslookup hahaxixi.tedu.cn

三 解析记录的别名(了解)

[root@svr7 /]# vim /var/named/tedu.cn.zone 
 .......

 tts      CNAME     ftp   #tts解析结果与ftp解析结果一致
    
[root@svr7 /]# !sys
systemctl restart named

客户端验证
[root@pc207 ~]# nslookup tts.tedu.cn

四 有规律的泛域名解析

       pc1.tedu.cn ----> 192.168.10.1
       pc2.tedu.cn ----> 192.168.10.2
       pc3.tedu.cn ----> 192.168.10.3
             ......
       pc50.tedu.cn ----> 192.168.10.50

   内置函数: $GENERATE   产生连续的数字

[root@svr7 /]# vim /var/named/tedu.cn.zone 
  .......

 $GENERATE   1-50   pc$    A   192.168.10.$

[root@svr7 /]# !sys
systemctl restart named
[root@svr7 /]# 

客户端验证
[root@pc207 ~]# nslookup pc1.tedu.cn
[root@pc207 ~]# nslookup pc2.tedu.cn
[root@pc207 ~]# nslookup pc18.tedu.cn
[root@pc207 ~]# nslookup pc50.tedu.cn
DNS子域授权 ,qq.com域名为例
   
            父域:www.qq.com

            子域:www.bj.qq.com

            父域的DNS服务器为虚拟机A,负责解析qq.com       
  
            子域的DNS服务器为虚拟机B,负责解析bj.qq.com  

虚拟机B

1.安装软件包
[root@pc207 ~]# yum -y install bind-chroot  bind
2.修改配置文件/etc/named.conf
[root@pc207 ~]# cp /etc/named.conf  /root/named.bak
[root@pc207 ~]# vim /etc/named.conf
 options {
    directory       "/var/named";  #指定地址库文件路径
  };
  zone "bj.qq.com" IN {         #指定本机负责解析的域名
        type master;            #本机为权威主DNS服务器
        file "bj.qq.com.zone";  #指定地址库文件名字

  };
3.创建地址库文件/var/named/bj.qq.com.zone
# vim    bj.qq.com.zone      
 bj.qq.com.  NS  pc207        
 pc207       A   192.168.4.207 
 www         A   5.5.5.5
4.重起named服务
# systemctl  restart  named

子域授权

  通过父域的DNS服务器为虚拟机A,能够解析www.bj.qq.com
虚拟机A:
[root@svr7 /]# vim /var/named/qq.com.zone
 qq.com.     NS  svr7
 bj.qq.com.  NS  pc207
 svr7        A   192.168.4.7
 pc207       A   192.168.4.207
 www         A   3.3.3.3
 ftp         A   4.4.4.4
[root@svr7 /]#systemctl restart named
[root@pc207 /]# nslookup www.bj.qq.com 192.168.4.7
Server:		192.168.4.7
Address:	192.168.4.7#53

Non-authoritative answer:   #非权威解答
Name:	www.bj.qq.com
Address: 5.5.5.5
 


递归查询: 
     客户端向首选DNS服务器寻求解析,首选DNS服务器与其他DNS服务器交互,最终将解析结果,带回来的过程

  options {
        directory       "/var/named";
        recursion  no;    #禁止递归
    };

[root@pc207 /]# dig  www.bj.qq.com  192.168.4.7


迭代查询:首选DNS服务器与其他DNS服务器交互
直接起到DNS解析的功能(只能对本机解析) 
  /etc/hosts 主机名映射文件(本地主机名与IP地址对应关系)

[root@svr7 /]# vim /etc/hosts
[root@svr7 /]# tail -1 /etc/hosts
192.168.4.110   www.360.com

[root@svr7 /]# ping www.360.com

    /etc/hosts(DNS解析过程中,最高优先级)

客户端解析域名顺序:
      1./etc/hosts
      2./etc/resolv.conf
      3.找寻DNS服务器

缓存DNS: 利用内存进行缓存解析记录,加速解析

真机搭建缓存DNS服务器

1.搭建Yum仓库
[root@room9pc01 ~]# cat /etc/redhat-release 
CentOS Linux release 7.4.1708 (Core) 
[root@room9pc01 ~]# ls /iso/
CentOS-7-x86_64-DVD-1708.iso
[root@room9pc01 ~]# mkdir /dvd/
[root@room9pc01 ~]# mount /iso/CentOS-7-x86_64-DVD-1708.iso    /dvd/

# ls  /dvd/
# cd  /etc/yum.repos.d/
# mkdir  repo
# mv   *.repo   repo
# vim   dvd.repo
  [dvd]
  name=CentOS7.4
  baseurl=file:///dvd    #指定本地Yum
  enabled=1
  gpgcheck=0

# yum -y install  bind  bind-chroot

2.查看达内   内网DNS服务器地址
[root@room9pc01 /]# cat  /etc/resolv.conf 
nameserver  172.40.1.10
[root@room9pc01 /]#          

3.修改DNS服务器主配置文件,指定转发给内网DNS服务器
[root@room9pc01 /]# vim /etc/named.conf 
  options {
           directory       "/var/named";
           forwarders   {  172.40.1.10;  };
   };

4. 重起named服务
[root@room9pc01 /]# systemctl restart named

5.在虚拟机上验证:
[root@svr7 /]# nslookup www.taobao.com 192.168.4.254
1.客户端必须找到,自己的分类,需要管理员分类合理
2.view客户端由上及下,匹配及停止
3.所有的zone都必须在view中

	view  "haha"   {
	 match-clients  {  192.168.4.207;  };
	  zone "12306.cn"  IN {
	    ...... 地址库1;
	    };                                                
         };                           
	view  "xixi"   {
	 match-clients  {  192.168.4.110;   };
	  zone "12306.cn" IN {
	    ...... 地址库2;
	   }; 
         }; 
    view  "hehe"   {
	 match-clients  {  any;   };
	  zone "12306.cn" IN {
	    ...... 地址库3;
	   }; 
         }; 
• 环境及需求
– 权威DNS:svr7.tedu.cn 192.168.4.7
– 负责区域:tedu.cn
– A记录分离解析 —— 以 www.tedu.cn 为例
客户机来自 解析结果
     192.168.4.207----------》 192.168.4.100
     其他地址          ----------》 1.2.3.4
 view nsd {                      
  match-clients  {  192.168.4.207;  };
   zone "tedu.cn" {
      type master;
      file "tedu.cn.zone";
   };
 };
 view other {
  match-clients {  any;  };
   zone "tedu.cn" {
      type master;
      file "tedu.cn.other";
    };
 };
acl地址列表
• 为大批量的客户机地址建立列表
  acl "liantong" {
     IP地址1; IP地址2; .. ..
         网段1; 网段2; .. ..
      .. ..
      };
  acl "tietong" {
    IP地址3; IP地址4; .. ..
       网段3; 网段4; .. ..
       .. ..
    };


 acl test { 192.168.4.207; 192.168.4.1;
           192.168.4.2; 192.168.4.3;
    };

 view nsd {
 match-clients { test; };
  zone "tedu.cn" {
      type master;
      file "tedu.cn.zone";
    };
  };
补充:多区域的分离解析
  每一个view中,zone的个数保持一致,域名的个数保持一致

[root@svr7 /]# vim /etc/named.conf
options {
	directory 	"/var/named";
};
acl test { 192.168.4.207; 192.168.4.1;
             192.168.4.2;   192.168.4.3;
        };

view nsd {
 match-clients { test; };
  zone "tedu.cn" {
      type master;
      file "tedu.cn.zone";
   };
  zone "sina.com" {
      type master;
      file "sina.com.zone";
   };
};
view other {
 match-clients { any; };
  zone "tedu.cn" {
      type master;
      file "tedu.cn.other";
   };
  zone "sina.com" {
      type master;
      file "sina.com.other";
   };
};

查看进程树

• pstree — Processes Tree
– 格式:pstree [选项] [PID或用户名]
• 常用命令选项
– -a:显示完整的命令行
– -p:列出对应PID编号
  systemd:上帝进程是所有进程的父进程  PID编号为1
[root@svr7 ~]# pstree 
[root@svr7 ~]# pstree   lisi
bash───vim
[root@svr7 ~]# pstree -p lisi
bash(13952)───vim(13996)
[root@svr7 ~]# pstree -ap lisi

查看进程快照

• ps — Processes Snapshot
– 格式:ps [选项]...

• 常用命令选项
– aux:显示当前终端所有进程(a)、当前用户在所有
终端下的进程(x), 以用户格式输出(u)
– -elf:显示系统内所有进程(-e)、以长格式输出(-l)
信息、包括最完整的进程信息(-f)


  ps  aux:输出进程信息非常详细
     – 列出正在运行的所有进程


  ps  -elf:输出进程信息比较详细,有该进程的父进程信息
     – 列出正在运行的所有进程

   PPID:父进程的PID号
请统计Linux一共有多少个用户? 
[root@svr7 ~]# wc -l /etc/passwd  #统计有多少行
 42 /etc/passwd

 请统计/etc目录下以tab结尾的文件,一共有多少个? 
# find /etc/ -name "*tab"  -type  f 
# find /etc/ -name "*tab"  -type  f   | wc -l

 请统计/etc目录下以 .conf 结尾的文件,一共有多少个?
# find /etc/ -name "*.conf"  -type f  
# find /etc/ -name "*.conf"  -type f   |  wc -l
 请统计Linux正在运行的进程,一共有多少个?
[root@svr7 ~]# ps aux | wc -l
进程动态排名
• top 交互式工具
– 格式:top [-d 刷新秒数] [-U 用户名]
   按键盘上  P(大写)按照CPU排序
   按键盘上  M(大写)按照内存排序
检索进程
• pgrep — Process Grep
– 用途:pgrep [选项]... 查询条件
• 常用命令选项
– -l:输出进程名,而不仅仅是 PID
– -U:检索指定用户的进程
– -t:检索指定终端的进程
– -x:精确匹配完整的进程名
[root@svr7 ~]# who  #当前系统有哪些用户正在登陆

       pts:图形命令行终端

[root@svr7 ~]# pgrep  crond
[root@svr7 ~]# pgrep  -l crond
[root@svr7 ~]# pgrep  -l log 
[root@svr7 ~]# pgrep -lU lisi

[root@svr7 ~]# pgrep -lU lisi -t pts/3
[root@svr7 ~]# pgrep -lU lisi -t pts/2
控制进程
• 后台启动
– 在命令行末尾添加“&”符号,(运行并转入后台)
• Ctrl + z 组合键
– 挂起当前进程(暂停并转入后台)
• jobs 命令
– 查看后台任务列表
• fg 命令
– 将后台任务恢复到前台运行
• bg 命令
– 激活后台被挂起的任务
[root@svr7 ~]# sleep 800 &   #运行放入后台
[root@svr7 ~]# jobs          #查看后台运行的进程
[root@svr7 ~]# sleep 1000
^Z                       #按键盘上  Ctrl + Z 暂停放入后台
[2]+  已停止               sleep 1000
[root@svr7 ~]# jobs   #查看后台运行的进程
[root@svr7 ~]# bg 2   #将后台编号为2的进程继续运行
[root@svr7 ~]# jobs
[root@svr7 ~]# fg 2   #将后台编号为2的进程,恢复到前台
sleep 1000
^C                    #按键盘上  Ctrl + C 结束
[root@svr7 ~]# jobs 
[root@svr7 ~]# fg 1   #将后台编号为1的进程,恢复到前台
sleep 800
^C                    #按键盘上  Ctrl + C 结束
[root@svr7 ~]# jobs
杀死进程
• 干掉进程的不同方法
– Ctrl+c 组合键,中断当前命令程序
– kill [-9] PID... 
– killall [-9] 进程名...
– pkill 查找条件

[root@svr7 ~]# sleep 800 &
[root@svr7 ~]# sleep 900 &
[root@svr7 ~]# jobs 
[root@svr7 ~]# jobs -l

[root@svr7 ~]# kill 15519
[root@svr7 ~]# jobs -l
[root@svr7 ~]# killall sleep
[root@svr7 ~]# jobs -l
使用journalctl工具
• 提取由 systemd-journal 服务搜集的日志
– 主要包括内核/系统日志、服务日志

• 常见用法
– journalctl | grep 关键词
– journalctl -u 服务名   [-p 优先级]
– journalctl -n 消息条数
– journalctl --since="yyyy-mm-dd HH:MM:SS" --
until="yyyy-mm-dd HH:MM:SS"

[root@svr7 ~]# yum -y install httpd
[root@svr7 ~]# systemctl restart httpd

#查看关于httpd服务日志
[root@svr7 ~]# journalctl -u httpd  
#查看是否开机自启动
[root@svr7 /]# systemctl is-enabled httpd  
disabled  #禁止开机启动
[root@svr7 /]# systemctl enable httpd

[root@svr7 /]# systemctl is-enabled httpd
enabled  #允许开机启动
[root@svr7 /]#



systemd
• 一个更高效的系统&服务管理器
– 开机服务并行启动,各系统服务间的精确依赖

– 服务目录:/lib/systemd/system/

[root@svr7 /]# vim /lib/systemd/system/httpd.service



RHEL6:运行级别   200 

         0:关机     0
         1:单用户模式(基本功能的实现,破解Linux密码)50 
	 2:多用户字符界面(不支持网络) 80
	 3:多用户字符界面(支持网络)服务器默认的运行级别  100
	 4:未定义
	 5:图形界面    190
	 6:重起   0
   
    切换运行级别:init  数字    
 



RHEL7:运行模式

   字符模式:multi-user.target
   图形模式:graphical.target

当前直接切换到图形模式
[root@svr7 /]# systemctl isolate graphical.target
当前直接切换到字符模式
[root@svr7 /]# systemctl isolate multi-user.target

查看每次开机默认进入模式
# systemctl get-default
 multi-user.target

设置永久策略,每次开机自动进入graphical.target
# systemctl set-default graphical.target 
# reboot 
• 常见用法
– journalctl | grep 关键词
– journalctl -u 服务名   [-p 优先级]
– journalctl -n 消息条数
– journalctl --since="yyyy-mm-dd HH:MM:SS" --
until="yyyy-mm-dd HH:MM:SS"

[root@svr7 ~]# yum -y install httpd
[root@svr7 ~]# systemctl restart httpd
#查看关于httpd服务日志
[root@svr7 ~]# journalctl -u httpd  
systemctl控制
• Linux系统和服务管理器
– 是内核引导之后加载的第一个初始化进程(PID=1)
– 负责掌控整个Linux的运行/服务资源组合

对于服务的管理
systemctl restart    服务名       #重起服务
systemctl start      服务名       #开启服务
systemctl stop       服务名       #停止服务
systemctl status     服务名       #查看服务当前的状态
systemctl enable     服务名       #设置服务开机自启动
systemctl disable    服务名       #设置服务不开机自启动
systemctl enable     服务名
#查看是否开机自启动
[root@svr7 /]# systemctl is-enabled httpd  
disabled                       #禁止开机启动
[root@svr7 /]# systemctl enable httpd
[root@svr7 /]# systemctl is-enabled httpd
enabled                        #允许开机启动
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值