补全:数命中次数

补全:数命中次数

补全 hits:按顺序查一串事件,数命中几次。 贯穿本节的 TTL 缓存:query(cache, 名字, ip, now, ttl) 查一次——缓存里有且没过期(now-存入时刻 < ttl)

阅读更多 →
补全:查一次缓存

补全:查一次缓存

补全 query:缓存里有且没过期(now-存入 < ttl)交回 hit,否则回填并交回 miss。 贯穿本节的 TTL 缓存:query(cache, 名字, ip, now, ttl) 查

阅读更多 →
一串查询命中几次

一串查询命中几次

下面一串查询里(同名 TTL 60,时刻见代码),命中几次? 贯穿本节的 TTL 缓存:query(cache, 名字, ip, now, ttl) 查一次——缓存里有且没过期(now-存入时刻 &l

阅读更多 →
第三次查是命中还是未命中

第三次查是命中还是未命中

某名字 TTL 是 60。第 0 秒查一次、第 70 秒再查一次,第 70 秒这次是命中还是未命中? 贯穿本节的 TTL 缓存:query(cache, 名字, ip, now, ttl) 查一次——

阅读更多 →
TTL 是什么意思

TTL 是什么意思

头一次跑出去问,之后用缓存 每条 DNS 记录都带一个 TTL,它管的是【0】。 贯穿本节的 TTL 缓存:query(cache, 名字, ip, now, ttl) 查一次——缓存里有且没过期(n

阅读更多 →
DNS 缓存是什么

DNS 缓存是什么

头一次跑出去问,之后用缓存 同一个域名第二次访问往往不用再完整查一遍,靠的是【0】。 贯穿本节的 TTL 缓存:query(cache, 名字, ip, now, ttl) 查一次——缓存里有且没过期

阅读更多 →
补全:取某名字的 TTL

补全:取某名字的 TTL

补全 ttl_of:交回某个名字那条记录的 TTL,找不到交回 -1。 用 dig 查一个域名会打出一段应答,本节把它的 answer 段整理成每行「名字 TTL 类型 值」(; 开头是注释)。ans

阅读更多 →
补全:数某类记录

补全:数某类记录

补全 count_type:数应答里某个类型有几条。 用 dig 查一个域名会打出一段应答,本节把它的 answer 段整理成每行「名字 TTL 类型 值」(; 开头是注释)。answers(文本)

阅读更多 →
补全:解析应答文本

补全:解析应答文本

补全 answers:把每行「名字 TTL 类型 值」解析成四元组,跳过空行和 ; 注释行。 用 dig 查一个域名会打出一段应答,本节把它的 answer 段整理成每行「名字 TTL 类型 值」(;

阅读更多 →
应答里第一个地址

应答里第一个地址

下面这段应答里,第一条 A 记录的地址是多少? 用 dig 查一个域名会打出一段应答,本节把它的 answer 段整理成每行「名字 TTL 类型 值」(; 开头是注释)。answers(文本) 解析成

阅读更多 →