计算机自顶向下 Wireshark labs——DNS

如本文第2.4节所述,域名系统(DNS)将主机名转换为IP地址,在互联网基础设施中发挥着关键作用。在本实验中,我们将仔细研究DNS的客户端。回想一下,客户端在DNS中的角色相对简单—客户端向其本地DNS服务器发送查询,并收到响应。如教科书中的图2.19和图2.20所示,很多事情可以“隐藏”进行,对DNS客户端是不可见的,因为分层DNS服务器相互通信,以递归或迭代地解析客户端的DNS查询。然而,从DNS客户机的角度来看,该协议非常简单——向本地DNS服务器制定查询,然后从该服务器接收响应。

在开始本实验之前,您可能希望通过阅读本文第2.4节来复习DNS。特别是,您可能希望查看有关本地DNS服务器、DNS缓存、DNS记录和消息以及DNS记录中的TYPE字段的资料。

1. 网路资讯查询

在本实验中,我们将广泛使用nslookup工具,该工具目前在大多数Linux/Unix和Microsoft平台上都可以使用。要在Linux/Unix中运行nslookup,只需在命令行中键入nslookup命令。要在Windows中运行它,打开命令提示符并在命令行上运行nslookup。

nslookup工具在其最基本的操作中,允许运行该工具的主机在指定的DNS服务器上查询一条DNS记录。查询的DNS服务器可以是根DNS服务器、顶级域DNS服务器、权威DNS服务器或中间DNS服务器(这些术语的定义参见教科书)。为了完成此任务,nslookup向指定的DNS服务器发送DNS查询,并从同一DNS服务器接收DNS应答,并显示结果。

image-20240204115630634

上面的屏幕截图显示了三个独立的nslookup命令的结果(显示在Windows命令提示符中)。在本例中,客户端主机位于布鲁克林理工大学的校园内,其中默认的本地DNS服务器是DNS -prime.poly.edu。当运行nslookup时,如果没有指定DNS服务器,则nslookup将查询发送到默认的DNS服务器,在本例中是dnsprime.poly.edu。考虑第一个命令:

nslookup www.mit.edu

换句话说,这个命令的意思是“请给我发送主机www.mit.edu的IP地址”。如截图所示,该命令的响应提供了两条信息:(1)提供应答的DNS服务器的名称和IP地址;(2)答案本身,即www.mit.edu的主机名和IP地址。虽然响应来自理工大学的本地DNS服务器,但很有可能这个本地DNS服务器迭代地联系了其他几个DNS服务器来获得答案,如教科书第2.4节所述。

现在考虑第二个命令:

nslookup –type=NS mit.edu

在本例中,我们提供了选项“type=NS”和域“mit.edu”。这会导致nslookup向默认的本地DNS服务器发送type-NS记录的查询。换句话说,这个查询说,“请把mit。edu的权威DNS主机名发给我”。(当不使用type选项时,nslookup使用默认值,即查询A类记录。)在上面的屏幕截图中显示的答案首先指示了提供答案的DNS服务器(这是默认的本地DNS服务器)以及三个MIT名称服务器。每个服务器都是MIT校园主机的权威DNS服务器。然而,nslookup还表明答案是“非权威的”,这意味着该答案来自某些服务器的缓存,而不是来自权威的MIT DNS服务器。最后,答案还包括MIT权威DNS服务器的IP地址。(尽管nslookup生成的type-NS查询没有明确要求IP地址,但本地DNS服务器会“免费”返回这些地址,nslookup会显示结果。)

现在最后考虑第三个命令:

nslookup www.aiit.or.kr bitsy.mit.edu

在本例中,我们希望将查询发送到 DNS 服务器 bitsy.mit.edu 而不是默认 DNS 服务器 (dns-prime.poly.edu)。因此,查询 和回复事务直接发生在查询主机和 bitsy.mit.edu 之间。在 本例中,DNS 服务器 bitsy.mit.edu 提供了主机 的 IP 地址。www.aiit.or.kr 的 IP 地址,它是韩国信息技术高级研究所的网络服务器。技术高级研究所(位于韩国)的网络服务器。

现在我们已经看了一些说明性的例子,您可能想知道nslookup命令的一般语法。语法是:

nslookup –option1 –option2 host-to-find dns-server

通常,nslookup可以使用零个、一个、两个或多个选项运行。正如我们在上面的例子中看到的,dns服务器也是可选的;如果没有提供,查询将被发送到默认的本地DNS服务器。

现在我们已经提供了nslookup的概述,现在是您自己测试驱动它的时候了。做以下事情(并写下结果):

  1. 执行nslookup获取亚洲的Web服务器的IP地址。服务器的IP地址是什么?

我这里用的linux测试baidu.com的IP地址。

百度的IP的地址为 39.156.66.10 和 110.242.68.66

image-20240204121138281

  1. 运行nslookup命令确定欧洲某大学的权威DNS服务器。

image-20240204122050832

  1. 运行nslookup,以便在问题2中获得的一个DNS服务器上查询Yahoo!邮件。它的IP地址是什么?

    最开始linux中nslookup mail.yahoo.com use5.akam.net查询不到结果。
    后面那本地windows的结果。

image-20240204151226968

2.ipconfig

ipconfig(适用于Windows)和ifconfig(适用于Linux/Unix)是主机中最有用的小实用程序,特别是用于调试网络问题。这里我们只进行描述ipconfig,尽管Linux/Unix的ifconfig非常相似。ipconfig可以用来显示当前的TCP/IP信息,包括地址、DNS服务器地址、适配器类型等等。例如,如果您要获取所有关于主机的信息,只需输入

ipconfig /all

输入命令提示符,如下面的截图所示。

image-20240204132455397

ipconfig对于管理存储在主机中的DNS信息也非常有用。在2.5节中,我们了解到主机可以缓存它最近获得的DNS记录。要查看这些缓存的记录,在提示符C:>之后提供以下命令:

ipconfig /dispalydns

每个条目以秒为单位显示剩余的生存时间(TTL)。清空缓存,输入

ipconfig /flushdns

刷新DNS缓存将清除所有条目,并重新加载hosts文件中的条目。

3. 使用Wireshark跟踪DNS

现在我们已经熟悉了nslookup和ipconfig,我们准备开始一些严肃的工作。让我们首先捕获由普通网络冲浪活动生成的DNS数据包。

  • 使用ipconfig清空主机中的DNS缓存。
  • 打开浏览器并清空浏览器缓存。(使用ie浏览器,进入“工具”菜单,选择“Internet选项”;然后在常规选项卡中选择删除文件。)
  • 打开Wireshark,输入“ip”。addr == your_IP_address”输入过滤器,通过ipconfig获取your_IP_address。此过滤器将删除所有既不是发送也不是发送到您的主机的数据包。
  • 启动Wireshark抓包。
  • 使用浏览器访问Web页面:http://www.ietf.org
  • 停止抓包。

如果您无法在实时网络连接上运行Wireshark,您可以下载在作者的一台计算机上执行上述步骤时捕获的数据包跟踪文件。回答以下问题。只要有可能,在回答下面的问题时,你应该在你回答问题的过程中提交一份打印出来的包。在打印出来的材料上加上注释来解释你的答案。要打印数据包,请使用文件 - >打印,选择仅选定数据包,选择数据包摘要行,然后选择回答问题所需的最小数据包详细信息量。

  1. 定位DNS查询和响应消息。然后通过UDP或TCP发送?

UDP

image-20240204134533012

  1. DNS查询消息的目的端口是什么?DNS响应消息的源端口是什么?

目的端口和响应端口都是53

image-20240204134829377

image-20240204134842568

  1. DNS查询报文发送到哪个IP地址?使用ipconfig来确定本地DNS服务器的IP地址。这两个IP地址是一样的吗?

DNS查询报文发送到IP为114.114.114.114。

与本地DNS服务器IP地址一样

  1. 检查DNS查询消息。DNS查询的“Type”是什么?查询消息是否包含任何“answers”?

Type = A 没有任何 answers
image-20240204135740208

  1. 检查DNS响应消息。提供了多少“答案”?这些答案都包含了什么?

两个 Answers。
image-20240204135955394

  1. 考虑主机发送的后续TCP SYN包。SYN报文的目的IP地址与DNS响应消息中提供的IP地址是否对应?

我这里做了几次确实没有后续的TCP SYN包,我不知道为什么。

  1. 这个网页包含图片。在检索每个映像之前,您的主机是否发出新的DNS查询?

没有。

现在我们来看看nslookup。

  • 开始抓包。
  • 对www.mit.edu进行nslookup
  • 停止抓包。

您应该得到如下所示的跟踪:image-20240204143741646

从上面的截图中我们可以看到nslookup实际上发送了三个DNS查询并收到了三个DNS响应。出于本任务的目的,在回答以下问题时,请忽略前两组查询/响应,因为它们特定于nslookup,通常不是由标准Internet应用程序生成的。相反,您应该关注最后的查询和响应消息。

  1. DNS查询消息的目的端口是什么?DNS响应消息的源端口是什么?

目的端口和响应的源端口都是53

image-20240204144351860

  1. DNS查询报文发送到哪个IP地址?这是您的默认本地DNS服务器的IP地址吗?

发送到114.114.114.114

我本地的默认DNS服务器IP地址

image-20240204144810509

  1. 检查DNS查询消息。DNS查询的“类型”是什么?查询消息是否包含任何“答案”?
    Type 是 A。 没有任何answers

  2. 检查DNS响应消息。提供了多少“答案”?这些答案都包含了什么?
    提供了3个answersimage-20240204145002768

  3. 提供截图。

现在重复前面的实验,但是发出命令:

nslookup –type=NS mit.edu

回答以下问题:

  1. DNS查询报文发送到哪个IP地址?这是您的默认本地DNS服务器的IP地址吗?

发送到114.114.114.114和8.8.8.8(我查了下8.8.8.8 - 这是Google提供的公共DNS服务。)

这两个都是我本地的DNS服务器IP地址。

image-20240204145434532

  1. 检查DNS查询消息。DNS查询的“类型”是什么?查询消息是否包含任何“答案”?
    Type = A 没有answers

image-20240204145546680

  1. 检查DNS响应消息。响应消息提供了哪些MIT名称服务器?此响应消息是否也提供MIT命名者的IP地址?

提供了use5.akam.net等很多个名称服务器。

没有提供MIT命名者的IP地址。

image-20240204145732814

  1. 提供截图。

现在重复前面的实验,但是发出命令:

nslookup www.aiit.or.kr bitsy.mit.edu

回答以下问题:

  1. DNS查询报文发送到哪个IP地址?这是您的默认本地DNS服务器的IP地址吗?如果不是,IP地址对应什么?

image-20240204150142150

不是,IP地址为18.0.72.3.应该是bitsy.mit.edu的IP地址。

  1. 检查DNS查询消息。DNS查询的“类型”是什么?查询消息是否包含任何“答案”?

没有answers

image-20240204150334751

  1. 检查DNS响应消息。提供了多少“答案”?这些答案都包含了什么?

看到包含了应该是aiit.or.kr的IP地址

image-20240204150348185

  1. 提供截图。

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

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

相关文章

2023年06月CCF-GESP编程能力等级认证Python编程四级真题解析

Python等级认证GESP(1~6级)全部真题・点这里 一、单选题(共15题,共30分) 第1题 高级语言编写的程序需要经过以下( )操作,可以生成在计算机上运行的可执行代码。 A:编辑 B:保存 C:调试 D:编译 答案:D 第2题 排序算法是稳定的(Stable Sorting),就是指排序算…

Android Jetpack Compose之底部导航栏的实现

目录 1.概述2. 效果展示3. 代码实现3.1 定义底部导航栏的tab项3.2 整体页面架构搭建3.3 底部导航栏的实现3.4 所有代码 4.总结 1.概述 写过一段Android jetpack compose 界面的小伙伴应该都用过Compose的脚手架Scaffold,利用它我们可以很快的实现一个现代APP的主流…

Ubuntu使用Docker部署Nginx并结合内网穿透实现公网远程访问

文章目录 1. 安装Docker2. 使用Docker拉取Nginx镜像3. 创建并启动Nginx容器4. 本地连接测试5. 公网远程访问本地Nginx5.1 内网穿透工具安装5.2 创建远程连接公网地址5.3 使用固定公网地址远程访问 在开发人员的工作中,公网远程访问内网是其必备的技术需求之一。对于…

基于YOLOv8的足球赛环境下足球目标检测系统(Python源码+Pyqt6界面+数据集)

博主简介 AI小怪兽,YOLO骨灰级玩家,1)YOLOv5、v7、v8优化创新,轻松涨点和模型轻量化;2)目标检测、语义分割、OCR、分类等技术孵化,赋能智能制造,工业项目落地经验丰富; …

五、医学影像云平台 - 医共体

原创不易,多谢关注!谢谢! 1. 医学大影像设备市场现状 目前影像设备,可以说低端产品同质化越来越严重,利润越来越薄,而高端超高端设备,整体销售额却在增长,利润空间也比低端的要高的…

【240121】桂林电子科技大学—调剂信息

桂林电子科技大学 学校层级:双非 调剂专业:081000 信息与通信工程 发布时间:2024.1.21 发布来源:网络发布 背景:欢迎广大08工学专业考生调剂进我的课题组,电子信息专业,也欢迎往届同学调剂…

SpringMVC-组件解析

一、引子 我们在上一篇文章Spring MVC-基本概念中,为读者解释了如何使用SpringMVC框架,将承接客户端请求的工作从原生的Servlet转移到我们熟知的Controller中。那么我们不禁会好奇,SpringMVC框架到底做了什么,是怎么把请求分发给…

sqlserver alwayson部署文档手册

1、ALWAYSON概述 详细介绍参照官网详细文档,我就不在这里赘述了: https://learn.microsoft.com/zh-cn/sql/database-engine/availability-groups/windows/overview-of-always-on-availability-groups-sql-server?viewsql-server-ver16 下图显示的是一个包含一个…

aspose-words基础功能演示

我们在Aspose.Words中使用术语“渲染”来描述将文档转换为文件格式或分页或具有页面概念的介质的过程。我们正在讨论将文档呈现为页面。下图显示了 Aspose.Words 中的渲染情况。 Aspose.Words 的渲染功能使您能够执行以下操作: 将文档或选定页面转换为 PDF、XPS、HTML、XAML、…

冀蒙辽三地共同推进北斗卫星导航定位基准站资源共享

冀蒙辽三地共同推进北斗卫星导航定位基准站资源共享 近期,冀蒙辽三地共同举办了“北斗卫星导航定位基准站资源共享推进会”,旨在推动北斗卫星导航定位系统的规模化应用,加强区域北斗卫星导航定位基准站网络的协同服务能力,为经济…

Java并发(二十三)----同步模式之保护性暂停

1、定义 即 Guarded Suspension,用在一个线程等待另一个线程的执行结果 要点 有一个结果需要从一个线程传递到另一个线程,让他们关联同一个 GuardedObject 如果有结果不断从一个线程到另一个线程那么可以使用消息队列 JDK 中,join 的实现…

微信小程序 简单优惠卷页面设计

index.wxml <view style"margin: 0.5rem;"><view class"points">我的积分&#xff1a;{{integralInfo}}</view></view><view><view wx:if"{{couponList.length>0}}" wx:for"{{couponList}}" wx:…

MySQL管理的常用工具(mysql,mysqlbinlog,mysqladmin,mysqlshow)

MySQL管理 系统数据库 数据库含义mysql存储MySQL服务器正常运行所需要的各种信息 &#xff08;时区、主从、用 户、权限等&#xff09;information_schema提供了访问数据库元数据的各种表和视图&#xff0c;包含数据库、表、字段类 型及访问权限等performance_schema为MySQL服…

SRS视频服务器使用记录

SRS是一个开源的&#xff08;MIT协议&#xff09;简单高效的实时视频服务器&#xff0c;支持RTMP、WebRTC、HLS、HTTP-FLV、SRT、MPEG-DASH和GB28181等协议。 SRS媒体服务器和FFmpeg、OBS、VLC、 WebRTC等客户端配合使用&#xff0c;提供流的接收和分发的能力&#xff0c;是一个…

【SpringBoot】SpringBoot的web开发

&#x1f4dd;个人主页&#xff1a;五敷有你 &#x1f525;系列专栏&#xff1a;SpringBoot ⛺️稳重求进&#xff0c;晒太阳 Wbe开发 使用Springboot 1&#xff09;、创建SpringBoot应用&#xff0c;选中我们需要的模块&#xff1b; 2&#xff09;、SpringBoot已经默…

车载电子电器架构 —— IP地址获取策略

车载电子电器架构 —— IP地址获取策略 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明自…

【UE 材质】球形遮罩材质

效果 步骤 1. 新建一个材质&#xff0c;这里命名为“M_Mask” 打开“M_Mask”&#xff0c;混合模式设置为已遮罩&#xff0c;勾选双面显示 在材质图表中添加如下节点 此时我们将一个物体赋予材质“M_Mask”并放置在世界坐标原点&#xff0c;可以看到如下效果 2. 如果我们希望能…

【激光SLAM】里程计运动模型及标定

目录 里程计模型两轮差分底盘的运动学模型优点差分模型 三轮全向底盘的运动学模型优点全向模型 航迹推算(Dead Reckoning) 里程计标定线性最小二乘的基本原理最小二乘的直线拟合最小二乘在里程计标定中的应用方法 里程计模型 里程计相关介绍 两轮差分底盘的运动学模型 优点 …

无向图-树的重心-DFS求解

思路&#xff1a; 本题的本质是树的dfs&#xff0c; 每次dfs可以确定以u为重心的最大连通块的节点数&#xff0c;并且更新一下ans。 也就是说&#xff0c;dfs并不直接返回答案&#xff0c;而是在每次更新中迭代一次答案。 这样的套路会经常用到&#xff0c;在 树的dfs 题目中…

2024年MacBook上实用软件

Mac软件-mac软件下载-mac软件大全-MacZMacz下载是一个专业的Mac苹果电脑软件下载网站&#xff0c;提供专业的Mac软件、Mac游戏、精品插件以及各类海量素材下载&#xff0c;mac下载网站有Mac平台上常用好用的软件&#xff0c;有时下热门好玩的Mac游戏&#xff0c;还有各类PS、AE…