1.nslookup

♣ Wireshark _DNS实验答案 - 图1 运行 nslookup 以获取一个亚洲的 Web 服务器的 IP 地址。该服务器的 IP 地址是什么?

♣ Wireshark _DNS实验答案 - 图2 例子 1:查看 baidu.com 对应的 IP 地址

  1. [root@iZbp18vd1p2tytbwn5vgaqZ ~]# nslookup baidu.com
  2. Server: 100.100.2.136
  3. Address: 100.100.2.136#53
  4. Non-authoritative answer: # 非权威应答
  5. Name: baidu.com
  6. Address: 220.181.38.148 # IP地址
  7. Name: baidu.com
  8. Address: 220.181.38.251

可以看出,baidu.com 对应有两个 IP 地址,分别是 220.181.38.148 和 220.181.38.251,通过把两个 IP 地址输入浏览器会跳转到百度页面。

♣ Wireshark _DNS实验答案 - 图3 例子 2:查看 hamstercoder.top(我的个人网站)对应的 IP 地址

  1. [root@iZbp18vd1p2tytbwn5vgaqZ ~]# nslookup hamstercoder.top
  2. Server: 100.100.2.136
  3. Address: 100.100.2.136#53
  4. Non-authoritative answer: # 非权威应答
  5. hamstercoder.top canonical name = hamstercoder-top-idvhr8b.qiniudns.com.
  6. hamstercoder-top-idvhr8b.qiniudns.com canonical name = dt003.china.line.qiniudns.com.
  7. dt003.china.line.qiniudns.com canonical name = tinychinacdnweb.qiniu.com.w.kunlunno.com.
  8. Name: tinychinacdnweb.qiniu.com.w.kunlunno.com
  9. Address: 114.80.187.104
  10. Name: tinychinacdnweb.qiniu.com.w.kunlunno.com
  11. Address: 114.80.187.102
  12. Name: tinychinacdnweb.qiniu.com.w.kunlunno.com
  13. Address: 114.80.187.100
  14. Name: tinychinacdnweb.qiniu.com.w.kunlunno.com
  15. Address: 114.80.187.101
  16. Name: tinychinacdnweb.qiniu.com.w.kunlunno.com
  17. Address: 114.80.187.103
  18. Name: tinychinacdnweb.qiniu.com.w.kunlunno.com
  19. Address: 114.80.187.107
  20. Name: tinychinacdnweb.qiniu.com.w.kunlunno.com
  21. Address: 114.80.187.106
  22. Name: tinychinacdnweb.qiniu.com.w.kunlunno.com
  23. Address: 114.80.187.105
  24. Name: tinychinacdnweb.qiniu.com.w.kunlunno.com
  25. Address: 240e:e9:a006:5:3::3fc
  26. Name: tinychinacdnweb.qiniu.com.w.kunlunno.com
  27. Address: 240e:e9:a006:5:3::3fb

因为我之前在七牛云建立了图床,所以使用到了二级域名 hamstercoder-top-idvhr8b.qiniudns.com,所以查询出来的 IP 地址很多,都是二级域名对应的七牛云的服务器。

♣ Wireshark _DNS实验答案 - 图4 运行 nslookup 来确定一个欧洲的大学的权威 DNS 服务器。

  1. [root@iZbp18vd1p2tytbwn5vgaqZ ~]# nslookup -type=NS ox.ac.uk
  2. Server: 100.100.2.136
  3. Address: 100.100.2.136#53
  4. Non-authoritative answer: # 非权威应答
  5. ox.ac.uk nameserver = dns1.ox.ac.uk.
  6. ox.ac.uk nameserver = auth5.dns.ox.ac.uk.
  7. ox.ac.uk nameserver = dns0.ox.ac.uk.
  8. ox.ac.uk nameserver = dns2.ox.ac.uk.
  9. ox.ac.uk nameserver = ns2.ja.net.
  10. ox.ac.uk nameserver = auth4.dns.ox.ac.uk.
  11. ox.ac.uk nameserver = auth6.dns.ox.ac.uk.
  12. Authoritative answers can be found from: # 权威应答
  13. ns2.ja.net internet address = 193.63.105.17
  14. dns0.ox.ac.uk internet address = 129.67.1.190
  15. dns1.ox.ac.uk internet address = 129.67.1.191
  16. dns2.ox.ac.uk internet address = 163.1.2.190
  17. auth4.dns.ox.ac.uk internet address = 45.33.127.156
  18. auth5.dns.ox.ac.uk internet address = 93.93.128.67
  19. auth6.dns.ox.ac.uk internet address = 185.24.221.32
  20. ns2.ja.net has AAAA address 2001:630:0:45::11
  21. auth4.dns.ox.ac.uk has AAAA address 2600:3c00::f03c:91ff:fe96:beac
  22. auth5.dns.ox.ac.uk has AAAA address 2a00:1098:0:80:1000::10
  23. auth6.dns.ox.ac.uk has AAAA address 2a02:2770:11:0:21a:4aff:febe:759b

♣ Wireshark _DNS实验答案 - 图5 运行 nslookup,使用问题 2 中一个已获得的 DNS 服务器,来查询 Yahoo! 邮箱的邮件服务器。它的 IP 地址是什么?

♣ Wireshark _DNS实验答案 - 图6

2. ipconfig

♣ Wireshark _DNS实验答案 - 图7 使用 ifconfig 命令查看 Linux 系统的 IP 地址

  1. [root@iZbp18vd1p2tytbwn5vgaqZ ~]# ifconfig
  2. eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
  3. inet 172.26.20.11 netmask 255.255.192.0 broadcast 172.26.63.255
  4. inet6 fe80::216:3eff:fe0e:69a8 prefixlen 64 scopeid 0x20<link>
  5. ether 00:16:3e:0e:69:a8 txqueuelen 1000 (Ethernet)
  6. RX packets 7000071 bytes 5035684577 (4.6 GiB)
  7. RX errors 0 dropped 0 overruns 0 frame 0
  8. TX packets 5024461 bytes 882966590 (842.0 MiB)
  9. TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
  10. lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
  11. inet 127.0.0.1 netmask 255.0.0.0
  12. inet6 ::1 prefixlen 128 scopeid 0x10<host>
  13. loop txqueuelen 1000 (Local Loopback)
  14. RX packets 16 bytes 624 (624.0 B)
  15. RX errors 0 dropped 0 overruns 0 frame 0
  16. TX packets 16 bytes 624 (624.0 B)
  17. TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

♣ Wireshark _DNS实验答案 - 图8 使用 ipconfig 查看 Windows 系统的 IP 地址

  1. PS C:\Users\*****\Desktop> ipconfig
  2. 无线局域网适配器 WLAN:
  3. 连接特定的 DNS 后缀 . . . . . . . :
  4. IPv6 地址 . . . . . . . . . . . . : 2001:da8:7000:6726::1709
  5. 本地链接 IPv6 地址. . . . . . . . : fe80::e092:c552:7f35:4dfc%15
  6. IPv4 地址 . . . . . . . . . . . . : 10.21.233.180
  7. 子网掩码 . . . . . . . . . . . . : 255.255.192.0
  8. 默认网关. . . . . . . . . . . . . : fe80::7625:8aff:fee3:a825%15
  9. 10.21.254.254

3. 使用Wireshark追踪DNS

实验一

实验描述

实验一:现在,我们熟悉 nslookupipconfig,我们准备好了一些正经的事情。首先让我们捕获一些由常规上网活动生成的 DNS 数据包。实验步骤如下:

  1. 使用*ipconfig*清空主机中的 DNS 缓存。
  2. 打开浏览器并清空浏览器缓存。 (若使用 Internet Explorer,转到工具菜单并选择 Internet 选项;然后在常规选项卡中选择删除文件。)
  3. 打开 Wireshark,然后在过滤器中输入ip.addr==your_IP_address,您可以先使用*ipconfig*获取你的 IP地址。此过滤器将删除既从你主机不发出也不发往你主机的所有数据包。
  4. 在 Wireshark 中启动数据包捕获。
  5. 使用浏览器访问网页: http://www.ietf.org
  6. 停止数据包捕获。

实验问题和答案

♣ Wireshark _DNS实验答案 - 图9 找到 DNS 查询和响应消息。它们是否通过 UDP 或 TCP 发送?

答:通过 UDP 发送

♣ Wireshark _DNS实验答案 - 图10 DNS 查询消息的目标端口是什么? DNS 响应消息的源端口是什么?

答:端口都是 53

♣ Wireshark _DNS实验答案 - 图11 DNS 查询消息发送到哪个 IP 地址?使用 ipconfig 来确定本地 DNS 服务器的 IP 地址。这两个 IP 地址是否相同?
答:查询消息发送到 10.5.5.1,与本地 DNS 服务器的 IP 地址相同

答:查询消息发送到 10.5.5.1,与本地 DNS 服务器的 IP 地址相同

♣ Wireshark _DNS实验答案 - 图12 检查 DNS 查询消息。DNS 查询是什么 “Type”的?查询消息是否包含任何 “answers”?
答:DNS 查询是 Type, A 查询消息不包含任何 “answers”

♣ Wireshark _DNS实验答案 - 图13 检查 DNS 响应消息。提供了多少个 “answers”?这些答案具体包含什么?

  1. Answers
  2. www.ietf.org: type CNAME, class IN, cname www.ietf.org.cdn.cloudflare.net
  3. www.ietf.org.cdn.cloudflare.net: type A, class IN, addr 104.20.1.85
  4. www.ietf.org.cdn.cloudflare.net: type A, class IN, addr 104.20.0.85

♣ Wireshark _DNS实验答案 - 图14 考虑从您主机发送的后续 TCP SYN 数据包。 SYN 数据包的目的 IP 地址是否与 DNS 响应消息中提供的任何 IP地址相对应?

答:后续TCP SYN数据包与 DNS 响应消息中提供的 104.20.1.85 对应

♣ Wireshark _DNS实验答案 - 图15 这个网页包含一些图片。在获取每个图片前,您的主机是否都发出了新的 DNS 查询?
答:并没有发出新的 DNS 查询

实验二

实验描述

现在让我们玩玩nslookup,实验步骤如下:

  1. 启动数据包捕获。
  2. 使用 nslookup 查询 www.mit.edu
  3. 停止数据包捕获。

你应该得到类似下图所示的捕获结果:

♣ Wireshark _DNS实验答案 - 图16

我们从上面的屏幕截图看到,nslookup 实际上发送了三个 DNS 查询,并收到了三个 DNS 响应。只考虑本次实验相关结果,在回答以下问题时,请忽略前两组查询/响应,因为 nslookup 的一些特殊性,这些查询通常不是由标准网络应用程序生成的。您应该专注于最后一个查询和响应消息。

实验问题和答案

♣ Wireshark _DNS实验答案 - 图17 DNS 查询消息的目标端口是什么? DNS 响应消息的源端口是什么?

答:端口都是 53

♣ Wireshark _DNS实验答案 - 图18 DNS 查询消息的目标 IP 地址是什么?这是你的默认本地 DNS 服务器的 IP 地址吗?

答:DNS 查询消息的目标 IP 地址是 10.5.5.1,是默认本地 DNS 服务器的 IP 地址

♣ Wireshark _DNS实验答案 - 图19 检查 DNS 查询消息。DNS 查询是什么 “Type” 的?查询消息是否包含任何 “answers”?
答:Type A 查询消息不包含任何 “answers”

♣ Wireshark _DNS实验答案 - 图20 检查 DNS 响应消息。提供了多少个 “answers”?这些答案包含什么?

  1. Answers
  2. www.mit.edu: type CNAME, class IN, cname www.mit.edu.edgekey.net
  3. www.mit.edu.edgekey.net: type CNAME, class IN, cname e9566.dscb.akamaiedge.net
  4. e9566.dscb.akamaiedge.net: type A, class IN, addr 23.75.8.201

♣ Wireshark _DNS实验答案 - 图21 提供屏幕截图

♣ Wireshark _DNS实验答案 - 图22

实验三

实验描述

现在重复上一个实验,但换成以下命令:nslookup -type=NS mit.edu

实验问题和答案

♣ Wireshark _DNS实验答案 - 图23 DNS 查询消息发送到的 IP 地址是什么?这是您的默认本地 DNS 服务器的 IP 地址吗?
答:DNS 查询消息的目标 IP 地址是 10.5.5.1,是默认本地 DNS 服务器的 IP 地址

♣ Wireshark _DNS实验答案 - 图24 检查 DNS 查询消息。DNS 查询是什么 “Type” 的?查询消息是否包含任何 “answers”?
答:Type NS 查询消息不包含任何 “answers”

♣ Wireshark _DNS实验答案 - 图25 检查 DNS 响应消息。响应消息提供的 MIT 域名服务器是什么?此响应消息还提供了 MIT 域名服务器的 IP 地址吗?

  1. mit.edu nameserver = usw2.akam.net
  2. mit.edu nameserver = use2.akam.net
  3. mit.edu nameserver = asia1.akam.net
  4. mit.edu nameserver = asia2.akam.net
  5. mit.edu nameserver = ns1-173.akam.net
  6. mit.edu nameserver = use5.akam.net
  7. mit.edu nameserver = ns1-37.akam.net
  8. mit.edu nameserver = eur5.akam.net

响应消息没有提供 MIT 域名服务器的 IP 地址

♣ Wireshark _DNS实验答案 - 图26 提供屏幕截图。 实验图像

♣ Wireshark _DNS实验答案 - 图27

实验四

实验描述

现在重复上一个实验,但换成以下命令:nslookup www.aiit.or.kr bitsy.mit.edu

实验问题和答案

♣ Wireshark _DNS实验答案 - 图28 DNS 查询消息发送到的 IP 地址是什么?这是您的默认本地 DNS 服务器的IP地址吗?如果不是,这个 IP 地址是什么?
答:DNS 查询消息先发送到默认本地 DNS 服务器 10.5.5.1,查询 bitsy.mit.edu 的 IP 地址,查询消息再发送到 IP地址 18.0.72.3,是 bitsy.mit.edu 的 IP 地址。

♣ Wireshark _DNS实验答案 - 图29 检查 DNS 查询消息。DNS 查询是什么 “Type” 的?查询消息是否包含任何 “answers”?
答:Type A 查询消息不包含任何 “answers”

♣ Wireshark _DNS实验答案 - 图30 检查 DNS 响应消息。提供了多少个 “answers”?这些答案包含什么?

  1. Answers
  2. www.aiit.or.kr: type A, class IN, addr 58.229.6.225

♣ Wireshark _DNS实验答案 - 图31 提供屏幕截图

♣ Wireshark _DNS实验答案 - 图32