自建DNS服务器,了解一代防火墙必备网络环境,局域网设备域名访问教程

本文主要是介绍自建DNS服务器,了解一代防火墙必备网络环境,局域网设备域名访问教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

互联网用域名访问各种服务,很常见。比如访问本站,用 www.icxbk.com
可是在家里,家庭局域网中的 linux 主机,文件服务器等,是直接用 IP 访问的,比如:
用 192.168.3.21 访问 Linux电脑
用 192.168.3.31 访问 文件服务器

本文记录一下在家庭局域网中,使用自己的域名

用 www.robe.lalala 访问 linux电脑
用 file.robe.lalala 访问 文件服务器。

提供这个解析域名服务的是域名服务器/DNS,ISC组织开发了开源的DNS软件bind9,本文使用这个软件,bind9 详细信息可以去官网查看https://www.isc.org/

安装

安装软件包 bind9,ubuntu 18.04 用源中的 bind9 就可以

安装完成后,开始配置,配置之前,需要选一个域名,自己想用什么域名都行,家庭局域网内自己做主,最好不要和公网的域名冲突,不然的话,你本想访问公网的服务,结果DNS老是给你解析到局域网内的主机,那就不爽了。
选好域名后,先检查一下域名有没有冲突:比如笔者的域名 robe.lalala,在公网查询不到,可以用了。

开始配置bind9

打开 /etc/bind/named.conf.local 文件,
增加一个zone,填上域名;括号中type填master,主域名服务器;file 是解析的数据的文件,填上全路径

修改file 文件的内容,可以复制本机的/etc/bind/db.local文件,修改如下,主要是增加两个A地址记录,保存

重启bind9服务新配置生效:

Systemctl restart bind9.server

在bind9服务的本地查询域名,域名服务器本身,www.robe.lalala,file.robe.lalala 都可以查到对应的ip地址

其他电脑上,直接查询不到,是因为电脑一般都自动获取DNS服务器ip,直接去网关上查询了,或者其他DNS服务器了,跳过了本地局域网内的DNS服务器。
那就改,指定DNS服务器为局域网内的DNS服务器,修改网络设置如下,填上运行bind9服务的那台机器的IP,确定保存。

再试试,就可以解析了,还不行的话需要重启一下电脑。DNS 解析过的域名会缓存在电脑中,重启会清空缓存,再开机没有缓存,就直接找DNS服务器解析,重启后新的域名生效

现在在电脑浏览器中输入 www.robe.lalala,和 file.robe.lalala,直接打开服务器了


putty 远程登陆也可以用这个域名代替 ip 地址

使用新的域名,需要给电脑设置DNS服务器的地址。因为家里局域网中的电脑手机,默认是自动获取DNS服务器IP的,获取到的DNS服务器IP是网关IP,网关解析不到的域名会按照优先级,依次去电信公司DNS查询,等等等,都找不到最终会去根DNS服务器查询,跳过了本地DNS服务器,所以每一台电脑手机都要设置DNS服务器IP。

参考:
https://wiki.archlinux.org/index.php/BIND_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
https://packages.ubuntu.com/eoan/bind9

这篇关于自建DNS服务器,了解一代防火墙必备网络环境,局域网设备域名访问教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/871877

相关文章

ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法

《ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法》本文介绍了Elasticsearch的基本概念,包括文档和字段、索引和映射,还详细描述了如何通过Docker... 目录1、ElasticSearch概念2、ElasticSearch、Kibana和IK分词器部署

部署Vue项目到服务器后404错误的原因及解决方案

《部署Vue项目到服务器后404错误的原因及解决方案》文章介绍了Vue项目部署步骤以及404错误的解决方案,部署步骤包括构建项目、上传文件、配置Web服务器、重启Nginx和访问域名,404错误通常是... 目录一、vue项目部署步骤二、404错误原因及解决方案错误场景原因分析解决方案一、Vue项目部署步骤

Linux流媒体服务器部署流程

《Linux流媒体服务器部署流程》文章详细介绍了流媒体服务器的部署步骤,包括更新系统、安装依赖组件、编译安装Nginx和RTMP模块、配置Nginx和FFmpeg,以及测试流媒体服务器的搭建... 目录流媒体服务器部署部署安装1.更新系统2.安装依赖组件3.解压4.编译安装(添加RTMP和openssl模块

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

Ubuntu固定虚拟机ip地址的方法教程

《Ubuntu固定虚拟机ip地址的方法教程》本文详细介绍了如何在Ubuntu虚拟机中固定IP地址,包括检查和编辑`/etc/apt/sources.list`文件、更新网络配置文件以及使用Networ... 1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安

PyCharm 接入 DeepSeek最新完整教程

《PyCharm接入DeepSeek最新完整教程》文章介绍了DeepSeek-V3模型的性能提升以及如何在PyCharm中接入和使用DeepSeek进行代码开发,本文通过图文并茂的形式给大家介绍的... 目录DeepSeek-V3效果演示创建API Key在PyCharm中下载Continue插件配置Con

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

Spring Boot整合log4j2日志配置的详细教程

《SpringBoot整合log4j2日志配置的详细教程》:本文主要介绍SpringBoot项目中整合Log4j2日志框架的步骤和配置,包括常用日志框架的比较、配置参数介绍、Log4j2配置详解... 目录前言一、常用日志框架二、配置参数介绍1. 日志级别2. 输出形式3. 日志格式3.1 PatternL

JavaWeb-WebSocket浏览器服务器双向通信方式

《JavaWeb-WebSocket浏览器服务器双向通信方式》文章介绍了WebSocket协议的工作原理和应用场景,包括与HTTP的对比,接着,详细介绍了如何在Java中使用WebSocket,包括配... 目录一、概述二、入门2.1 POM依赖2.2 编写配置类2.3 编写WebSocket服务2.4 浏