1. kresd/Marek/2016-04-18

1.1. Feature request

Use negative caching information to detect some kind of poison.

1.2. Senario

1st query: dig nonexist.go.jp

2nd query: dig xxx.ddnonexist.go.jp

If we get go.jp delegation response, we know it is a poison.

1.3. patch

I looked into the process_authory function (in lib/layer/iteration.c)

Problem is what should be the patch. (e.g. How do I use pktcache_peek)

Regards, -- ToshinoriMaeno 2016-04-18 11:51:39


=> querying: '203.119.40.1' score: 11 zone cut: 'jp.' m12n: 'go.Jp.' type: 'NS'
[iter]   <= rcode: NOERROR
[iter]   <= found cut, retrying with non-minimized name
[ pc ]   => answer cached for TTL=900
[resl]   <= server: '203.119.40.1' rtt: 6 ms

[resl]   
=> querying: '203.119.40.1' score: 11 zone cut: 'jp.' m12n: 'NONexist.Go.jP.' type: 'A'
[iter]   <= rcode: NXDOMAIN
[ pc ]   => answer cached for TTL=900
[resl]   <= server: '203.119.40.1' rtt: 5 ms
[resl] finished: 4, queries: 2, mempool: 32800 B

[plan] plan 'xxx.ddnonexist.go.jp.' type 'A'
[resl]   
=> querying: '203.119.40.1' score: 11 zone cut: 'jp.' m12n: 'xxx.DdNoNExIST.go.jP.' type: 'A'
[iter]   <= rcode: NXDOMAIN
[ pc ]   => answer cached for TTL=900
[resl]   <= server: '203.119.40.1' rtt: 6 ms
[resl] finished: 4, queries: 1, mempool: 32800 B