.org dependency graph
.org dependency graph

DNSTrust – TLD dependency graphs

Introduction

The graphs linked below represent the trust dependencies for top-level domains (TLDs). Boxed nodes represent zones, and elliptical nodes represent name servers. Red arrows connect zones to their name servers, and blue arrows connect name servers to the zones their names are within.

The more domain names (elliptical nodes) in a TLD's graph, the more implicit trust dependencies that TLD has. E.g., the .se graph has only 10 name servers, all of which are direct name servers for the .se zone, so it has no implicit trust dependencies. However, the .fr graph has 136 name servers, only 8 of which are direct name servers for the .fr zone, so it has a lot of implicit trust dependencies.

Having implicit trust dependencies makes a TLD more vulnerable to DNS cache poisoning. E.g., in the case of .fr, if any one of those 136 name servers were to be compromised, it could very easily poison every .fr domain name. This page describes an example attack where one of the implicitly trusted name servers takes over control of the entire .fr domain.

Fully deploying DNSSEC globally would largely solve these trust issues, but why wait for that to happen? TLD operators could fix this through purely administrative changes today.

Dependencies

If a TLD has no more transitive name servers than direct name servers, then it earns a silver star. If the TLD additionally has only one zone dependency, then it earns a gold star.

TLD Zones Servers PDF link Graphviz link
Direct Transitive
.ac 18 7 55 ac.pdf (27896 bytes) ac.dot (11547 bytes)
.ad 104 8 266 ad.pdf (106163 bytes) ad.dot (58240 bytes)
.ae 78 7 204 ae.pdf (83122 bytes) ae.dot (47354 bytes)
.aero 99 9 250 aero.pdf (99456 bytes) aero.dot (56883 bytes)
.af 103 12 234 af.pdf (95649 bytes) af.dot (54171 bytes)
.ag 18 7 26 ag.pdf (22104 bytes) ag.dot (11667 bytes)
.ai 9 4 27 ai.pdf (16288 bytes) ai.dot (5481 bytes)
.al 101 7 245 al.pdf (98984 bytes) al.dot (56901 bytes)
.am 67 7 175 am.pdf (69591 bytes) am.dot (39699 bytes)
.an 95 10 213 an.pdf (87506 bytes) an.dot (49718 bytes)
.ao 75 5 169 ao.pdf (70653 bytes) ao.dot (39245 bytes)
.aq 105 4 227 aq.pdf (95747 bytes) aq.dot (54040 bytes)
.ar 90 8 228 ar.pdf (91101 bytes) ar.dot (51565 bytes)
.arpa 6 12 34 arpa.pdf (17162 bytes) arpa.dot (6366 bytes)
.as 28 9 66 as.pdf (36389 bytes) as.dot (19377 bytes)
.asia 18 6 25 asia.pdf (22163 bytes) asia.dot (12606 bytes)
.at 4 10 17 at.pdf (13229 bytes) at.dot (3249 bytes)
.au 76 9 201 au.pdf (81044 bytes) au.dot (46406 bytes)
.aw 92 3 205 aw.pdf (84343 bytes) aw.dot (47978 bytes)
.ax 17 3 45 ax.pdf (22549 bytes) ax.dot (8916 bytes)
.az 131 5 282 az.pdf (116780 bytes) az.dot (66551 bytes)
.ba 86 5 213 ba.pdf (86842 bytes) ba.dot (49738 bytes)
.bb 8 2 29 bb.pdf (16531 bytes) bb.dot (5787 bytes)
.bd 6 3 26 bd.pdf (15672 bytes) bd.dot (4909 bytes)
Silver star .be 2 8 8 be.pdf (9322 bytes) be.dot (1455 bytes)
.bf 62 4 145 bf.pdf (60411 bytes) bf.dot (34165 bytes)
.bg 64 6 148 bg.pdf (62267 bytes) bg.dot (34741 bytes)
Silver star .bh 3 4 4 bh.pdf (8317 bytes) bh.dot (1367 bytes)
.bi 59 5 139 bi.pdf (59375 bytes) bi.dot (32902 bytes)
.biz 2 7 11 biz.pdf (9175 bytes) biz.dot (1711 bytes)
.bj 62 5 145 bj.pdf (60732 bytes) bj.dot (33865 bytes)
.bm 24 8 68 bm.pdf (29582 bytes) bm.dot (12049 bytes)
.bn 59 5 141 bn.pdf (58934 bytes) bn.dot (33100 bytes)
.bo 72 3 174 bo.pdf (71273 bytes) bo.dot (39691 bytes)
Silver star .br 2 6 6 br.pdf (7596 bytes) br.dot (987 bytes)
.bs 15 3 37 bs.pdf (21259 bytes) bs.dot (8671 bytes)
.bt 96 7 240 bt.pdf (93915 bytes) bt.dot (53902 bytes)
.bv 17 3 56 bv.pdf (24864 bytes) bv.dot (9379 bytes)
.bw 134 7 294 bw.pdf (123878 bytes) bw.dot (70712 bytes)
.by 112 6 237 by.pdf (99532 bytes) by.dot (57320 bytes)
.bz 16 6 23 bz.pdf (20565 bytes) bz.dot (11004 bytes)
.ca 19 10 33 ca.pdf (23416 bytes) ca.dot (12183 bytes)
.cat 114 9 290 cat.pdf (112943 bytes) cat.dot (62587 bytes)
.cc 5 7 28 cc.pdf (15331 bytes) cc.dot (5035 bytes)
.cd 60 3 141 cd.pdf (59938 bytes) cd.dot (33233 bytes)
.cf 64 3 151 cf.pdf (62722 bytes) cf.dot (35941 bytes)
.cg 60 3 141 cg.pdf (59937 bytes) cg.dot (33233 bytes)
.ch 90 8 228 ch.pdf (91323 bytes) ch.dot (51565 bytes)
.ci 64 6 153 ci.pdf (63269 bytes) ci.dot (35653 bytes)
.ck 9 4 17 ck.pdf (16874 bytes) ck.dot (5614 bytes)
.cl 64 7 166 cl.pdf (67558 bytes) cl.dot (37189 bytes)
.cm 96 8 243 cm.pdf (95796 bytes) cm.dot (54329 bytes)
.cn 100 6 253 cn.pdf (100325 bytes) cn.dot (56329 bytes)
.co 98 6 229 co.pdf (91962 bytes) co.dot (52520 bytes)
.com 4 13 21 com.pdf (13418 bytes) com.dot (4135 bytes)
.coop 7 4 29 coop.pdf (17487 bytes) coop.dot (5990 bytes)
.cr 63 6 151 cr.pdf (61405 bytes) cr.dot (34953 bytes)
.cu 63 6 154 cu.pdf (63267 bytes) cu.dot (36116 bytes)
.cv 75 5 169 cv.pdf (70648 bytes) cv.dot (39245 bytes)
.cx 37 7 83 cx.pdf (43375 bytes) cx.dot (24315 bytes)
.cy 76 8 198 cy.pdf (78481 bytes) cy.dot (44425 bytes)
Silver star .cz 2 6 6 cz.pdf (7556 bytes) cz.dot (939 bytes)
.de 9 6 32 de.pdf (18412 bytes) de.dot (6329 bytes)
.dj 63 9 152 dj.pdf (63553 bytes) dj.dot (35259 bytes)
.dk 8 6 31 dk.pdf (17381 bytes) dk.dot (5996 bytes)
.dm 29 4 62 dm.pdf (35115 bytes) dm.dot (19142 bytes)
.do 29 5 69 do.pdf (33372 bytes) do.dot (15704 bytes)
.dz 61 4 139 dz.pdf (58875 bytes) dz.dot (33213 bytes)
Silver star .ec 2 4 4 ec.pdf (7141 bytes) ec.dot (751 bytes)
.edu 5 7 21 edu.pdf (14157 bytes) edu.dot (4497 bytes)
.ee 30 7 76 ee.pdf (32785 bytes) ee.dot (14240 bytes)
.eg 23 4 63 eg.pdf (31361 bytes) eg.dot (14831 bytes)
.er 62 6 144 er.pdf (61115 bytes) er.dot (34301 bytes)
.es 103 10 260 es.pdf (104704 bytes) es.dot (57608 bytes)
.et 63 4 147 et.pdf (62432 bytes) et.dot (34786 bytes)
.eu 4 9 17 eu.pdf (11888 bytes) eu.dot (2682 bytes)
Gold star .fi 1 6 6 fi.pdf (6390 bytes) fi.dot (431 bytes)
.fj 28 8 65 fj.pdf (32529 bytes) fj.dot (16337 bytes)
.fk 7 6 27 fk.pdf (16866 bytes) fk.dot (5293 bytes)
.fm 25 6 61 fm.pdf (34163 bytes) fm.dot (18070 bytes)
.fo 8 2 32 fo.pdf (17130 bytes) fo.dot (5989 bytes)
.fr 57 8 136 fr.pdf (57973 bytes) fr.dot (32155 bytes)
.ga 59 4 142 ga.pdf (59219 bytes) ga.dot (33107 bytes)
.gb 91 4 203 gb.pdf (84368 bytes) gb.dot (47653 bytes)
.gd 65 7 152 gd.pdf (63861 bytes) gd.dot (36915 bytes)
.ge 66 5 146 ge.pdf (62073 bytes) ge.dot (34982 bytes)
.gf 6 2 24 gf.pdf (15190 bytes) gf.dot (4823 bytes)
.gg 142 10 300 gg.pdf (129024 bytes) gg.dot (74073 bytes)
.gh 129 6 276 gh.pdf (116990 bytes) gh.dot (66604 bytes)
.gi 16 6 23 gi.pdf (20574 bytes) gi.dot (11004 bytes)
.gl 14 5 41 gl.pdf (20511 bytes) gl.dot (8024 bytes)
.gm 12 3 33 gm.pdf (18843 bytes) gm.dot (6760 bytes)
.gn 128 4 274 gn.pdf (116220 bytes) gn.dot (66132 bytes)
.gov 7 7 36 gov.pdf (18299 bytes) gov.dot (6969 bytes)
.gp 109 4 272 gp.pdf (107849 bytes) gp.dot (59782 bytes)
.gq 60 2 139 gq.pdf (59145 bytes) gq.dot (32822 bytes)
.gr 12 9 42 gr.pdf (22696 bytes) gr.dot (9123 bytes)
.gs 63 7 152 gs.pdf (62684 bytes) gs.dot (35749 bytes)
.gt 67 6 158 gt.pdf (64024 bytes) gt.dot (36385 bytes)
.gu 60 5 142 gu.pdf (59320 bytes) gu.dot (33248 bytes)
.gw 13 3 41 gw.pdf (21150 bytes) gw.dot (7726 bytes)
.gy 74 8 167 gy.pdf (69761 bytes) gy.dot (39389 bytes)
.hk 85 10 222 hk.pdf (89983 bytes) hk.dot (49630 bytes)
.hm 3 3 6 hm.pdf (8803 bytes) hm.dot (1144 bytes)
.hn 16 6 23 hn.pdf (20568 bytes) hn.dot (11004 bytes)
.hr 113 5 287 hr.pdf (113390 bytes) hr.dot (63012 bytes)
.ht 68 6 163 ht.pdf (66899 bytes) ht.dot (37645 bytes)
.hu 64 7 148 hu.pdf (61380 bytes) hu.dot (34481 bytes)
.id 70 7 178 id.pdf (72067 bytes) id.dot (40464 bytes)
.ie 100 9 249 ie.pdf (101253 bytes) ie.dot (56069 bytes)
.il 74 7 172 il.pdf (72674 bytes) il.dot (41091 bytes)
.im 10 3 36 im.pdf (20301 bytes) im.dot (7388 bytes)
.in 18 8 31 in.pdf (23655 bytes) in.dot (12892 bytes)
.info 13 6 17 info.pdf (17320 bytes) info.dot (8562 bytes)
.int 94 5 208 int.pdf (86983 bytes) int.dot (49196 bytes)
.io 18 7 55 io.pdf (27538 bytes) io.dot (11547 bytes)
Silver star .iq 2 6 6 iq.pdf (8157 bytes) iq.dot (1246 bytes)
.ir 97 4 249 ir.pdf (98952 bytes) ir.dot (55688 bytes)
.is 71 7 164 is.pdf (67608 bytes) is.dot (37948 bytes)
.it 11 5 36 it.pdf (19090 bytes) it.dot (6832 bytes)
.je 142 10 300 je.pdf (129120 bytes) je.dot (74073 bytes)
.jm 64 5 153 jm.pdf (63012 bytes) jm.dot (35571 bytes)
.jo 67 6 158 jo.pdf (65278 bytes) jo.dot (37679 bytes)
.jobs 5 7 28 jobs.pdf (15339 bytes) jobs.dot (5051 bytes)
Silver star .jp 2 7 7 jp.pdf (8107 bytes) jp.dot (1129 bytes)
.ke 146 3 337 ke.pdf (137514 bytes) ke.dot (77904 bytes)
.kg 83 3 170 kg.pdf (70531 bytes) kg.dot (40518 bytes)
.kh 121 6 288 kh.pdf (117989 bytes) kh.dot (68168 bytes)
.ki 108 10 264 ki.pdf (109242 bytes) ki.dot (63653 bytes)
.km 15 3 42 km.pdf (22516 bytes) km.dot (9512 bytes)
.kn 86 3 222 kn.pdf (87843 bytes) kn.dot (49782 bytes)
.kp 13 2 36 kp.pdf (20129 bytes) kp.dot (7204 bytes)
Silver star .kr 2 6 6 kr.pdf (7704 bytes) kr.dot (987 bytes)
.kw 6 4 28 kw.pdf (16226 bytes) kw.dot (4953 bytes)
.ky 7 6 29 ky.pdf (17113 bytes) ky.dot (5745 bytes)
.kz 80 7 164 kz.pdf (69513 bytes) kz.dot (39488 bytes)
.la 6 7 28 la.pdf (16875 bytes) la.dot (5647 bytes)
.lb 114 5 246 lb.pdf (102039 bytes) lb.dot (59346 bytes)
.lc 19 7 26 lc.pdf (22136 bytes) lc.dot (12056 bytes)
.li 91 8 229 li.pdf (92705 bytes) li.dot (52021 bytes)
.lk 95 9 244 lk.pdf (96603 bytes) lk.dot (54111 bytes)
.lr 128 3 274 lr.pdf (114196 bytes) lr.dot (66097 bytes)
.ls 129 3 278 ls.pdf (115104 bytes) ls.dot (66633 bytes)
.lt 18 7 63 lt.pdf (26061 bytes) lt.dot (10091 bytes)
.lu 93 9 239 lu.pdf (95767 bytes) lu.dot (53371 bytes)
.lv 64 8 148 lv.pdf (61717 bytes) lv.dot (34736 bytes)
.ly 68 5 153 ly.pdf (65023 bytes) ly.dot (36535 bytes)
.ma 60 6 143 ma.pdf (60172 bytes) ma.dot (33859 bytes)
.mc 64 5 149 mc.pdf (62122 bytes) mc.dot (34586 bytes)
.md 78 7 172 md.pdf (71064 bytes) md.dot (40124 bytes)
.me 17 8 27 me.pdf (22460 bytes) me.dot (11765 bytes)
.mg 65 5 151 mg.pdf (61840 bytes) mg.dot (35176 bytes)
.mh 11 4 29 mh.pdf (18008 bytes) mh.dot (6932 bytes)
Silver star .mil 2 6 6 mil.pdf (7959 bytes) mil.dot (1146 bytes)
.mk 55 5 124 mk.pdf (56733 bytes) mk.dot (32317 bytes)
.ml 59 5 140 ml.pdf (58901 bytes) ml.dot (32986 bytes)
.mm 61 5 145 mm.pdf (61356 bytes) mm.dot (34300 bytes)
.mn 17 10 27 mn.pdf (22151 bytes) mn.dot (11713 bytes)
.mo 87 6 227 mo.pdf (89535 bytes) mo.dot (50507 bytes)
.mobi 16 6 23 mobi.pdf (20591 bytes) mobi.dot (10962 bytes)
Silver star .mp 2 4 4 mp.pdf (7161 bytes) mp.dot (735 bytes)
.mq 94 3 235 mq.pdf (95474 bytes) mq.dot (53217 bytes)
.mr 63 3 146 mr.pdf (61614 bytes) mr.dot (34326 bytes)
.ms 33 7 75 ms.pdf (38619 bytes) ms.dot (21496 bytes)
.mt 59 8 144 mt.pdf (60199 bytes) mt.dot (33279 bytes)
.mu 110 7 277 mu.pdf (114854 bytes) mu.dot (66088 bytes)
.museum 49 5 107 museum.pdf (46677 bytes) museum.dot (25238 bytes)
.mv 8 4 29 mv.pdf (17090 bytes) mv.dot (5752 bytes)
.mw 94 7 239 mw.pdf (98750 bytes) mw.dot (56731 bytes)
Silver star .mx 2 6 6 mx.pdf (7611 bytes) mx.dot (1061 bytes)
.my 98 8 249 my.pdf (98769 bytes) my.dot (55417 bytes)
.mz 16 5 45 mz.pdf (24013 bytes) mz.dot (10150 bytes)
.na 38 5 85 na.pdf (41444 bytes) na.dot (22588 bytes)
.name 5 10 31 name.pdf (16192 bytes) name.dot (5421 bytes)
.nc 61 4 146 nc.pdf (60414 bytes) nc.dot (33944 bytes)
.ne 60 3 140 ne.pdf (58326 bytes) ne.dot (32990 bytes)
.net 4 13 21 net.pdf (13955 bytes) net.dot (4135 bytes)
.nf 3 2 4 nf.pdf (7233 bytes) nf.dot (691 bytes)
.ng 8 6 38 ng.pdf (19888 bytes) ng.dot (7800 bytes)
.ni 77 7 169 ni.pdf (70553 bytes) ni.dot (40332 bytes)
.nl 90 7 203 nl.pdf (83268 bytes) nl.dot (47454 bytes)
.no 16 6 56 no.pdf (24339 bytes) no.dot (9215 bytes)
.np 114 9 280 np.pdf (116556 bytes) np.dot (66376 bytes)
.nr 26 4 53 nr.pdf (30676 bytes) nr.dot (16701 bytes)
.nu 2 9 12 nu.pdf (9933 bytes) nu.dot (1879 bytes)
Silver star .nz 3 7 7 nz.pdf (9307 bytes) nz.dot (2024 bytes)
.om 63 4 144 om.pdf (61318 bytes) om.dot (34589 bytes)
.org 13 6 17 org.pdf (17687 bytes) org.dot (8562 bytes)
.pa 77 6 194 pa.pdf (76588 bytes) pa.dot (42523 bytes)
.pe 61 4 142 pe.pdf (59724 bytes) pe.dot (33622 bytes)
Silver star .pf 2 2 2 pf.pdf (6415 bytes) pf.dot (448 bytes)
.pg 86 5 215 pg.pdf (86910 bytes) pg.dot (50035 bytes)
.ph 61 3 158 ph.pdf (62930 bytes) ph.dot (35557 bytes)
.pk 13 3 31 pk.pdf (18754 bytes) pk.dot (7082 bytes)
Gold star .pl 1 9 9 pl.pdf (7776 bytes) pl.dot (680 bytes)
.pm 58 8 136 pm.pdf (57845 bytes) pm.dot (32493 bytes)
.pn 101 4 219 pn.pdf (91573 bytes) pn.dot (51645 bytes)
.pr 12 5 40 pr.pdf (21059 bytes) pr.dot (7736 bytes)
Silver star .pro 2 4 4 pro.pdf (6896 bytes) pro.dot (762 bytes)
.ps 67 6 161 ps.pdf (65866 bytes) ps.dot (37562 bytes)
.pt 64 6 155 pt.pdf (63160 bytes) pt.dot (35367 bytes)
Silver star .pw 2 4 4 pw.pdf (8333 bytes) pw.dot (860 bytes)
.py 102 8 252 py.pdf (99465 bytes) py.dot (57299 bytes)
Silver star .qa 3 3 3 qa.pdf (7394 bytes) qa.dot (1030 bytes)
.re 58 8 136 re.pdf (57842 bytes) re.dot (32493 bytes)
.ro 35 6 68 ro.pdf (36290 bytes) ro.dot (19510 bytes)
.rs 93 9 231 rs.pdf (92618 bytes) rs.dot (53082 bytes)
.ru 66 7 146 ru.pdf (62903 bytes) ru.dot (34950 bytes)
.rw 60 3 141 rw.pdf (59941 bytes) rw.dot (33233 bytes)
.sa 66 6 157 sa.pdf (64872 bytes) sa.dot (37305 bytes)
.sb 93 8 247 sb.pdf (100205 bytes) sb.dot (57068 bytes)
.sc 22 7 47 sc.pdf (28667 bytes) sc.dot (15751 bytes)
.sd 154 7 355 sd.pdf (147549 bytes) sd.dot (83993 bytes)
Gold star .se 1 10 10 se.pdf (7832 bytes) se.dot (729 bytes)
.sg 89 5 226 sg.pdf (90837 bytes) sg.dot (50830 bytes)
.sh 18 7 55 sh.pdf (27823 bytes) sh.dot (11547 bytes)
.si 36 8 79 si.pdf (38827 bytes) si.dot (21067 bytes)
.sj 17 3 56 sj.pdf (24872 bytes) sj.dot (9379 bytes)
.sk 44 9 94 sk.pdf (43004 bytes) sk.dot (23033 bytes)
.sl 8 2 29 sl.pdf (17003 bytes) sl.dot (5999 bytes)
.sm 69 4 156 sm.pdf (64308 bytes) sm.dot (36130 bytes)
.sn 63 5 147 sn.pdf (60857 bytes) sn.dot (34363 bytes)
Gold star .so 1 5 5 so.pdf (6666 bytes) so.dot (412 bytes)
.sr 6 2 25 sr.pdf (15401 bytes) sr.dot (4702 bytes)
.st 91 5 225 st.pdf (92218 bytes) st.dot (53416 bytes)
.su 66 5 146 su.pdf (62479 bytes) su.dot (34950 bytes)
.sv 73 7 170 sv.pdf (69168 bytes) sv.dot (39130 bytes)
.sy 8 6 27 sy.pdf (16815 bytes) sy.dot (5387 bytes)
.sz 63 3 150 sz.pdf (62167 bytes) sz.dot (35704 bytes)
.tc 70 5 153 tc.pdf (65423 bytes) tc.dot (38077 bytes)
.td 60 3 139 td.pdf (59126 bytes) td.dot (32862 bytes)
Gold star .tel 1 10 10 tel.pdf (8043 bytes) tel.dot (870 bytes)
.tf 58 8 136 tf.pdf (57846 bytes) tf.dot (32493 bytes)
.tg 14 3 40 tg.pdf (21073 bytes) tg.dot (8261 bytes)
.th 70 6 150 th.pdf (64681 bytes) th.dot (36898 bytes)
.tj 63 5 152 tj.pdf (61848 bytes) tj.dot (35192 bytes)
.tk 2 7 11 tk.pdf (9836 bytes) tk.dot (1595 bytes)
.tl 68 9 180 tl.pdf (71119 bytes) tl.dot (40265 bytes)
.tm 20 7 57 tm.pdf (29229 bytes) tm.dot (12295 bytes)
.tn 63 5 150 tn.pdf (63745 bytes) tn.dot (35756 bytes)
.to 69 5 159 to.pdf (66288 bytes) to.dot (38023 bytes)
.tp 102 6 253 tp.pdf (102026 bytes) tp.dot (56950 bytes)
.tr 59 6 142 tr.pdf (58624 bytes) tr.dot (33143 bytes)
.travel 25 8 63 travel.pdf (34638 bytes) travel.dot (18268 bytes)
.tt 6 8 30 tt.pdf (17097 bytes) tt.dot (5116 bytes)
.tv 5 7 28 tv.pdf (15349 bytes) tv.dot (5035 bytes)
.tw 85 9 222 tw.pdf (87406 bytes) tw.dot (49629 bytes)
.tz 36 3 89 tz.pdf (38182 bytes) tz.dot (18853 bytes)
.ua 88 10 211 ua.pdf (85245 bytes) ua.dot (48483 bytes)
.ug 73 5 166 ug.pdf (68920 bytes) ug.dot (39921 bytes)
Silver star .uk 2 11 11 uk.pdf (10018 bytes) uk.dot (1787 bytes)
.us 3 8 11 us.pdf (10256 bytes) us.dot (2045 bytes)
.uy 67 6 156 uy.pdf (64842 bytes) uy.dot (36422 bytes)
Silver star .uz 2 6 6 uz.pdf (7121 bytes) uz.dot (582 bytes)
.va 139 9 317 va.pdf (128988 bytes) va.dot (72176 bytes)
.vc 16 6 23 vc.pdf (20801 bytes) vc.dot (11004 bytes)
.ve 68 5 173 ve.pdf (69382 bytes) ve.dot (38465 bytes)
.vg 70 5 153 vg.pdf (65286 bytes) vg.dot (38077 bytes)
.vi 70 6 157 vi.pdf (64887 bytes) vi.dot (37296 bytes)
.vn 59 7 143 vn.pdf (59482 bytes) vn.dot (33592 bytes)
.vu 8 5 28 vu.pdf (16312 bytes) vu.dot (5992 bytes)
.wf 58 8 136 wf.pdf (57843 bytes) wf.dot (32493 bytes)
Silver star .ws 2 6 6 ws.pdf (7980 bytes) ws.dot (957 bytes)
.xn--0zwm56d / .测试 21 3 44 xn--0zwm56d.pdf (28046 bytes) xn--0zwm56d.dot (14489 bytes)
.xn--11b5bs3a9aj6g / .परीक्षा 21 3 44 xn--11b5bs3a9aj6g.pdf (27987 bytes) xn--11b5bs3a9aj6g.dot (14513 bytes)
.xn--80akhbyknj4f / .испытание 21 3 44 xn--80akhbyknj4f.pdf (27638 bytes) xn--80akhbyknj4f.dot (14509 bytes)
.xn--9t4b11yi5a / .테스트 21 3 44 xn--9t4b11yi5a.pdf (27800 bytes) xn--9t4b11yi5a.dot (14501 bytes)
.xn--deba0ad / .טעסט 21 3 44 xn--deba0ad.pdf (27269 bytes) xn--deba0ad.dot (14489 bytes)
.xn--g6w251d / .測試 21 3 44 xn--g6w251d.pdf (28052 bytes) xn--g6w251d.dot (14489 bytes)
.xn--hgbk6aj7f53bba / .آزمایشی 21 3 44 xn--hgbk6aj7f53bba.pdf (27938 bytes) xn--hgbk6aj7f53bba.dot (14517 bytes)
.xn--hlcj6aya9esc7a / .பரிட்சை 21 3 44 xn--hlcj6aya9esc7a.pdf (27770 bytes) xn--hlcj6aya9esc7a.dot (14517 bytes)
.xn--jxalpdlp / .δοκιμή 21 3 44 xn--jxalpdlp.pdf (27360 bytes) xn--jxalpdlp.dot (14493 bytes)
.xn--kgbechtv / .إختبار 21 3 44 xn--kgbechtv.pdf (27276 bytes) xn--kgbechtv.dot (14493 bytes)
.xn--zckzah / .テスト 21 3 44 xn--zckzah.pdf (27262 bytes) xn--zckzah.dot (14485 bytes)
Silver star .ye 5 4 4 ye.pdf (8391 bytes) ye.dot (1481 bytes)
.yt 58 8 136 yt.pdf (57839 bytes) yt.dot (32493 bytes)
.yu 89 7 222 yu.pdf (89358 bytes) yu.dot (51383 bytes)
.za 127 7 274 za.pdf (114258 bytes) za.dot (65929 bytes)
.zm 132 5 285 zm.pdf (118568 bytes) zm.dot (68047 bytes)
.zw 139 7 294 zw.pdf (124364 bytes) zw.dot (70890 bytes)

Background

These graphs were generated from a snapshot of the DNS taken on June 10, 2009. The snapshot was taken using dnstrace (from the djbdns package), modified to trace multiple zones and transmit multiple queries in parallel and to do additional explicit NS queries. Running this tool sent a total of 85,189 DNS queries for 3467 different domain names to 2104 different DNS servers. I used a local copy of the root zone to avoid additional traffic to the global root servers.

The raw output was then processed by a Python script written with help from Bob Ippolito and then fed to graphviz to generate the PDF graphs linked from the table.

Caveats

The table above still marks a domain as red even if all of the name servers are managed by a single organization; e.g., .com depends directly on {a,b,c,d,e,f,g,h,i,j,k,l,m}.gtld-servers.net and transitively on {a,c,d,e,f,g,h,l}2.nstld.com, but all of these are managed by VeriSign. This is suboptimal, but arguably not really a trust issue. (I would like to award a bronze star to these zones; if anyone has suggestions on how to automatically measure the number of organizational dependencies for a zone, I would be grateful.)

The graphs don't distinguish where NS records come from; e.g., the .net name servers think zocalo.net's name servers are ns{,2,3,4}.zocalo.net, whereas ns{,2,3,4}.zocalo.net and ns{,2,3}.via.net think they're ns{,2,3}.via.net + ns4.zocalo.net. This means (under normal conditions) a cache will never think that all of ns{,2,3,4}.zocalo.net and ns{,2,3}.via.net are authoritative for zocalo.net at one time. Additionally, it would be harder to attack a DNS cache once taking control of ns{,2,3}.zocalo.net than any of the other name servers.

I currently don't check for any DNSSEC records. In theory, if the DNS cache handles DNSSEC validation and has appropriate trust anchors configured, then DNSSEC signatures could help to limit dependency graphs.

The number of name servers a zone transitively depends on does not exactly equal the amount of trust. E.g., b.ns13.net, ns3.nic.tm, ns4.icb.co.uk, ns4.nic.io, and ns4.nic.sh all resolve to the same IP address (202.181.96.60), so any graphs containing two or more of these names is slightly overstating the amount of trust. On the other hand, some name server names have multiple IP addresses and some IP addresses are load-balanced across multiple machines, so representing these instances with a single node is slightly understating the amount of trust.

Feedback

Please feel free to send comments and suggestions for improvements to matthew@dempsky.org.