bind服务

article/2025/10/1 7:55:55

一、域名

www.baidu.com = www.baidu.com.

(.)根域       (com)一级域名      (baidu)二级域名

 

二、DNS解析记录分类

A记录、CNAME、MX记录、NS记录

1、A记录

通过域名直接查询到IP         

例如:www.test.com 查询到IP 172.29.30.88 

2、CNAME记录

多个域名查询到同一个IP

例如:www.test.com和www.test.cz.com 查询到IP 172.29.30.88

3、NS记录

用户发送请求给bind服务,bind服务不能提供权威的解析,NS返回给用户,用户再发送请求给权威bind的服务器,最后返回IP给用户

4、MX记录

MX记录:针对邮件服务解析,配合A记录进行

三、安装配置BIND服务

1、安装bind

Redhat家族:yum -y install bind bind-chroot

Ubuntu家族:sudo apt-get install bind9

2、查看是否安装成功

rpm -qa | grep bind

3、查看安装的内容

rpm -ql bind | more

4、启动bind服务

/etc/init.d/named start

5、搜索进程是否启动成功

ps -aux | grep named

6、查看主配置文件

//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
// See the BIND Administrator's Reference Manual (ARM) for details about the
// configuration located in /usr/share/doc/bind-{version}/Bv9ARM.htmloptions {                                                   # options{} - 整个BIND使用的全局选项listen-on port 53 { 127.0.0.1; };listen-on-v6 port 53 { ::1; };directory       "/var/named";                       # 配置数据库的文件,以及主要的配置文件dump-file       "/var/named/data/cache_dump.db";        # DNS解析过的缓存位置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; };                                 #权限控制/*- If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.- If you are building a RECURSIVE (caching) DNS server, you need to enablerecursion.- If your recursive DNS server has a public IP address, you MUST enable accesscontrol to limit queries to your legitimate users. Failing to do so willcause your server to become part of large scale DNS amplificationattacks. Implementing BCP38 within your network would greatlyreduce such attack surface*/recursion yes;dnssec-enable yes;dnssec-validation yes;/* Path to ISC DLV key */bindkeys-file "/etc/named.iscdlv.key";managed-keys-directory "/var/named/dynamic";pid-file "/run/named/named.pid";session-keyfile "/run/named/session.key";
};logging {                                               # logging{} - 服务日志选项channel default_debug {file "data/named.run";severity dynamic;};
};zone "." IN {                                            # zone.{} -DNS域解析type hint;file "named.ca";
};include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

二、实战场景

1、将named.conf备份

mv /etc/named.conf /etc/named.conf_default

2、重新编写主配置文件named.conf

vi named.conf

options{directory "/var/named";
};
zone "imooc.com" {type master;                # master类型表示bind服务是主DNSfile "imooc.com.zone";      # 解析记录的文件配置
};

3、在/var/named这个目录下创建imooc.com.zone文件

vi /var/named/imooc.com.zone

$TTL 7200                                        # 代表DNS失效时间,以秒为单位
mooc.com. IN SOA imooc.com. 289900168.qq.com. (222 1H 15M 1W 1D)            #解析的起始记录,以及管理员的邮箱
imooc.com. IN NS dns1.imooc.com.                    # 设置bind服务是由哪台服务器解析
dns1.imooc.com. IN A 192.168.63.188                 # 设置bind服务解析的IP
www.imooc.com. IN A 115.182.41.180                  # 将www.imooc.com解析到 115.182.41.180

另外一种写法返回的结果是一样的

$TTL 7200                                        
@ IN SOA imooc.com. 289900168.qq.com. (222 1H 15M 1W 1D)            
imooc.com. IN NS dns1.imooc.com.                    
dns1 IN A 192.168.63.188               
www IN A 115.182.41.180                  

4、重启bind服务

systemctl restart named

5、如果启动失败,可以使用下面的命令查看原因

tail -f /var/log/messages

6、安装dig命令

yum install bind-utils

7、测试

dig @192.168.63.186 www.imooc.com

@192.168.63.186 ——dns服务器,我用的是本机,就填写本机ip

8、配置文件书写规则

二、实战场景二(CNAME记录的用法)

 

1、修改主配置文件

vi /etc/named.conf

添加红色区域这段,保存

zone "iaskjob.com" {type master;file "iaskjob.com.zone";
};

2、在var/named/文件配置解析文件

vi /var/named/iaskjob.com.zone

添加下列内容保存

$TTL 7200
iaskjob.com. IN SOA imooc.com. 289900168.qq.com. (222 1H 15M 1W 1D)
iaskjob.com. IN NS dns1.iaskjob.com.
dns1.iaskjob.com. IN A 192.168.63.186
imooc.iaskjob.com. IN CNAME www.imooc.com.

重启bind服务 

systemctl restart named

测试

dig @192.168.63.186 imooc.iaskjob.com

测试2

将电脑的dns服务器修改成192.168.63.188

打开cmd命令框,nslookup imooc.iaskjob.com

三、正向解析与反向解析

场景三(PTR记录)邮件服务器的解析

 

 

 


http://chatgpt.dhexx.cn/article/kUhCZDLy.shtml

相关文章

bindService启动流程

通过bindService启动的Service,会执行Service的onCreate、onBind、onUnbind、onDestroy方法,可以通过onBind方法返回的Binder对象和调用端进行通信,并且Service的生命周期和调用端同步。 如下是启动bindService的代码 var stu: Student? null val con…

AIDL报错,bindService一直连接不上、不起作用。

先说问题,最近用aidl,发现bindService根本就不走,不知道咋回事,明明写的没有任何毛病啊? //aidl绑定private void bind() {Intent intent new Intent();String pkg "com.example.mzz_service";//需要调用…

服务两种启动方式(startService与bindService)的区别

综上两篇文章 1.Android Service的基本用法(startService启动方式生命周期) 2.Android Service与Activity之间的通信(bindService启动方式) 区别如下: 一.生命周期上的区别 startService启动服务:Service会…

进程间通讯:Binder:bindService之 onServiceConnected回调

1:bindService官方概述 很明显 通过Google官方文档描述,我们知道 1:bindService()的返回值只是表明服务是否存在; 2:真正能代表是否成功绑定服务的是触发onServiceConnected(&…

Android入门第41天-Android中的Service(bindService)

介绍 在前一天我们介绍了Android中有两种启动Service的方法。并擅述了startService和bindService的区别。同时我们着重讲了startService。 因此今天我们就来讲bindService。bindService大家可以认为它是和Android的一个共生体。即这个service所属的activity如果消亡那么bindS…

Android Binder框架实现之bindService详解

Android Binder框架实现之bindService详解 Android Binder框架实现目录: Android Binder框架实现之Binder的设计思想 Android Binder框架实现之何为匿名/实名Binder Android Binder框架实现之Binder中的数据结构 Android Binder框架实现之Binder相关的接口和类 Andr…

Android bindService流程

一. 前言 我们可以通过startService来启动一个服务, 当然也可以通过bindService绑定一个服务,本篇文章我们来讲一讲绑定服务的完整流程, 阅读此文之前,建议先阅读一下笔者的这三篇文章 Android 进程间通信机制(三) 系统进程与应用进程通信 Android 进程间通信机制(四) 应用进程…

bind服务程序

一、介绍 1、bind服务是全球范围内使用最广泛、最安全可靠且高效的域名解析服务程序。 2、为了有效地限制bind服务程序仅能对自身的配置文件进行操作,以确保整个服务器的安全,在安装部署bind服务程序时加上chroot(俗称牢笼机制)…

startService bindService 区别

Android执行Service有两种方法,一种是startService,一种是bindService。下面让我们一起来聊一聊这两种执行Service方法的区别。 1、生命周期上的区别 执行startService时,Service会经历onCreate->onStartCommand。当执行stopService时&…

Android中Service使用bindService

前面已经对Service的startServer方式启动一个服务了解过了,现在来看一下Service的另一种启动方式→bindServer bindServer使用场景 1、在同个app之间调用(即是同一个进程中) 2、在不同app之间调用(即是跨进程间通信&#xff09…

Android——bindService()方法启动服务

通过绑定服务来启动的话需要注意创建一个类来实现ServiceConnection接口,重写onServiceConnected()和onServiceDisconnected()方法。这个类用于服务的连接。成功绑定服务时,会调用onServiceConnected&#…

Android Service 服务(三)—— bindService与remoteService

一、bindService简介 bindService是绑定Service服务,执行service服务中的逻辑流程。 service通过Context.startService()方法开始,通过Context.stopService()方法停止;也可以通过Service.stopSelf()方法或者Service.stopSelfResult()方法来停…

SO_BINDTODEVICE 使用

就绑定到了接口"lmi40"上,所有数据报的收发都只经过这个网卡. 对于SOL_BINDTODEVICE的总结如下: (1) 对于TCP套接口、UDP套接口、RAW套接口,可以通过SO_BINDTODEVICE套接口选项将套接口绑定到指定的网络接口上。绑定之后&…

startService与bindService的区别

Android执行Service有两种方法,一种是startService,一种是bindService。下面让我们一起来聊一聊这两种执行Service方法的区别。 1、生命周期上的区别 执行startService时,Service会经历onCreate->onStartCommand。当执行stopService时&…

startService和bindService的区别

首先看下其生命周期的区别: 生命周期: onCreate → startCommand → onDestroy onCreate → onBind→onUnBind→ onDestroy 静态绑定对应着startService;动态绑定对应着bindService,静态有自己独立的生命周期,动态会…

bindService的使用

bindService与starService之间的区别: 在程序通过startService()方法启动的服务,会长期在后台运行,并且启动服务的组件与服务之间没有关系,即使启动服务的组件被销毁,服务还是会运行。 但是当一…

Service学习以及BindService的使用

Service 什么是Service Service是一个可以在后台执行长时间操作而不使用用户界面的应用组件。 如何使用Service 我们首先需要实现一个Service的子类。主要实现Service的onCreat(),onStartCommand(),onB…

Android中bindService的使用及Service生命周期

Android中有两种主要方式使用Service,通过调用Context的startService方法或调用Context的bindService方法,本文只探讨纯bindService的使用,不涉及任何startService方法调用的情况。如果想了解startService相关的使用,请参见《Andr…

粒子群算法笔记

实质:在定义域随机放置多个变量,不断跳跃,同步寻找最优解。寻找方向受单个粒子与全部粒子的最优位置共同影响。单个粒子按照公式不断迭代寻找当新位置。多个变量聚集在某一点时,该点即是最优解。 控制其搜索速度(步长…

粒子群算法及C++实现

参考博客 https://www.cnblogs.com/alan666/p/8311804.html https://blog.csdn.net/weixin_39059031/article/details/103723843 https://blog.csdn.net/weixin_40679412/article/details/80571854 https://blog.csdn.net/daaikuaichuan/article/details/81382794 https://blo…