day025-网络基础-DNS与ARP协议
文章目录
- 1. DNS服务
- 1.1 DNS解析流程
- 1.2 查看本地DNS缓存(Windows)
- 1.3 查看详细DNS解析流程
- 1.4 排查DNS故障
- 2. 面试题:用户访问网站过程
- 2.1 抓包
- 3. ARP协议
- 3.1 命令查看
- 3.2 抓包
- 4. ICMP协议
- 4.1 禁用ping
- 5. 踩坑记录
- 1. **为什么解析域名时优先查看hosts文件,而不是本地DNS缓存?**
- 6. 思维导图
1. DNS服务
1.1 DNS解析流程
1.2 查看本地DNS缓存(Windows)
- 一般情况下,Linux系统无DNS缓存
# 查看本地DNS缓存
[D:\~]$ ipconfig /displaydnsWindows IP 配置1.0.0.127.in-addr.arpa----------------------------------------记录名称. . . . . . . : 1.0.0.127.in-addr.arpa.记录类型. . . . . . . : 12生存时间. . . . . . . : 600227数据长度. . . . . . . : 4部分. . . . . . . . . : 答案PTR 记录 . . . . . . : localhostevents.gx.nvidia.cn----------------------------------------记录名称. . . . . . . : events.gx.nvidia.cn记录类型. . . . . . . : 1生存时间. . . . . . . : 350数据长度. . . . . . . : 4部分. . . . . . . . . : 答案A (主机)记录 . . . . : 69.234.206.194记录名称. . . . . . . : events.gx.nvidia.cn记录类型. . . . . . . : 1生存时间. . . . . . . : 350数据长度. . . . . . . : 4部分. . . . . . . . . : 答案A (主机)记录 . . . . : 69.231.153.77……
# 清空DNS
[D:\~]$ ipconfig /flushdnsWindows IP 配置已成功刷新 DNS 解析缓存。
1.3 查看详细DNS解析流程
dig +trace 域名
root@iZ2ze7mths8vcox9zf7hkfZ:~# dig +trace baidu.com; <<>> DiG 9.18.30-0ubuntu0.22.04.2-Ubuntu <<>> +trace baidu.com
;; global options: +cmd
. 10 IN NS h.root-servers.net.
. 10 IN NS m.root-servers.net.
. 10 IN NS l.root-servers.net.
. 10 IN NS k.root-servers.net.
. 10 IN NS j.root-servers.net.
. 10 IN NS f.root-servers.net.
. 10 IN NS b.root-servers.net.
. 10 IN NS g.root-servers.net.
. 10 IN NS i.root-servers.net.
. 10 IN NS e.root-servers.net.
. 10 IN NS d.root-servers.net.
. 10 IN NS c.root-servers.net.
. 10 IN NS a.root-servers.net.
;; Received 239 bytes from 127.0.0.53#53(127.0.0.53) in 4 ms;; UDP setup with 2001:500:12::d0d#53(2001:500:12::d0d) for baidu.com failed: network unreachable.
;; no servers could be reached
;; UDP setup with 2001:500:12::d0d#53(2001:500:12::d0d) for baidu.com failed: network unreachable.
;; no servers could be reached
;; UDP setup with 2001:500:12::d0d#53(2001:500:12::d0d) for baidu.com failed: network unreachable.
com. 172800 IN NS a.gtld-servers.net.
com. 172800 IN NS b.gtld-servers.net.
com. 172800 IN NS c.gtld-servers.net.
com. 172800 IN NS d.gtld-servers.net.
com. 172800 IN NS e.gtld-servers.net.
com. 172800 IN NS f.gtld-servers.net.
com. 172800 IN NS g.gtld-servers.net.
com. 172800 IN NS h.gtld-servers.net.
com. 172800 IN NS i.gtld-servers.net.
com. 172800 IN NS j.gtld-servers.net.
com. 172800 IN NS k.gtld-servers.net.
com. 172800 IN NS l.gtld-servers.net.
com. 172800 IN NS m.gtld-servers.net.
com. 86400 IN DS 19718 13 2 8ACBB0CD28F41250A80A491389424D341522D946B0DA0C0291F2D3D7 71D7805A
com. 86400 IN RRSIG DS 8 1 86400 20250613170000 20250531160000 53148 . XoNw05OZ/ryx6t8KPQCtIvRabMT/5wN/sXubLflNf8SlpNkkeOcdlKBn iuhlnbMVU655HsV2iXXCF4kOaCgRxMxrq/gSv8bTLbtvepfVAyfvktI7 exe2U4yuHO+lX5UrjBwlqNnwB5/8kBYSBoIfQapgH0TSPwpHyOwVsZMQ 30RyncQsZ+seeVJjjZzRDwdLS7hN1KaL/A+MOzTjFgondPJR2YgiWhPw PLa9EHzVbt1x3tlBywkC45qBawDYLyBA8sEyLod7GaR2q6dwFuus+d2/ KCuzAE7BVlUnJ+SZZ4GznUbaNEiytRwquzhjKQ0bP4zSDhZ9KpIsMqrc xmeoog==
;; Received 1169 bytes from 193.0.14.129#53(k.root-servers.net) in 4 msbaidu.com. 172800 IN NS ns2.baidu.com.
baidu.com. 172800 IN NS ns3.baidu.com.
baidu.com. 172800 IN NS ns4.baidu.com.
baidu.com. 172800 IN NS ns1.baidu.com.
baidu.com. 172800 IN NS ns7.baidu.com.
CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 900 IN NSEC3 1 1 0 - CK0Q3UDG8CEKKAE7RUKPGCT1DVSSH8LL NS SOA RRSIG DNSKEY NSEC3PARAM
CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 900 IN RRSIG NSEC3 13 2 900 20250608002551 20250531231551 40097 com. 8HHPkrTLbI7lLcrWXq7O3H/waUt7H5QHZ7i3a2hBNrdTFpxLd7IVnLrS zf8hmHAw6nAoF7KzQzN3fBumRX2xSA==
HPVV1UNKTCF9TD77I2AUR73709T975GH.com. 900 IN NSEC3 1 1 0 - HPVV6R16UOVJ2R5VFOVRGPCVJ6O2KMD9 NS DS RRSIG
HPVV1UNKTCF9TD77I2AUR73709T975GH.com. 900 IN RRSIG NSEC3 13 2 900 20250607004609 20250530233609 40097 com. B5CIPdfv2jxUbDN8Yp1znPNFNcbdn4yQO5jRed+45AlAnzwg/M3Z5gjH +1LWoM4uMvHx5DudIcADWE8hZG0yCg==
;; Received 709 bytes from 192.42.93.30#53(g.gtld-servers.net) in 168 msbaidu.com. 600 IN A 110.242.68.66
baidu.com. 600 IN A 39.156.66.10
baidu.com. 86400 IN NS ns4.baidu.com.
baidu.com. 86400 IN NS ns2.baidu.com.
baidu.com. 86400 IN NS ns3.baidu.com.
baidu.com. 86400 IN NS dns.baidu.com.
baidu.com. 86400 IN NS ns7.baidu.com.
;; Received 412 bytes from 153.3.238.93#53(ns3.baidu.com) in 24 ms
1.4 排查DNS故障
2. 面试题:用户访问网站过程
2.1 抓包
- 过滤:
tcp.port == 80 or dns ~ "www.baidu.com"
- 执行命令:
curl www.baidu.com
3. ARP协议
ARP:Address Resolution Protocol,地址解析协议;
ARP(地址解析协议) 是用于在 局域网(LAN) 中将 IP 地址 解析为 MAC 地址 的协议,工作在 OSI 模型的数据链路层(L2) 和 网络层(L3) 之间。
- 设备的ARP表会缓存其他设备的MAC地址
3.1 命令查看
- kylin系统:
[root@oldboy99-Kylin ~]# arp -n
Address HWtype HWaddress Flags Mask Iface
10.0.0.2 ether 00:50:56:e8:d8:92 C ens33
10.0.0.1 ether 00:50:56:c0:00:08 C ens33
# 删除arp
[root@oldboy99-Kylin ~]# arp -d 10.0.0.2
[root@oldboy99-Kylin ~]# arp -n
Address HWtype HWaddress Flags Mask Iface
10.0.0.1 ether 00:50:56:c0:00:08 C ens33
- Windows系统:
# 查看arp表
[D:\~]$ arp -a接口: 192.168.16.38 --- 0xcInternet 地址 物理地址 类型192.168.16.1 dc-da-80-17-e7-ae 动态 192.168.16.2 dc-fe-18-88-fa-5c 动态 192.168.16.255 ff-ff-ff-ff-ff-ff 静态 224.0.0.22 01-00-5e-00-00-16 静态 224.0.0.251 01-00-5e-00-00-fb 静态 224.0.0.252 01-00-5e-00-00-fc 静态 239.192.152.143 01-00-5e-40-98-8f 静态 239.255.255.250 01-00-5e-7f-ff-fa 静态 255.255.255.255 ff-ff-ff-ff-ff-ff 静态 接口: 192.168.159.1 --- 0xfInternet 地址 物理地址 类型192.168.159.254 00-50-56-fc-b7-54 动态 192.168.159.255 ff-ff-ff-ff-ff-ff 静态 224.0.0.22 01-00-5e-00-00-16 静态 224.0.0.251 01-00-5e-00-00-fb 静态 224.0.0.252 01-00-5e-00-00-fc 静态 239.192.152.143 01-00-5e-40-98-8f 静态 239.255.255.250 01-00-5e-7f-ff-fa 静态 255.255.255.255 ff-ff-ff-ff-ff-ff 静态 接口: 10.0.0.1 --- 0x14Internet 地址 物理地址 类型10.0.0.200 00-0c-29-c3-59-25 动态 10.0.0.255 ff-ff-ff-ff-ff-ff 静态 224.0.0.22 01-00-5e-00-00-16 静态 224.0.0.251 01-00-5e-00-00-fb 静态 224.0.0.252 01-00-5e-00-00-fc 静态 239.192.152.143 01-00-5e-40-98-8f 静态 239.255.255.250 01-00-5e-7f-ff-fa 静态
3.2 抓包
- 过滤:arp
4. ICMP协议
ICMP:Internet Control Message Protocol,互联网控制报文协议。
工作在网络层,主要用于 网络诊断和错误报告,通常由 路由器 或 主机 发送,以检测网络连通性、路径可达性等。
- ping使用的就是icmp协议
4.1 禁用ping
- 临时禁止ping,重启后恢复
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
# 或者
sysctl -w net.ipv4.icmp_echo_ignore_all=1
- 准许ping
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all
sysctl -w net.ipv4.icmp_echo_ignore_all=0
- 永久生效
echo 'net.ipv4.icmp_echo_ignore_all =1 ' >> /etc/sysctl.conf
sysctl -p #生效
5. 踩坑记录
1. 为什么解析域名时优先查看hosts文件,而不是本地DNS缓存?
尽管本地DNS缓存理论上更快,但hosts文件的优先级更高,更权威
hosts文件的优先级被设定为最高,确保管理员可以强制覆盖任何缓存或外部DNS结果。
6. 思维导图
【金山文档】 思维导图 https://www.kdocs.cn/l/co3I7PtpTYQX