DNS域名解析与Web服务

news2025/1/13 3:16:14

一、DNS 域名解析

1、概念:

(1) DNS:

DNS(Domain Name System)是一种用于将可读的域名(如www.baidu.com)转换为计算机可理解的IP地址(如192.168.1.1)的分布式命名系统,它使用户能够通过的域名访问网站而不是记住复杂的IP地址。

(2) 计算机种类的名称:主机名、全称域名

● 主机名与全称域名的比较:

① 主机名(Hostname):

主机名是计算机或设备在本地网络内的名称,通常用于在局域网中唯一标识设备,它通常是一个相对简单的名称,不包含完整的域名结构;

② 全称域名(Fully Qualified Domain Name,FQDN):

全称域名是一个完整的、全球唯一的域名标识符,,它包括主机名、子域名、二级域名、顶级域名等,例如 "www.baidu.com"FQDN 主要用于将可读的域名映射到IP地址,以便在全球互联网上找到特定的计算机或服务器。

(3) DNS 工作流程:

① 域名查询请求:

在Web浏览器或其他网络应用程序中输入一个域名时,计算机首先会将该请求发送给本地 DNS 服务器。

② 本机 DNS 解析器查询:

本机DNS解析器会首先检查自己的缓存,则解析器会直接返回IP地址 ;如果没有缓存或缓存过期,本地DNS解析器会向本地DNS服务器发送DNS查询请求。

③ 本地 DNS 服务器查询:

本地 DNS 服务器由本地的互联网服务提供商提供,当本地 DNS 服务器接收到查询请求后,会检查自己的缓存,看是否有该域名的解析结果。如果有,它会返回IP地址给本机 DNS 解析器;如果没有缓存或缓存过期,它将启动DNS解析过程。

④ DNS解析过程:

本地DNS服务器首先向根域DNS服务器发送查询请求,询问它关于顶级域(如.com、.org)的信息,然后继续向二级域DNS服务器发送查询请求,直到获取到最终的目标域名的IP地址。

2、DNS 服务器的配置:

(1) 安装 DNS 服务器:

yum install -y bind

bind(Berkeley Internet Name Domain)是一款广泛使用的开源DNS服务器软件,允许在 Linux 系统上配置和运行DNS服务器。

(2) 配置 DNS 服务器:

vim /etc/named.conf

这个配置文件包括了DNS服务器的设置、区域配置、日志设置等。

options {

        listen-on port 53 { 监听服务器的 IP; };

        listen-on-v6 port 53 { ::1; };

        directory "/var/named";

        dump-file "/var/named/data/cache_dump.db";

        statistics-file "/var/named/data/named_stats.txt";

        memstatistics-file "/var/named/data/named_mem_stats.txt";

        secroots-file "/var/named/data/named.secroots";

        recursing-file "/var/named/data/named.recursing";

        allow-query { any; };

① listen-on port 53 { 监听服务器的 IP; };

listen-on 主要关注DNS服务器监听的接口和端口,以确定它在哪些网络接口上等待查询请求:

● port 53 表示 DNS 服务器将监听标准 DNS 服务端口,即 53 端口。

● { 监听服务器的 IP; } 指定了允许的监听 IP 地址,这个用于限制 DNS 服务器只接受特定接口上的DNS查询请求。

② allow-query { any; };

allow-query 主要关注DNS服务器允许哪些客户端发送查询请求,以确定查询请求的源IP地址范围:

{ any; } 表示允许任何 IP 地址的客户端进行查询,意味着所有客户端都可以向该 DNS 服务器发送查询请求。

(3) DNS 区域文件配置:

vim /etc/named.rfc1912.zones

这个文件用于私有网络或内部域的DNS配置,这些区域的配置包括域名、区域类型、文件路径等。

① 配置示例:

● 正向区域:配置用于将域名解析为IP地址的正向区域

zone "example.com" IN {

        type master;

        file "example.com.zone";

};

● 反向区域:配置用于将IP地址解析为域名的反向区域

zone "1.168.192.in-addr.arpa" IN {

        type master;

        file "192.168.1.zone";

};

② 本实验配置:

zone "48.cn" IN {

        type master;

        file "48.cn.zone";

        allow-update { none; };

};

● file "48.cn.zone":48.cn.zone 是区域数据文件的文件名,区域数据文件是DNS服务器用来存储特定DNS区域(Zone)中的域名记录的文本文件,这些文件包含了将域名映射到IP地址以及其他DNS信息的记录。

(4) 编辑区域数据文件:

在 /var/named 下将一个空的区域数据文件命名为 48.cn.zone

cd /var/named

cp -p named.empty 48.cn.zone

vim 48.cn.zone

$TTL 3H

@  IN  SOA  @  root.48.cn. (

                 0 ; serial

                1D ; refresh

                1H ; retry

                1W ; expire

                3H ) ; minimum

      NS  @

      A 192.168.48.100

www  IN  A  192.168.48.100

● root.48.cn:指定当前区域的管理员为 root,根域名为 48.cn;

● A 192.168.48.100 ;www IN A 192.168.48.100:

将192.168.48.100这个ip地址与根域名和子域名相关联。

(5) 启动 DNS 服务器:

systemctl start named

systemctl enable named

systemctl stop firewalld

● 客户端测试:

客户端配置DNS服务器:

关闭防火墙,ping 域名:

二、Web 服务

1、概念:

Web(World Wide Web)是一种信息传递系统,它基于互联网(Internet)技术,允许用户在全球范围内访问和浏览文本、图像、音频、视频等多种类型的数据。

常见的 web 服务器:apache、nginx、tomcat

2、web 站点的建立:

(1) 安装 apache:

yum install -y apache

systemctl start apache

systemctl enable apache

apache 的默认页面:

(2) 配置 apache 服务:

① 编写网站源码文件:

mkdir /www/48 -p:递归创建网站根目录

配置主页文件,当访问 www.48.cn 时,页面显示48,而不是 apache 默认页面

vim /www/48/index.html

② 编写网站配置文件:

vim /etc/httpd/conf.d/48.conf

<VirtualHost 192.168.48.10:80>

DocumentRoot /www/48

ServerName www.48.cn

</VirtualHost>

● <VirtualHost web服务器ip地址:端口号>

● DocumentRoot:网站根目录;ServerName:网站配置的域名

<Directory "/www/48">

Require all granted

</Directory>

● <Directory "/www/48">:定义网页配置规则的应用路径

● Require all granted:指定这个目录的访问权限,"all"表示允许所有用户访问这个目录。

(3) 测试网页访问效果(关闭防火墙和 selinux):

systemctl restart httpd

systemctl stop firewalld

setenforce 0

客户机访问 www.48.cn:

(4) 防火墙和 Selinux 启动的配置:

开启防火墙和SELinux有助于提高 Linux 系统的安全性,减少潜在的风险和威胁。

① 防火墙配置:

systemctl start firewalld

firewall-cmd --add-service=http --permanent

firewall-cmd --add-service=dns --permanent

● firewall-cmd: 这是 Firewalld 的命令行工具,用于管理防火墙规则;

● --add-service=http: 告诉Firewalld要添加一个名为"http"的服务,通常对应HTTP协议(端口80)的通信 ;

● --add-service=dns: 添加一个名为"dns"的服务,通常对应DNS协议(端口53)的通信;

● --permanent: 将这个规则永久保存到防火墙配置中,以便在系统重启后保留。

② selinux 配置:

chcon -t httpd_sys_content_t /www -R

● chcon:change context,是一个用于更改文件或目录的SELinux安全上下文的命令;

● -t httpd_sys_content_t:"httpd_sys_content_t" 是一个SELinux安全上下文类型,通常用于将文件或目录标记为Apache HTTP服务器(httpd)的内容。这表明"/www"及其内容将被视为Web服务器的内容,以便Apache可以访问这些文件;

● -R:表示递归地为目录及其子目录设置相同的安全上下文。

查看网页访问效果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1105091.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

uniapp(uncloud) 使用生态开发接口详情5(云公共模块)

1.uniCloud官网 云对象中云公共模块: 网站: https://uniapp.dcloud.net.cn/uniCloud/cf-common.html // 官网介绍 cloudfunctions├─common // 云函数公用模块目录| └─hello-common // 云函数公用模块| ├─package.json| └─index.js // 公用模块代码&#xff0…

BaiChuan2保姆级微调范例

前方干货预警&#xff1a;这可能是你能够找到的&#xff0c;最容易理解&#xff0c;最容易跑通的&#xff0c;适用于各种开源LLM模型的&#xff0c;同时支持多轮和单轮对话数据集的大模型高效微调范例。 我们构造了一个修改大模型自我认知的3轮对话的玩具数据集&#xff0c;使用…

Scrapy设置代理IP方法(超详细)

Scrapy是一个灵活且功能强大的网络爬虫框架&#xff0c;用于快速、高效地提取数据和爬取网页。在某些情况下&#xff0c;我们可能需要使用代理IP来应对网站的反爬机制、突破地理限制或保护爬虫的隐私。下面将介绍在Scrapy中设置代理IP的方法&#xff0c;以帮助您更好地应对这些…

PAM从入门到精通(六)

接前一篇文章&#xff1a;PAM从入门到精通&#xff08;五&#xff09; 本文参考&#xff1a; 《The Linux-PAM Application Developers Guide》 先再来重温一下PAM系统架构&#xff1a; 更加形象的形式&#xff1a; 五、主要函数详解 4. pam_get_item 概述&#xff1a; 获取…

YUV图片常见格式

YUV图像 1个亮度量Y2个色度量(UV) 兼容黑白电视 可以通过降低色度的采样率而不会对图像质量影响太大的操作&#xff0c;降低视频传输带宽 有很多格式&#xff0c;所以渲染的时候一定要写对&#xff0c;不然会有很多问题&#xff0c;比如花屏、绿屏 打包格式 一个像素点一…

SRE 的黄昏,平台工程的初晨

船停在港湾是最安全的&#xff0c;但这不是造船的目的 完成使命的 SRE 过去 10 年&#xff0c;SRE 完成了体系化保障系统稳定性的使命。但在这个过程中&#xff0c;SRE 也逐渐变成了庞大的组织。而 SRE 本身的定位是保障系统稳定性&#xff0c;许多时候会因为担心稳定性而减缓…

线性代数-Python-01:向量的基本运算 -手写Vector -学习numpy的基本用法

文章目录 代码目录结构Vector.py_globals.pymain_vector.pymain_numpy_vector.py 一、创建属于自己的向量1.1 在控制台测试__repr__和__str__方法1.2 创建实例测试代码 二、向量的基本运算2.1 加法2.2 数量乘法2.3 向量运算的基本性质2.4 零向量2.5 向量的长度2.6 单位向量2.7 …

Linux上Docker的安装以及作为非运维人员应当掌握哪些Docker命令

目录 前言 1、安装步骤 2、理解镜像和容器究竟是什么意思 2.1、为什么我们要知道什么是镜像&#xff0c;什么是容器&#xff1f; 2.2、什么是镜像&#xff1f; 2.3、什么是容器&#xff1f; 2.4、Docker在做什么&#xff1f; 2.5、什么是镜像仓库&#xff1f; 2、Dock…

ArkTS开发实践

声明式UI基本概念 应用界面是由一个个页面组成&#xff0c;ArkTS是由ArkUI框架提供&#xff0c;用于以声明式开发范式开发界面的语言。 声明式UI构建页面的过程&#xff0c;其实是组合组件的过程&#xff0c;声明式UI的思想&#xff0c;主要体现在两个方面&#xff1a; 描述U…

基于PHP的毕业生招聘管理系统设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序&#xff08;小蔡coding&#xff09; 代码参考数据库参考源码获取 前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者&am…

吃鸡战队都爱!KOTIN京天华盛定制主机值得拥有

开学季大促正在进行时&#xff0c;少不了来自KOTIN京天的关爱&#xff01;称心满意的初秋&#xff0c;就来京天华盛官方旗舰店挑选一台心仪已久的电脑吧。准备入学的校友们和走过路过的游戏爱好者可千万不能错过了。 作为定制游戏电脑的行业佼佼者&#xff0c;KOTIN京天在各个价…

Android12之DRM架构(一)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…

视频太大怎么压缩变小?三分钟学会视频压缩

随着科技的不断发展&#xff0c;视频已经成为了我们日常生活中不可或缺的一部分&#xff0c;然而&#xff0c;大尺寸的视频文件常常会给我们带来诸多困扰&#xff0c;例如发送不便、存储空间不足等等&#xff0c;那么&#xff0c;如何将这些过大的视频文件压缩变小呢&#xff1…

公司如何防止源代码外泄,保护开发部门代码安全呢?

在智能制造业中&#xff0c;研发人员的开发环境&#xff0c;大多数采用c#开发语言svn 或c#git进行软件系统的开发&#xff0c;但是c#语言如何来防泄密保护呢&#xff1f;德人合科技针对于制造类企业制定了安全稳定的源代码防泄密方案&#xff0c;不影响员工的正常工作&#xff…

Vivado详细使用教程 | LED闪烁示例

文章目录 整体流程第一步&#xff1a;新建工程第二步&#xff1a;设计输入第三步&#xff1a;功能仿真第四步&#xff1a;分析与综合第五步&#xff1a;约束输入第六步&#xff1a;设计实现第七步&#xff1a;下载比特流 整体流程 打开软甲------>新建工程------->设计输…

0145 输入/输出(I/O)管理

目录 5.输入/输出&#xff08;I/O&#xff09;管理 5.1I/O管理概述 5.2设备独立性软件 5.3磁盘和固态硬盘 部分习题 5.输入/输出&#xff08;I/O&#xff09;管理 5.1I/O管理概述 5.2设备独立性软件 5.3磁盘和固态硬盘 部分习题 1.虚拟设备是指&#xff08;&#xff09;…

C语言从入门到高级

C语言是“编程语言之首”&#xff08;很多人学习的第一门编程语言&#xff09;&#xff0c;学好一门编程语言需要明确其学习路径&#xff0c;下面分享下我的学习路径&#xff0c;希望对您有所帮助。 一、C语言入门 &#xff08;1&#xff09;C语言概述 &#xff08;2&#x…

tomcat动静分离

1.七层代理动静分离 nginx代理服务器&#xff1a;192.168.233.61 代理又是静态 tomcat1:192.168.233.71 tomcat2:192.168.233.72 全部关闭防火墙 在http模块里面 tomcat1&#xff0c;2 删除上面的hostname 148 配置 直接访问 http://192.168.66.17/index.jsp 2.四层七层动…

太好上手了!10款常用的可视化工具你一定要知道!

当谈到可视化工具时&#xff0c;有许多常用的工具可供选择。这些工具可以帮助我们将数据转化为易于理解和具有视觉吸引力的图表、图形和仪表板。 以下是10款常用的可视化工具&#xff0c;它们在不同领域和用途中广泛使用。 1. Datainside&#xff1a; Datainside是一款功能强…

在线课堂小程序源码系统+在线考试+在线刷题三合一 带完整搭建教程

目前&#xff0c;教育行业也逐渐向数字化和智能化转型。而在线课堂在线考试在线刷题三合一小程序源码系统集课程学习、考试测验和在线刷题于一体&#xff0c;具有方便快捷、准确高效和使用体验好的优点。对于学校和教育机构来说&#xff0c;这款系统可以有效提升教学质量和效率…