关于路由器和DNS解析的一些新理解
其实我本人对于交换机和路由器这些网络硬件是比较感兴趣的,也在一点一点的学习相关知识,每次解决一个问题,就让我对一些事情有新的思考。。
今天前台同事,的机器突然上不了网,,和领导一起去看了一波,首先ping了一下网关,,然后发现,可以ping通的,然后ping了下baidu,就不通了,,,我好奇了半天。怎么回事,,,然后瞟了一眼ip,突然发现怎么是192.168.1.144.。。。不对啊,之前在总的锐捷路由器上设置的都是192.168.10.X网段的,然后顺藤摸瓜发现,发现上层还有个路由器,原来这个路由器给做了路由,,,想进后台看看,发现忘记了密码,,,,然后就想那一定是这个路由器配置有问题,,,感觉看起来像是解析不了这个域名的感觉,然后手动设置了一下dns,就好了。。。。
然后我就觉得是这个路由器没给自动分配dns然后导致的。。
但是路由器有设置分配dns这个内容的吗?好像从来没听说过。
上网搜索了一番,才终于明白
首先,你要知道二级路由器的网段是不可以和上一级路由器的网段一样的,
比如你上一级路由器的网段是192.168.1.0/24,
那么二级路由器的网段就要改成192.168.X.0/24,
也就是说这个X除了1在0-254之间的数字都可以,这样就是把两个路由器的网段给岔开了,
第二点,你要知道上一级路由器的设置信息,比如是否开启了DHCP或者其他的,比如上一级的路由器的信息是192.168.0.1/24,DHCP是开着的,从192.168.1.100-192.168.1.199,那么我们就知道了,上一级路由器的IP地址从100-199之间是可以自动获取的,其他的只能手动设置,那么我们在二级路由器设置页面中找到WAN设置,里面可以用两种方法来设置:
一种是动态获取,还有一种是静态获取,选择动态获取这个二级路由器就会自动获取到上一级路由器DHCP分配区间中的一个IP,使用静态获取,我们可以手动设置一下IP 子网掩码 网关,DNS等等,比如我们可以把IP地址设置成为除了上一级路由器DHCP自动分配以外的IP,但是不可以设置网关,比如我们可以设置2-99或者200-254之间,随便找个IP,子网掩码用C类的255.255.255.0,网关为192.168.1.1。
DNS根据你当地的要求网上查一下或者你可以直接设置成为上一级路由器的网关也可以。这样,只要保证上一级路由器和2级路由之间网段不同,而且获取方式遵循上一级路由器的信息(你的电脑将自动跟随猫或路由器的DNS设置),这样就没问题。
还有一种就是把这个二级无线路由路由器作为AP来使用,也就是说把这个路由器变成一个无线交换机。只要把二级路由器和上一级路由器的网段岔开,然后把二级路由器的DHCP服务关掉,把上一级路由器的LAN口连接在二级路由器的LAN口上,二级路由器的WAN口什么都不连,这样这个二级路由器就变成了个AP交换机了
那我刚刚也说了,,电脑如果不是手动设置是自动跟随猫或者路由器的DNS设置的,,那这个过程又是怎么样子的
DNS的查找顺序是什么样的
是一级一级往上查找的,大概顺序是:
本机缓存表Q->本机指定的DNS地址
当本机指定的DNS地址是路由器地址时,会通过路由器缓存或直接往上通过运营商默认的dns进行查找,
当本机指定的DNS是其他地址时,比如223.5.5.5 (阿里DNS),那么就直接连接到阿里的dns进行查找。
可以在本机的ip地址界面单独修改dns%地址,也可以在手机上网络连接只里面自定义修改。
如果,想要光猫自动分配自定义的DNS地址给电脑或手机,就必须进入光猫后台,更改lan口dns设置。否则,手动设置电脑或手机。
但是,如果光猫下有接一层路由器,那么可以直接在该路由器中设置要分配的自定义DNS地址,所有电脑和手机均连接这个路由器即可自动分配到自定义的dns地址。
其实你说我们本地有dns那个对应关系吗?没有,其实这个内容都是存储在一些官方的DNS服务器上的,不过我们本地有一些dns的缓存表
可以使用命令查看
ipconfig/displaydns
记录名称仅仅是简称,而真正的名称是CNAME后面的名称。百度真正的域名名称是四级。
生存时间就是这条记录在计算机中所存在的时间,单位是秒。也就是说218秒后这条记录就会自动删除。
如何清空这些缓存呢?
可以使用ipconfig/flushdns,如图:
这样就彻底的清空缓存了,当然我们也可以继续打开某一个网址,让电脑自动缓存。。
那我又开始好奇,,电脑为什么要有这个DNS缓存这个东西呢?这个有啥用
其实域名的解析服务要严格按照从根域名服务器、顶级域名服务器再到权威域名服务器的一级级查询过程
但是实际中,其实DNS解析过程并不总是严格遵循以上的流程,其实从我的小格局来看就是为了减少对那些DNS服务器的访问嘛,然后做个本地缓存,这个缓存还有时限,这样既能更新,又减少了DNS服务器的压力,,
那我又想这样有什么害处呢?
首先,DNS缓存只会保存查询结果,而不会检查该结果是否有效,这就导致如果域名与IP地址的映射关系发生变化,DNS缓存中仍记录原有过期的信息。在这种情况下,用户请求网站,从DNS缓存中读取的信息就是错误的,就可能导致网站不可达或者被导向一个错误的网站,当然,我们经常访问的一些百度,腾讯,肯定不会随便去变化的,所以一般也很少出现,但是要是自己的服务完全可能出现这种情况。比如说你要更换一个域名这种情况
其次,DNS缓存容易被恶意攻击者利用,对DNS发动缓存投毒攻击造成DNS劫持,将访客诱导至受攻击者控制的网站。DNS缓存投毒攻击是指攻击者利用DNS缓存的原理,在权威解析服务之前将伪造的数据包发送到DNS服务器中,当访客请求到DNS服务器时,就会将错误的数据发送给访客,从而达到DNS缓存攻击的效果。
此外,DNS缓存也会导致DNS服务器负载的增加,如果DNS查询的响应时间过长,或者缓存中保存的查询结果过多,都可能会导致DNS服务器的负载增加,从而影响网站的访问速度。
查找DNS缓存的顺序
(1)浏览器DNS缓存:浏览器会根据一定频率缓存DNS记录;
(2)本地DNS缓存:如果浏览器缓存中找不到解析记录,就会去询问操作系统中的缓存;
(3)本地HOSTS文件:HOSTS是记录域名与IP地址一一映射关系的本地文件,Windows系统中位于C:\Windows\System32\drivers\etc;
(4)路由器DNS缓存:我们常用的路由器也带有自动缓存功能,路由器DNS被篡改会造成域名劫持,将访问网址定位到另外一个服务器;
(5)递归服务器缓存:递归服务器在将解析结果告知客户端的同时,将记录缓存下来,当下次请求同一个域名时,直接会将记录返回,而无需再进行全球查询。
通过这次又仔细的了解了一波dns的原理,希望下次能更精进
相关文章:

关于路由器和DNS解析的一些新理解
其实我本人对于交换机和路由器这些网络硬件是比较感兴趣的,也在一点一点的学习相关知识,每次解决一个问题,就让我对一些事情有新的思考。。 今天前台同事,的机器突然上不了网,,和领导一起去看了一波&#…...

vscode 与 C++
序 具体流程的话,官方文档里都有的:C programming with Visual Studio Code 浏览器下载一个mingw64,解压,配置环境变量vscode里安装c相关的插件没了 第一步只看文字,可能有点抽象,相关视频: …...

水果flstudio好用吗?中文版FL21最新版本如何下载
FL Studio21版是一款功能强大的音乐制作软件,广泛应用于电子音乐、流行音乐、电影配乐等领域。它提供了丰富多样的音频合成和编辑工具,使音乐制作变得更加灵活多样。无论是初学者还是专业音乐制作人,都可以通过直观的界面和丰富的音频特效来实…...
PHP is_array()函数详解,PHP判断是否为数组
「作者主页」:士别三日wyx 「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」:对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 is_array 一、基本使用二、空数组三、同时判断多个…...

面试题-React(三):什么是JSX?它与常规JavaScript有什么不同?
在React的世界中,JSX是一项引人注目的技术,它允许开发者在JavaScript中嵌套类似HTML的标签,用于描述UI组件的结构。本篇博客将通过丰富的代码示例,深入探索JSX语法,解析其在React中的用法和优势。 一、JSX基础语法 在…...
纯前端实现图片上传七牛云
首先安装下依赖: npm install qiniu-js crypto-js 然后封装一下 uploaderHelper.ts import * as qiniu from qiniu-js; // ts-ignore import CryptoJS from crypto-js// 请求接口上传图片 export function uploadFile(file: File) {const uptoken getToken(你的…...

win10+wsl2+Ubuntu20.2+Pycharm+WSL解释器
目的:创建一个ubuntu系统下的python解释器,作为win平台下的pycharm的解释器。 这样做的好处是可以直接在win系统里操作文件,相比于linux方便一点,而且也不用对wsl的子系统进行迁移。 一、安装前准备 1. 设置-Windows更新-window…...
EL与JSTL
目录 EL EL语法 EL运算符 JSTL JSTL标签分类 JSP脚本:代码结构混乱、脚本与HTML 混合易出错、代码不易维护。 EL表达式:优化程序代码,增加程序可读性。 EL EL语法 EL表达式 ${ EL 表达式 } EL操作符 操作符“ . ” 获取对象的属性&a…...

【Linux】动态库和静态库
动态库和静态库 软链接硬链接硬链接要注意 自定义实现一个静态库(.a)解决、使用方法静态库的内部加载过程 自定义实现一个动态库(.so)动态库加载过程 静态库和动态库的特点 软链接 命令:ln -s 源文件名 目标文件名 软链接是独立连接文件的,他…...
R语言:联合多指标的ROC曲线
# 加载数据和包rm(list=ls())library(pROC)library(ggplot2)setwd("C:/Users/syy/Desktop/MRI_lab/")data<- read.csv("test1.csv", header = T)data$Groups...

将一个树形结构的数据平铺成一个一维数组(vue3)
一、需求描述 由于自带组件库没有具体完善,无法实现像element-ui这种可以多选选择任意一级的选项,也就是说,选择父级的时候不会联动选择子级的全部 例如: 所以,才会出现【二、案例场景】类似的场景,可以用来多选 ,并可以实现单选父级而不关联子级,选择了将树状数据进…...

OSCS开源安全周报第 56 期:Apache Airflow Spark Provider 任意文件读取漏洞
本周安全态势综述 OSCS 社区共收录安全漏洞 3 个,公开漏洞值得关注的是 Apache NiFi 连接 URL 验证绕过漏洞(CVE-2023-40037)、PowerJob 未授权访问漏洞(CVE-2023-36106)、Apache Airflow Spark Provider 任意文件读取漏洞(CVE-2023-40272)。 针对 NPM 、PyPI 仓库…...

CleanMyMac2024永久版Mac清理工具
Mac电脑作为相对封闭的一个系统,它会中毒吗?如果有一天Mac电脑产生了疑似中毒或者遭到恶意不知名攻击的现象,那又应该如何从容应对呢?这些问题都是小编使用Mac系统一段时间后产生的疑惑,通过一番搜索研究,小…...

软考高级系统架构设计师(一)计算机硬件
【原文链接】软考高级系统架构设计师(一)计算机硬件 1.1 计算机硬件组成 1.1.1 计算机的基本硬件组成 运算器控制器存储器输入设备输出设备 1.1.2 中央处理单元(CPU) 中央处理单元(CPU)的组成 运算器…...
bat文件中自定义cmd命令;执行完退出命令提示符窗口
1. bat中启动cmd命令 start cmd /k " cmd中命令行里自定义的命令 " 2.编写规则 start cmd /k "命令1 & 命令2 & 命令3" (无论前面命令是否成功, 后面都会执行start cmd /k "命令1 && 命令2 && 命令3 " (仅…...
深度学习的经典算法的论文、解读和代码实现
文章目录 CNN网络的经典算法LeNet-5AlexNetVGGInceptionInception-v1(GoogLeNet)BN-Inception ResNetR-CNNR-CNNFast R-CNNFaster R-CNN YOLOYOLO v1YOLO v2YOLO v3YOLO v4 RNN的经典算法RNNGRULSTMEncoder-DecoderAttentionTransformer CNN网络的经典算法 LeNet-5 来源论文&…...

开源TTS+gtx1080+cuda11.7+conda+python3.9吊打百度TTS
一、简介 开源项目,文本提示的生成音频模型 https://github.com/suno-ai/bark Bark是由Suno创建的基于变换器的文本到音频模型。Bark可以生成极为逼真的多语种演讲以及其他音频 - 包括音乐、背景噪音和简单的声音效果。该模型还可以产生非言语沟通,如…...

【私有GPT】CHATGLM-6B部署教程
【私有GPT】CHATGLM-6B部署教程 CHATGLM-6B是什么? ChatGLM-6B是清华大学知识工程和数据挖掘小组(Knowledge Engineering Group (KEG) & Data Mining at Tsinghua University)发布的一个开源的对话机器人。根据官方介绍,这是…...

基于“R语言+遥感“水环境综合评价方法教程
详情点击链接:基于"R语言遥感"水环境综合评价方法教程 一:R语言 1.1 R语言特点(R语言) 1.2 安装R(R语言) 1.3 安装RStudio(R语言) (1)下载地址…...
To_Heart—题解——P6234 [eJOI2019] T形覆盖
link. 突然很想写这篇题解。虽然题目不算难。 考场只有30分是为什么呢?看来是我没有完全理解这道题目吧! 首先很明显的转换是,把 T 型覆盖看成十字形,再考虑最后减去某一块的贡献。 然后然后直接往原图上面放十字形!对于每一个…...

C++_核心编程_多态案例二-制作饮品
#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为:煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例,提供抽象制作饮品基类,提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...

从WWDC看苹果产品发展的规律
WWDC 是苹果公司一年一度面向全球开发者的盛会,其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具,对过去十年 WWDC 主题演讲内容进行了系统化分析,形成了这份…...

《基于Apache Flink的流处理》笔记
思维导图 1-3 章 4-7章 8-11 章 参考资料 源码: https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...

听写流程自动化实践,轻量级教育辅助
随着智能教育工具的发展,越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式,也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建,…...

用机器学习破解新能源领域的“弃风”难题
音乐发烧友深有体会,玩音乐的本质就是玩电网。火电声音偏暖,水电偏冷,风电偏空旷。至于太阳能发的电,则略显朦胧和单薄。 不知你是否有感觉,近两年家里的音响声音越来越冷,听起来越来越单薄? —…...

uniapp手机号一键登录保姆级教程(包含前端和后端)
目录 前置条件创建uniapp项目并关联uniClound云空间开启一键登录模块并开通一键登录服务编写云函数并上传部署获取手机号流程(第一种) 前端直接调用云函数获取手机号(第三种)后台调用云函数获取手机号 错误码常见问题 前置条件 手机安装有sim卡手机开启…...

MeshGPT 笔记
[2311.15475] MeshGPT: Generating Triangle Meshes with Decoder-Only Transformers https://library.scholarcy.com/try 真正意义上的AI生成三维模型MESHGPT来袭!_哔哩哔哩_bilibili GitHub - lucidrains/meshgpt-pytorch: Implementation of MeshGPT, SOTA Me…...

spring boot使用HttpServletResponse实现sse后端流式输出消息
1.以前只是看过SSE的相关文章,没有具体实践,这次接入AI大模型使用到了流式输出,涉及到给前端流式返回,所以记录一下。 2.resp要设置为text/event-stream resp.setContentType("text/event-stream"); resp.setCharacter…...

Web APIS Day01
1.声明变量const优先 那为什么一开始前面就不能用const呢,接下来看几个例子: 下面这张为什么可以用const呢?因为复杂数据的引用地址没变,数组还是数组,只是添加了个元素,本质没变,所以可以用con…...

python3GUI--基于PyQt5+DeepSort+YOLOv8智能人员入侵检测系统(详细图文介绍)
文章目录 一.前言二.技术介绍1.PyQt52.DeepSort3.卡尔曼滤波4.YOLOv85.SQLite36.多线程7.入侵人员检测8.ROI区域 三.核心功能1.登录注册1.登录2.注册 2.主界面1.主界面简介2.数据输入3.参数配置4.告警配置5.操作控制台6.核心内容显示区域7.检…...