安全基础 --- html基础标签 + DNS工作原理

news2025/5/24 22:35:01

html基础标签

(1)id

`id`属性是元素在网页内的唯一标识符。

比如,网页可能包含多个`<p>`标签,`id`属性可以指定每个`<p>`标签的唯一标识符。

<p id="p1"></p>
<p id="p2"></p>
<p id="p3"></p>

三个<p>标签有三个不同的`id`属性,可区分

PS:`id`属性值必须为全局唯一,同一个页面不能有两个相同的`id`属性;且`id`的值不包含空格

(2)class

`class`属性用来对网页元素进行分类。如果不同元素的class属性值相同,就表示它们是一类的。

<p class="para"></p>
<p></p>
<p class="para"></p>

上面代码中,第一个<p>和第三个<p>是一类,因为它们的`class`属性相同。

PS:元素可同时具有多个`class`属性,他们之间用空格分隔

<p class="p1 p2 p3"></p>
p标签同时具有p1 p2 p3,三个class

(3)style

`style`属性用来指定当前元素的 CSS 样式。

<p style="color: red;">hello</p>

详细分析id,class,style属性

<!DOCTYPE html>
<html lang="en">
<head>
    <!-- UTF-8前身:万国码(unicode -- 不可变长) -->
    <!-- utf8:可变长的unicode编码 -->
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <!-- 上段代码为自适应 -->
    <title>Document</title>
    <link rel="stylesheet" href="./css/style.css">
</head>
<body>
    <!-- div:盒模型 -->
    <div id="demo">div-demo-id</div>
    <div class="demo1">div-demo-class</div>
    <!-- class:样式名称 -->
    <p tabindex="0">获取焦点</p>
    <input type="text" name="" id="">
    <!-- input:获取焦点 -->
    <!-- 行内样式.优先级为就近原则 -->
    <p style="color: red;">1234567</p>
</body>
<script>
    let div_class = document.getElementsByClassName('demo1')[0];
    // 由于class抓取到的是数组,所以得对抓取的值进行定位
    console.log(div_class);//打印
    let div_id = document.getElementById('demo');
    console.log(div_id);
</script>

<style>
    .p{
        color: green;
    }
</style>
</html>
.demo1{
    color:red;
}
.p{
    color: yellow;
}


DNS原理

DNS (Domain Name System 的缩写)的作用非常简单,就是根据域名查出IP地址;DNS前身是bootp

(1)查询过程

命令dig +trace www.baidu.com


13台根域服务器


com顶级域的DNS服务器


baidu的DNS服务器


baidu的CNAME链接

(以上的查询过程为迭代查询)

(2)两种解析方式 / 状态

<1> 递归查询

客户端只发一次请求,要求对方给出最终结果。返回的结果只有两种:查询成功或查询失败。

客户端-本地dns服务端:这部分属于递归查询。

<2> 迭代查询

又称为“重指引”。客户端发出一次请求,对方如果没有授权回答(向dns服务器查询一个域名,刚好这个域名是本服务器负责,返回的结果就是授权回答),它就会返回一个能解答这个查询的其它名称服务器列表,客户端会再向返回的列表中发出请求,直到找到最终负责所查域名的名称服务器,从它得到最终结果。

本地dns服务端-外网:这部分属于迭代查询

<3> 总体描述

首先查找缓存,没有缓存查找hosts,hosts无的话查找网关路由器,路由器内置DNS服务器,DNS服务器有13台根域服务器地址;13台根域服务器上会分配顶级域去查找,如:.com会分配到com顶级域的DNS服务器。.com服务器会发出指令,让其去指定DNS服务器上查找;到达目标服务器,解析域名得到IP地址,最后返回自身缓存

(3)DNS常见记录类型

[1] A:地址记录(Address),将域名映射到一个IPV4地址。

[2] NS:域名服务器记录(Name Server),指定用于处理特定域名的DNS服务器,将域名指向一个授权该域名的域名服务器。

[3] MX:邮件记录(Mail eXchange),指定电子邮件交换服务器,处理特定域名的电子邮件的发服务器地址

[4] CNAME:规范名称记录(Canonical Name),返回另一个域名,即当前查询的域名是另一个域名的跳转。

[5] PTR:逆向查询记录(Pointer Record),只用于从IP地址查询域名。

(4)域名的层级

DNS服务器怎么会知道每个域名的IP地址呢?答案是分级查询

域名www.a.shifen.com显示为www.a.shifen.com.。表示的意思为:所有域名尾部,实际上都有一个根域名

[1] 根域名的下一级,“顶级域名”(top-level domain,TLD)

[2] 再下级,“次级域名”(second-level demain,SLD)

[3] 再下级,“主机名”(host)

层级结构

主机名.次级域名.顶级域名.根域名

# 即

host.sld.tld.root

(5)其他命令

<1> host命令

host相当于dig的简化版本,返回当前请求域名的各种记录

<2> nslookup命令

nslookup用于互动式查询域名记录

(windows端也可使用此命令)

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

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

相关文章

UE4/5C++多线程插件制作(十四、MTPAbandonable)

MTPAbandonable 在头文件中创建新的文件夹,MTPAbandonable,里面是MTPAbandonable.h,cpp也一样如此: h实现 构造函数接受一个FSimpleDelegate类型的参数InThreadDelegate,用于指定任务在后台线程中执行时要执行的操作。 DoWork()函数定义了任务的具体执行逻辑,需要根据…

NLog同时输出到文件、控制台、RichTextBox

效果 项目 VS2010.net4.0NLogNLog.Windows.Forms 代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using NLog;namespac…

【Docker 网络】

文章目录 一、Docker 网络1、Docker 网络实现原理2、查看容器的输出和日志信息3、Docker 的网络模式4、网络模式详解1&#xff0e;host模式2&#xff0e;container模式3&#xff0e;none模式4&#xff0e;bridge模式5&#xff0e;自定义网络1、创建自定义网络 二、资源控制1&am…

初识TDMQ

目录 一&#xff1a;需求背景二&#xff1a;相关文档三&#xff1a;验证TDMQ广播消息 一&#xff1a;需求背景 目前公司需要将决策引擎处理的结果&#xff0c; 一部分数据交给下游分析/入黑/通知等功能。因此就需要决策引擎生产结果让多方下游去消费。 而我需要实现下游的一部…

数据类型的分类

数据类型的分类 java中的 变量 按照数据类型来分类&#xff1a; 基本数据类型&#xff08;8种&#xff09;&#xff08;primitive type&#xff09;&#xff1a; 整型&#xff1a;byte、short、int、long、浮点型&#xff1a;float、double字符型&#xff1a;char布尔型&#x…

/var/empty/sshd must be owned by root and not group or world-writable

/var/empty/sshd must be owned by root and not group or world-writable 这个是权限的问题 可采取以下两步解决 chown -R root.root /var/empty/sshd chmod 744 /var/empty/sshd service sshd restart

80v转5v芯片-电动车/汽车降压芯片方案

Q: 什么是80v转5v芯片&#xff1f;什么它在电动车和汽车中有应用需求&#xff1f; A: 80v转5v芯片是一种电源转换芯片&#xff0c;可以将输入电压范围为9v至100v的直流电源转换为输出电压为5v&#xff0c;并且可以进行可调。这种芯片在电动车和汽车领域有广泛的应用需求。电动…

Python+pytest+requests 自动化测试框架

目录 前言&#xff1a; 环境准备 简单 Demo yml 文件读取功能 数据层 业务层 测试用例层 前言&#xff1a; Python 是一种广泛使用的编程语言&#xff0c;它可以用于开发各种软件和应用程序。pytest 是一个广泛使用的自动化测试框架&#xff0c;它可以帮助我们更轻松地…

【Java】如何理解 Spring 核心概念: 什么是 IoC, 什么是 DI?

文章目录 前言一、什么是Spring1, 什么是容器2, 什么是IoC 二、如何理解IoC1, 传统方式的代码编写2, 控制反转的代码编写3, 再谈IoC 三、什么是DI总结 前言 各位读者好, 我是小陈, 这是我的个人主页, 希望我的专栏能够帮助到你: &#x1f4d5; JavaSE基础: 基础语法, 类和对象,…

网络安全学习(ing)

根据网站后缀猜测开发语言及服务常见端口及对应的服务 22 ssh 445 smb 漏洞ms17-010 永恒之蓝 3306 mysql 3389 rdp远程桌面连接服务 80 http 443 https &#xff08;一&#xff09;SSH爆破—模拟攻击 1.信息收集 nmap扫描目标主机的端口&#xff1a; nmap IP 发现22端口开放…

再次认识结构体

> 作者简介&#xff1a;დ旧言~&#xff0c;目前大一&#xff0c;现在学习Java&#xff0c;c&#xff0c;c&#xff0c;Python等 > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 望小伙伴们点赞&#x1f44d;收藏✨加关注哟&#x1f495;&#x1…

软件工程学术顶会——ICSE 2023 议题(网络安全方向)清单与摘要

按语&#xff1a;IEEE/ACM ICSE全称International Conference on Software Engineering&#xff0c;是软件工程领域公认的旗舰学术会议&#xff0c;中国计算机学会推荐的A类国际学术会议&#xff0c;Core Conference Ranking A*类会议&#xff0c;H5指数74&#xff0c;Impact s…

Android 在一个APP里打开另一个APP

前言 不知道你们有没有注意过&#xff0c;每次打开一些软件的时候都会有广告引导页&#xff0c;有时候手滑点到了&#xff0c;会有进入手机上的另一个APP&#xff0c;这有没有引起你的注意呢&#xff1f; 运行效果图 # 正文 为了测试这个功能&#xff0c;首先要创建两个项目&…

019 - limit

limit&#xff1a;限制返回结果数量&#xff1b; 该LIMIT子句可用于约束SELECT语句返回的行数 。 LIMIT接受一个或两个数字参数&#xff0c;这些参数必须都是非负整数常量&#xff0c;但以下情况除外&#xff1a; 在准备好的语句中&#xff0c;LIMIT 可以使用? 占位符标记指…

双端队列(deque)与优先队列(priority_queue)

文章目录 一.双端队列——deque1.deque的优点与缺点2.deque的原理 二.优先队列——priority_queue1.什么是优先队列&#xff1f;2.优先队列的基本使用3.什么是仿函数&#xff1f;4.优先队列的模拟实现 一.双端队列——deque 在上一章stack、queue的模拟实现中&#xff0c;我们…

疲劳驾驶检测和识别2:Pytorch实现疲劳驾驶检测和识别(含疲劳驾驶数据集和训练代码)

疲劳驾驶检测和识别2&#xff1a;Pytorch实现疲劳驾驶检测和识别(含疲劳驾驶数据集和训练代码) 目录 疲劳驾驶检测和识别2&#xff1a;Pytorch实现疲劳驾驶检测和识别(含疲劳驾驶数据集和训练代码) 1.疲劳驾驶检测和识别方法 2.疲劳驾驶数据集 &#xff08;1&#xff09;疲…

whistle代理

安装whistle npm install whistle -g --registryhttps://registry.npm.taobao.org启动w2代理 w2 startchrome浏览器安装插件whistle&#xff0c;并启用代理状态 web端代理到本地 浏览器访问http://127.0.0.1:8899/ 配置代理url [参考] https://blog.csdn.net/u010106375/ar…

C语言:程序环境和预处理

编译一个C程序设计很多步骤,大致为预处理,编译,汇编和链接. 在讲解预处理阶段之前,先简单总述一下程序的编译和链接. 1. 程序的编译和链接 链接是将各种代码和数据片段收集并组合成为一个单一文件的过程,这个文件可被加载(复制)到内存并执行. 这里有两个源文件构成了一个程序…

计算机内存中的缓存Cache Memories

这篇写一下计算机系统中的缓存Cache应用场景和实现方式介绍。 Memory hierarchy 在讲缓存之前&#xff0c;首先要了解计算机中的内存结构层次Memory hierarchy。也就是下图金字塔形状的结构。 从上到下&#xff0c;内存层次结构如下&#xff1a; 寄存器&#xff1a;这是计算机…