网络协议与攻击模拟_13缓存DNS与DNS报文

news2024/11/26 4:54:43

一、缓存DNS服务器 

1、引入缓存DNS

缓存域名服务器需要与外网连接

一台windows作为Client 一台Windows server作为缓存DNS 桥接网络  DHCP自动获取IP地址

Client 192.168.183.133     

Windows server 192.168.183.138

ipconfig /all查看下Client的DNS,设置让Client的DNS指向这台windows server

只改DNS

意思就是现在我们内网有一台服务器我们要把它当做缓存DNS服务器。

我把win10的DNS改了,它就上不了网了,ping不通百度了,因为它指向的DNS服务器无法解析。

这个时候有两种办法

方法一:

一是 直接把它装成主要名称服务器,然后直接去创建对应的区域文件。但是百度它是外网的域名,外网的域名,内网里面就算你找到了百度的IP然后添加一个记录其实没有记录,外网这么多IP根本加不过来。

方法二:

所以我们直接把这样一台做成缓存域名服务器。

先在WIndows server上面装DNS服务器

开始->windows管理工具->DNS

不需要新建区域文件,直接配置它转发器

2、配置DNS转发器

转发器:如果它收到了来自客户机的DNS请求,那么它就直接转发到外部的DNS去

物理机nslookup找一下外部的DNS

然后回到Windows server虚拟机把找到的DNS服务器IP填进去

单击确定,这里找到了服务器的域名,直接点应用,确认

nslookup看到它的DNS服务器是192.168.188.138

然后去解析下www.baidu.com是可以正常解析的。

3、DNS转发过程分析

dns    查找域名 www.baidu.com

首先是Client请求了缓存DNS,然后缓存DNS请求了外部的DNS服务器,然后外部的DNS响应了缓存DNS,缓存DNS响应了Client。

二、DNS报文字段

DNS报文有请求报文和响应报文,二者最大的区别点是响应报文有响应的Response

  • Transaction ID:ID字段
  • Flags
    • 第1位:标识消息类型,为0表示请求,为1表示响应
    • 第2-5位:Opcode查询总类,0000是Standard query
    • 第6位:响应报文标识是否为权威应答(请求是没有第六位是空的)
    • 第7位:一个UDP报文为512字节,指示是否截断超过部分
    • 第8位:是否请求递归
    • 第9位:允许递归的标识
    • 第10-12位:保留位
    • 第13-16位:应答码(响应报文的应答码,请求报文是没有13到16位的)0标识没有错误,1格式错误、2服务器错误、3名字错误、4服务器不支持 5拒绝 6-15是保留的
  • Question:请求段中问题的记录数
  • Answer PRS:响应回答段中的记录数(请求报文没有)
  • Authority PRS:授权段中的记录数
  • Addnitional PRS:附加段中的记录数
  • Queries:查询请求的内容,响应中的内容和查询中的是一样的
    • Name:查询的域名
    • Name Length:标识查询域名的长度
    • Label Count:3
    • Type :AAAA代表是IPV6
    • Class:协议组IN

      一般写域名会这样写,再Windows服务器上看不出来,在Linux服务器上就能看出来www.baidu.com      IN   192.168.1.1


  • Answer响应的内容
    • Name:域名
    • Type:CNAME别名
    • Class:IN
    • Time to live:TTL值
    • Date length:域名长度
    • CNAME:真实名称

Queries和Answers字段是与Questions和Answer PRs对应的,因为前面的Questions进而Answer PRs的字段为1,所以下面有Queries和Answers字段。

例如:这个报文中Questions和Authority RPs字段为1,所以下面有Queries和Authoritative names servers部分 

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

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

相关文章

【论文阅读笔记】Advances in 3D Generation: A Survey

Advances in 3D Generation: A Survey 挖个坑,近期填完摘要 time:2024年1月31日 paper:arxiv 机构:腾讯 挖个坑,近期填完 摘要 生成 3D 模型位于计算机图形学的核心,一直是几十年研究的重点。随着高级神经…

深入了解c语言字符串 2

深入了解c语言字符串 2 一 使用 scanf进行字符串的输入:1.1输入单词(不包含空格):1.2 输入带空格的整行文本:1.3 处理输入缓冲区:1.4 注意安全性: 二 使用 printf 字符串的输出:三 输…

数据结构之动态查找表

数据结构之动态查找表 1、二叉排序树1.1、二排序树的定义1.2、二叉排序树的查找过程1.3、在二叉排序树中插入结点的操作1.4、在二叉排序树中删除结点的操作 2、平衡二叉树2.1、平衡二叉树上的插入操作2.2、平衡二叉树上的删除操作 3、B_树 数据结构是程序设计的重要基础&#x…

js新增的操作元素类名的方法

Element.classList是一个只读属性,返回一个元素 class 属性的动态 DOMTokenList 集合。这可以用于操作 class 集合。 尽管 classList 属性自身是只读的,但是你可以使用 add()、remove()、replace() 和 toggle() 方法修改其关联的 DOMTokenList。 兼容性…

移动机器人激光SLAM导航(二):运动控制与传感器篇

参考引用 机器人工匠阿杰wpr_simulation 1. 机器人运动控制 1.1 测试环境安装 wpr_simulation 安装$ mkdir -p catkin_ws/src $ cd catkin_ws/src $ git clone https://github.com/6-robot/wpr_simulation.git $ cd wpr_simulation/scripts/ $ ./install_for_melodic.sh # 自…

【2023地理设计组一等奖】基于机器学习的地下水仿真与时空分析

作品介绍 1 设计思想 1.1 作品背景 华北平原是我国最重要的粮棉产地之一,然而近年来农业的低效用水以及过度压采正逐步加剧其地下水资源的紧张性,为经济可持续发展带来重大风险。而地下水动态变化与人为干预、全球气候波动呈现出高度相关性,因此,地下水的仿真模拟对保障粮…

使用阿里云的IDaaS实现知行之桥EDI系统的单点登录

,在开始测试之前,需要确定用哪个信息作为“登陆用户的ID字段”。 这个字段用来在完成SSO登陆之后,用哪个信息将阿里云IDaaS的用户和知行之桥EDI系统的用户做对应。这里我们使用了 phonenumber 这个自定义属性。需要在阿里云做如下配置&#x…

Qt实现类似ToDesk顶层窗口 不规则按钮

先看效果: 在进行多进程开发时,可能会遇到需要进行全局弹窗的需求。 因为平时会使用ToDesk进行远程桌面控制,在电脑被控时,ToDesk会在右下角进行一个顶层窗口的提示,效果如下: 其实要实现顶层窗口&#xf…

openssl3.2 - 官方demo学习 - pkcs12 - pkwrite.c

文章目录 openssl3.2 - 官方demo学习 - pkcs12 - pkwrite.c概述学到的知识点笔记PEM证书可以拼接实验 pkcs12 - pkwrite.c用win10的证书管理器安装P12证书是成功的END openssl3.2 - 官方demo学习 - pkcs12 - pkwrite.c 概述 openssl3.2 - 官方demo学习 - 索引贴 上次PKCS12的…

【Qt】Json在Qt中的使用

Json JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于互联网应用程序之间的数据传输。JSON基于JavaScript中的对象语法,但它是独立于语言的,因此在许多编程语言中都有对JSON的解析和生成支持。…

[opencvsharp]C#基于Fast算法实现角点检测

角点检测算法有很多,比如Harris角点检测、Shi-Tomas算法、sift算法、SURF算法、ORB算法、BRIEF算法、Fast算法等,今天我们使用C#的opencvsharp库实现Fast角点检测 【算法介绍】 fast算法 Fast(全称Features from accelerated segment test)是一种用于角…

集合问题(并查集)

本题链接:登录—专业IT笔试面试备考平台_牛客网 题目: 样例1: 输入 4 5 9 2 3 4 5 输出 YES 0 0 1 1 样例2: 输入 3 3 4 1 2 4 输出 NO 思路: 这道题关键点在于。 当集合中有一个元素均存在于集合 A 和集合 B 的时…

(杂项笔记)腾讯文档设置隔行换色

文档小技巧 一、在表格工具栏中选择“数据”栏二、选择新建条件格式三、进行以下设置1. 应用范围2. 条件设置3. 这是表格颜色 四、样例展示1. 隔行换色2. 隔3行换色 最近在使用某家的文档进行多人协同办公,遇到的一些小技巧,在这里分享给大家&#xff1b…

无广告iOS获取设备UDID 简单方便快捷

ps: 为啥不用蒲公英了,就是因为有广告了,获取个UDID还安装游戏,真恶心?,所以找了新的获取UDID都方法,网页直接获取就可以,不会安装软件。 UDID 是一种 iOS 设备的特殊识别码。除序号之外&…

Java多线程--解决单例模式中的懒汉式的线程安全问题

文章目录 一、单例设计模式的线程安全问题(1)饿汉式没有线程安全问题(2)懒汉式线程安全问题1、案例2、方式1-同步方法3、方式2-同步代码块4、优化 二、代码(1)实现线程安全的懒汉式(2&#xff0…

【力扣白嫖日记】SQL

前言 练习SQL语句,所有题目来自于力扣(https://leetcode.cn/problemset/database/)的免费数据库练习题。 今日题目: 1387.使用唯一标识码替代员工ID 表:Employees 列名类型idintnamevarchar 在 SQL 中&#xff0c…

k8s安装dashboard报错CrashLoopBackOff

报错信息 使用kubectl get pods -A查看集群,出现错误: kubernetes-dashboard kubernetes-dashboard-xxxxxxxxxx6-2qrst 0/1 CrashLoopBackOff 6 15m查看日志后,发现原因: panic: Get "https://10…

Pandas 数据结构 – Pandas CSV 文件

Pandas CSV 文件 CSV(Comma-Separated Values,逗号分隔值,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。 CSV 是一种通用的、…

【IC设计】Windows下基于IDEA的Chisel环境安装教程(图文并茂)

Chisel环境安装教程 第一步 安装jdk,配置环境变量第二步 安装sbt,不用配置环境变量第三步 安装idea社区版第四步 离线安装scala的idea插件第五步 配置sbt换源1.切换目录2.创建repositories文件3.配置sbtconfig.txt文件 第六步 使用chisel-tutorial工程运…

Android矩阵setRectToRect裁剪Bitmap原图Matrix放大,mapRect标记中心区域,Kotlin

Android矩阵setRectToRect裁剪Bitmap原图Matrix放大,mapRect标记中心区域,Kotlin import android.content.Context import android.graphics.Bitmap import android.graphics.Canvas import android.graphics.Color import android.graphics.Matrix impo…