根据客户端源IP地址的不同,DNS服务提供不同的解析地址

1、安装dns服务,修改全局配置文件/etc/named.conf

# yum -y install bind

# vim /etc/named.conf

acl beijingnet {                              模拟北京用户网段
192.168.1.0/;
};
acl shanghainet { 模拟上海用户网段
10.10.10.0/;
}; options {
// listen-on port 53 { 127.0.0.1; };    注释掉此配置:允许本机所有的IP地址都可以监测UDP53端口 // listen-on-v6 port 53 { ::1; };
// allow-query { localhost; }; 注释掉此配置,允许所有的ip来进行dns查询
//省略其他....
}; //zone "." IN { 注释掉此处配置,移至到/etc/named.rfc1912.zones.bj中
// type hint;
// file "named.ca";
//}; //include "/etc/named.rfc1912.zones"; view view_beijing { 使北京用户网段,匹配到/etc/named.rfc1912.zones.bj文件
match-clients {beijingnet;};
include "/etc/named.rfc1912.zones.bj";
};
view view_shanghai { 使上海用户网段,匹配到/etc/named.rfc1912.zones.sh文件
match-clients {shanghainet;};
include "/etc/named.rfc1912.zones.sh";
};

2、创建北京和上海的区域配置文件

创建北京的区域文件

# cp /etc/named.rfc1912.zones /etc/named.rfc1912.zones.bj

# chown :named /etc/named.rfc1912.zones.bj

# vim /etc/named.rfc1912.zones.bj

//新增如下代码
zone "." IN {
type hint;
file "named.ca";
};
zone "ysu.com" {
type master;
file "ysu.com.zone.bj";
};

创建上海区域配置文件

# cp /etc/named.rfc1912.zones /etc/named.rfc1912.zones.sh

# chown :named /etc/named.rfc1912.zones.sh

# vim /etc/named.rfc1912.zones.sh

//新增如下代码
zone "." IN {
type hint;
file "named.ca";
};
zone "ysu.com" {
type master;
file "ysu.com.zone.sh";
};

3、修改区域数据库文件

创建北京的区域数据库

# touch /var/named/ysu.com.zone.bj

# chown :named /var/named/ysu.com.zone.bj

# chmod 640 /var/named/ysu.com.zone.bj

# vim /var/named/ysu.com.zone.bj

$TTL
@ IN SOA ns1.ysu.com. admin.ysu.com. ( 1H
5M
7D
1D )
IN NS ns1.ysu.com.
ns1.ysu.com. IN A 192.168.1.1
www.ysu.com. IN A 192.168.1.250

创建上海的区域数据库

# touch /var/named/ysu.com.zone.sh

# chown :named /var/named/ysu.com.zone.sh

# chmod 640 /var/named/ysu.com.zone.sh

# vim /var/named/ysu.com.zone.sh

$TTL
@ IN SOA ns1.ysu.com. admin.ysu.com. ( 1H
5M
7D
1D )
IN NS ns1.ysu.com.
ns1.ysu.com. IN A 10.10.10.1
www.ysu.com. IN A 10.10.10.250

4、启动DNS服务

# systemctl start named

5、测试智能DNS效果

用两个网段的测试机可以通过dig命令测试

如: # dig www.ysu.com @192.168.1.1

# dig www.ysu.com @10.10.10.1

Linux创建智能DNS的更多相关文章

  1. Linux实现内容分发的主备模式的智能DNS

    BIND实现智能DNS的原理是通过view的方式,首先判断客户请求的来源,然后返回不同的IP 规划:为za.com域进行智能解析 分2个网段,192.168.1.0/24网段的请求解析到192.168 ...

  2. Linux DNS分离解析与构建智能DNS服务器

    一 构建DNS分离解析 方法一 : [root@localhost ~]# vim /etc/named.conf [root@localhost ~]# cd /var/named/ [root@l ...

  3. DNS—正、反向解析;委派;主从;子域;转发;智能dns等的实现

    前言:DNS,耳熟能详的东西,内容太多,小编也不太好讲清,只能写几个实验详解,供大家参考. 一.简单介绍 1.DNS:通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析). 端 ...

  4. DNS单机部署以及智能dns部署

    dns理论 dns的出现 网络出现的早期是使用IP地址通讯的,那时就几台主机通讯.但是随着接入网络主机的增多,这种数字标识的地址非常不便于记忆,UNIX上就出现了建立一个叫做hosts的文件(Linu ...

  5. DNS正、反向解析+负载均衡+智能DNS+密钥认证

    主机名 IP 软件包 系统版本 内核版本 实验环境 master 192.168.30.130 bind.x86_64 32:9.8.2-0.17.rc1.el6_4.6 bind-chroot.x8 ...

  6. Linux 学习之DNS服务器

    概念: DNS:Domain Name System 域名系统 FQDN:Fully Qualified Domain Name 完整主机名 正向解析:由主机名查IP地址 SOA:开始验证(Start ...

  7. Linux 自动化部署DNS服务器

    Linux 自动化部署DNS服务器 1.首先配置主DNS服务器的IP地址,DNS地址一个写主dns的IP地址,一个写从dns的地址,这里也可以不写,在测试的时候在/etc/resolv.conf中添加 ...

  8. 基于Linux的智能家居的设计(4)

    3  开发环境的搭建 本次课题使用的开发环境比較特殊.没有一个现成的集成开发环境,需要自己一步一步的搭建开发环境,开发环境的搭建的过程十分复杂,并且假设没有这个开发环境本次课题就无法进行. 因此.在进 ...

  9. lvs+keepalived+bind实现负载均衡高可用智能dns【转】

    转:https://www.cnblogs.com/mikeluwen/p/7068356.html 整体架构: 1.IP地址规划: Dns1:172.28.0.54 Dns2:172.28.0.55 ...

随机推荐

  1. nodejs的req取参req.body,req.params,req.query

    1/req.query: Get:/domo?name=ximiximi&blog=https://home.cnblogs.com/u/ximiximi-blog/ app.get('/do ...

  2. Java面向对象的局部变量和成员变量

    package cn.itcast.day06.demo03; /* 局部变量和成员变量 1. 定义的位置不一样[重点] 局部变量:在方法的内部,类的方法内部 成员变量:在方法的外部,直接写在类当中 ...

  3. 7 scrapy 初识

    scrapy框架 框架介绍: Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,非常出名,非常强悍.所谓的框架就是一个已经被集成了各种功能(高性能异步下载,队列,分布式,解析,持久化 ...

  4. github 创建gitlab每次提交都要输入账号

    在使用git提交代码到github的时候,经常要求输入用户名和密码,类似这种: 除了在 github 上添加 SSH key 网上有这么一种解决方法:使用git提交到github,每次都要输入用户名和 ...

  5. python ui自动化之元素定位和常用操作

    做ui自动化的最基础的就是页面元素定位了,如果连页面元素都定位不到,自动化从何谈起呢?接下来我们就看看页面元素定位的方法吧!(这里就用百度页面来进行演示) 一.最通用的几种定位方式: 1.通过id定位 ...

  6. hamming distance(汉明距离)

    看knn算法时无意间发现这个算法,但是维基上有错误的示例和python代码...因为汉明距离并不是求相同长度字符串(或相同长度的整数)之间的字符(或数位)差异个数. 正确的详见:https://en. ...

  7. Spring扫描组件的使用详解

    https://blog.csdn.net/you18131371836/article/details/53691044?utm_source=blogxgwz5

  8. Dapr Pub/Sub 集成 RabbitMQ 、Golang、Java、DotNet Core

    前置条件: <Dapr运用> <Dapr 运用之 Java gRPC 调用篇> <Dapr 运用之集成 Asp.Net Core Grpc 调用篇> 搭建 Rabb ...

  9. HDU5444 Elven Postman

    按要求递归建树输出~ #include<cstdio> #include<algorithm> #include<cstring> using namespace ...

  10. 吴裕雄--天生自然Numpy库学习笔记:NumPy 数组属性

    NumPy 数组的维数称为秩(rank),秩就是轴的数量,即数组的维度,一维数组的秩为 1,二维数组的秩为 2,以此类推. 在 NumPy中,每一个线性的数组称为是一个轴(axis),也就是维度(di ...