1
ch2 2021-05-17 19:44:27 +08:00
fiddler
|
2
iBugOne 2021-05-17 19:47:55 +08:00 1
不用抓包了,没有任何不同,去学习一下 HTTP 协议吧
|
3
LeeReamond OP @iBugOne 凡事怕较真,应用层数据无区别也许可以理解,但直接指定 ip 应可以绕过 dns,与 dns 行为的区别在哪里发生。
|
4
iBugOne 2021-05-17 20:15:54 +08:00
确实,直接访问 IP 会少一个 DNS 请求,但是这也不是 100% 的,比如本机会对 DNS 进行缓存,在缓存时间( TTL )内你也看不到额外的 DNS 请求。
另外 DNS 和 HTTP 一样是另一个应用层协议,如果抓包看的话应该先有 DNS 一来一回两个 UDP 包,然后才是 TCP 建立连接到接下来的 HTTP 内容 |
5
ho121 2021-05-17 20:19:58 +08:00 via Android
|
6
aladdindingding 2021-05-17 20:32:20 +08:00
你这用 wireshark 吧
|
7
jousca 2021-05-17 20:40:08 +08:00
楼主没有认真阅读《 TCP/IP 详解》,你要的问题书中已有答案。
从 HTTP 来说,无论是通过本地 host 还是通过 DNS 解析发送的 GET 包,都是一样的。因为解析域名的封包又不发送给 HTTP 服务器。 本地 HOST 文件也是 DNS 解析功能的一部分。 客户端查询 DNS 的过程是: 本地 host 文件—本地缓存—-DNS 服务器 |
8
jousca 2021-05-17 20:41:19 +08:00
@LeeReamond 区别在 DNS 服务里的查询顺序而已。 本地 HOST 也是解析功能的一部分。优先于网络应答。这是 DNS 的基本原理。
|
9
LeeReamond OP @jousca 感谢!
|