内网DNS重要使用作用
DNS服务简介:
DNS(Domain Name System–域名系统),是因特网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。是一个应用层的协议DNS使用TCP和UDP端口53。
DNS是一个分布式数据库,命名系统采用层次的逻辑结构,如同一颗倒置的树,这个逻辑的树形结构称为域名空间,由于DNS划分了域名空间,所以各机构可以使用自己的域名空间创建DNS信息.
注:DNS域名空间中,树的最大深度不得超过127层,树中每个节点最长可以存储63个字符.
以上是在公网中的使用
更详细介绍:DNS服务器搭建与配置 | 曹世宏的博客
DNS内网使用
首先,我们纯内网中,是不能过连接外网的环境的。
但是纯内网也会有许多的IP和服务,我们该怎么来区分,总不能记录所有IP,所以我们需要自建内网的DNS,达到内网域名解析的效果。
DNS使用作用
WHAT:DNS(域名系统)说白了,就是把一个域和IP地址做了一下绑定,如你在里机器里面输入 nslookup www.qq.com,出来的Address是一堆IP,IP是不容易记的,所以DNS让IP和域名做一下绑定,这样你输入域名就可以了
WHY:我们要用ingress,在K8S里要做7层调度,而且无论如何都要用域名(如之前的那个百度页面的域名,那个是host的方式),但是问题是我们怎么给K8S里的容器绑host,所以我们必须做一个DNS,然后容器服从我们的DNS解析调度
我们会在10.4.7.11 安装dns主服务,10.4.7.12作为备用dns服务
也可以走一层keepalive虚拟IP。
可以简单理解成:
11机器:反向代理
12机器:反向代理
21机器:主控+运算节点(即服务群都是跑在21和22上)
22机器:主控+运算节点(生产上我们会把主控和运算分开)
200机器:运维主机(放各种文件资源)
这样控节点有两个,运算节点有两个,就是小型的分布式,现在你可能没办法理解这些内容,我们接着做下去,慢慢的,你就理解了
初始化
# 查看enforce是否关闭,确保disabled状态,当然可能没有这个命令
~]# getforce
# 查看内核版本,确保在3.8以上版本
~]# uname -a
# 关闭firewalld
~]# systemctl stop firewalld
# 安装epel源及相关工具
~]# yum install epel-release -y
~]# yum install wget net-tools telnet tree nmap sysstat lrzsz dos2unix bind-utils -y
uname:显示系统信息
-a/-all:显示全部
yum:提供了查找、安装、删除某一个、一组甚至全部软件包的命令
install:安装
-y:当安装过程提示选择全部为"yes"
安装步骤
# 在11机器:
~]# yum install bind -y
~]# rpm -qa bind
# out: bind-9.11.4-9.P2.el7.x86_64
# 配置主配置文件,11机器
~]# vi /etc/named.conf
listen-on port 53 { 10.4.7.11; }; # 原本是127.0.0.1
# listen-on-v6 port 53 { ::1; }; # 需要删掉
allow-query { any; }; # 原本是locall
forwarders { 10.4.7.254; }; #另外添加的
dnssec-enable no; # 原本是yes
dnssec-validation no; # 原本是yes# 检查修改情况,没有报错即可(即没有信息)
~]# named-checkconf
rpm:软件包管理器
-qa:查看已安装的所有软件包
rpm和yum安装的区别:前者不检查相依性问题,后者检查(即相关依赖包)
named.conf文件内容解析:
listen-on:监听端口,改为监听在内网,这样其它机器也可以用
allow-query:哪些客户端能通过自建的DNS查
forwarders:上级DNS是什么
# 11机器,经验:主机域一定得跟业务是一点关系都没有,如host.com,而业务用的是od.com,因为业务随时可能变
# 区域配置文件,加在最下面
~]# vi /etc/named.rfc1912.zones
zone "host.com" IN {type master;file "host.com.zone";allow-update { 10.4.7.11; };
};zone "od.com" IN {type master;file "od.com.zone";allow-update { 10.4.7.11; };
};
# 11机器:
# 注意serial行的时间,代表今天的时间+第一条记录:20200112+01
7-11 ~]# vi /var/named/host.com.zone
$ORIGIN host.com.
$TTL 600 ; 10 minutes
@ IN SOA dns.host.com. dnsadmin.host.com. (2020011201 ; serial10800 ; refresh (3 hours)900 ; retry (15 minutes)604800 ; expire (1 week)86400 ; minimum (1 day))NS dns.host.com.
$TTL 60 ; 1 minute
dns A 10.4.7.11
HDSS7-11 A 10.4.7.11
HDSS7-12 A 10.4.7.12
HDSS7-21 A 10.4.7.21
HDSS7-22 A 10.4.7.22
HDSS7-200 A 10.4.7.2007-11 ~]# vi /var/named/od.com.zone
$ORIGIN od.com.
$TTL 600 ; 10 minutes
@ IN SOA dns.od.com. dnsadmin.od.com. (2020011201 ; serial10800 ; refresh (3 hours)900 ; retry (15 minutes)604800 ; expire (1 week)86400 ; minimum (1 day))NS dns.od.com.
$TTL 60 ; 1 minute
dns A 10.4.7.11# 看一下有没有报错
7-11 ~]# named-checkconf
7-11 ~]# systemctl start named
7-11 ~]# netstat -luntp|grep 53
TTL 600:指定IP包被路由器丢弃之前允许通过的最大网段数量
10 minutes:过期时间10分钟
SOA:一个域权威记录的相关信息,后面有5组参数分别设定了该域相关部分
dnsadmin.od.com. 一个假的邮箱
serial:记录的时间
$ORIGIN:即下列的域名自动补充od.com,如dns,外面看来是dns.od.com
netstat -luntp:显示 tcp,udp 的端口和进程等相关情况
# 11机器,检查主机域是否解析
7-11 ~]# dig -t A hdss7-21.host.com @10.4.7.11 +short
# 配置linux客户端和win客户端都能使用这个服务,修改
7-11 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DNS1=10.4.7.11
7-11 ~]# systemctl restart network
7-11 ~]# ping www.baidu.com
7-11 ~]# ping hdss7-21.host.com
dig -t A:指的是找DNS里标记为A的相关记录,而后面会带上相关的域,如上面的hdss7-21.host.com,为什么外面配了HDSS7-21后面还会自动接上.host.com就是因为$ORIGIN,后面则是对应的IP
+short:表示只返回IP
# 在所有机器添加search... ,即可使用短域名(我的是自带的)
~]# vi /etc/resolv.conf
~]# ping hdss7-200
# 在非11机器上,全部改成11
~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DNS1=10.4.7.11~]# systemctl restart network
# 试下网络是否正常
~]# ping baidu.com
# 其它机器尝试ping7-11机器
7-12 ~]# ping hdss7-11.host.com
让其它机器的DNS全部改成11机器的好处是,全部的机器访问外网就只有通过11端口,更好控制
# 修改window网络,并ping
后续域名解析
[root@hdss7-11 ~]# cat /var/named/od.com.zone
$ORIGIN od.com.
$TTL 600 ; 10 minutes
@ IN SOA dns.od.com. dnsadmin.od.com. (2020011523 ; serial #这个需要每次增加110800 ; refresh (3 hours)900 ; retry (15 minutes)604800 ; expire (1 week)86400 ; minimum (1 day))NS dns.od.com.
$TTL 60 ; 1 minute
dns A 10.4.7.11
harbor A 10.4.7.200
k8s-yaml A 10.4.7.200
traefik A 10.4.7.10
dashboard A 10.4.7.10
zk1 A 10.4.7.11
zk2 A 10.4.7.12
zk3 A 10.4.7.21
jenkins A 10.4.7.10
gitlab A 10.4.7.200
dubbo-monitor A 10.4.7.10
demo A 10.4.7.10
config A 10.4.7.10
mysql A 10.4.7.11
portal A 10.4.7.10
zk-test A 10.4.7.11
zk-prod A 10.4.7.12
config-test A 10.4.7.10
config-prod A 10.4.7.10
demo-test A 10.4.7.10
demo-prod A 10.4.7.10
blackbox A 10.4.7.10
prometheus A 10.4.7.10
grafana A 10.4.7.10
km A 10.4.7.10
kibana A 10.4.7.10
内网DNS重要使用作用相关推荐
- 爱奇艺混合云内网DNS实践
爱奇艺早期业务多数以私有云方式部署,随时间推移,私有云模式在成本.弹性及区域覆盖等方面开始显现不足,而公有云在近年的发展中成熟度不断提高,逐步满足爱奇艺业务需求,爱奇艺开始有计划的使用公有云资源,逐渐 ...
- ubuntu 局域网dns服务器_如何在 Ubuntu 16.04 服务器上配置内网 DNS 服务
DNS 1. 简介 本文使用 BIND9,用尽量少的步骤,搭建出一个可用的内网 DNS 服务.另外要说明的一点是,本文不仅适用于 Ubuntu 16.04,也使用其后的 Ubuntu 系统(截止到目前 ...
- 云计算之路-试用Azure:搭建自己的内网DNS服务器
之前我们写过一篇博文谈到Azure内置的内网DNS服务器不能跨Cloud Service,而我们的虚拟机部署场景恰恰需要跨多个Cloud Service,所以目前只能选择用Azure虚拟机搭建自己的内 ...
- 搭建内网DNS服务器教程
内网DNS服务器的软件有许多,比如Bind9,dnsmasq,PowerDNS等等 而这次搭建内网dns服务的软件CoreDNS,CoreDNS是Golang编写的一个插件式DNS服务器,也是Kube ...
- 内网DNS报错:** server can‘t find ns1.aaa.com: SERVFAIL
内网DNS解析错误 1. 起因 DNS主域控在境外,想将内网DNS解析由本地DNS解析.网络环境为内网,无法访问INTERNET.搭建完毕后发现无法解析需要forward那些zone. bind版本: ...
- 网络安全-内网DNS劫持-ettercap
网络安全-内网DNS劫持-ettercap 前言 一,我也是初学者记录的笔记 二,可能有错误的地方,请谨慎 三,欢迎各路大神指教 四,任何文章仅作为学习使用 五,学习网络安全知识请勿适用于违法行为 学 ...
- 配置内网DNS实现内部域名解析
服务器 实战目的: ü 配置内网的DNS服务器实现内网服务器的域名解析. ü 配置内网的DNS服务器减少到Internet的域名解析流量. ü 配置内网的DNS服务器实现Internet上服务器的域名 ...
- centos搭建内网DNS配合nginx反向代理
需求:在内网已部署一个苹果CMS,但每次访问都要通过IP很不方便,需要转变为用域名访问 方法一: 给每个需要访问该网站的人添加一条hosts记录:如果只是几个人这方法的确很快,但是如果上百人甚至上千人 ...
- DNS服务——搭建企业内网DNS服务器的作用
前言 DNS服务--服务端 和 客户端 配置 介绍了如何在DNS安装DNS服务,更改一下配置文件就可以依据根提示解析全球域名.既然使用互联网上的DNS服务器就可以解析全球域名,为何还要自掏腰包搭建DN ...
- DNS:快速搭建公司内网DNS解析服务器
背景 是这样的,公司办公室有小机房,研发测试开发环境在这,但是CTO吧,觉得测试环境通过ip访问太复杂,难记,通过黄页打开觉得太low,虽然办公室出口也有公网ip,直接可以解析进来,但是又觉得公网访问 ...
最新文章
- cxgrid实现分组统计和添加Footer
- Bash shell脚本练习(一)
- 需求分析——使用类图建模
- 微信聊天可以带话题了 网友:朋友分享安利更方便了
- “摔杯一怒为俞渝” 当当创始人李国庆:蓄谋已久的阴谋 不吐不快
- python实验三答案_20192116 实验三《Python程序设计》实验报告
- word加水印铺满java,Word 2010文档中让水印铺满整个页面的设置方法
- 如何打造高可伸缩的移动电商架构?
- Java基本类型与类型转换咋就这么烦?
- faster rcnn源码阅读笔记2
- 数据采集与数据挖掘是什么?有什么区别?
- 32G内存服务器如何设置虚拟内存,大内存服务器设置虚拟内存
- 架构师害怕程序员知道的十项技能
- Redis——修改redis配置文件,并使配置生效
- 闹中取静:寻觅电商蓝海
- CVPR2019资源汇总
- Java OCR 图像智能字符识别技术,可识别中文
- WPS文档究竟有多好,不服一起跑个分?
- Vue2.0 饿了么报错: Unexpected side effect in lis tShow computed property
- mysql商城热销榜怎么实现_Redis实现商品热卖榜
热门文章
- android 仿旅游日历控件_仿携程日历控件
- handler机制详解
- 专业PLC数据采集软件PLC-Recorder通过ADS通讯进行倍福TwinCAT2和TwubCAT3数据采集的介绍
- linux自动挂载ipsan,RedhatLinux挂载IPSAN(iScsi协议)
- php微信聊天机器人_使用图灵机器人api搭建微信聊天机器人php实现
- matlab模拟厄米高斯光束,拉盖尔高斯光束_厄米高斯光束MATLAB仿真.pdf
- TortoiseSvn和Subclipse对应关系
- c语言考试中操作题文件,计算机二级考试C语言操作题题库(21页)-原创力文档...
- ROS配置ipv6方法
- LayUI树形表格treetable使用详解