#!/bin/rc rfork en aserver=a.root-servers.net letters=(a b c d e f g h i j k l m) fn fatal { echo $*>[1=2] exit fatal } fn get{ ndb/dnsdebug @$aserver $* | awk ' $1=="answer" && $(NF-2) == "negative" {next} $1=="answer" {printf "dom=%s %s=%s\n", $2, $(NF-1), $NF} ' } aserver = `{get a.root-servers.net|sed 's/.*=//g'} if(~ $#aserver 0) fatal cant find a.root-servers.net { echo '#' echo '# entries defining the dns root. these will be overridden by any' echo '# authentic info obtained from the root.' echo '#' echo 'dom=' for(letter in $letters) echo ' ns='^$letter^'.root-servers.net' for(letter in $letters) get $letter^.root-servers.net ip { for(letter in $letters){ get $letter^.root-servers.net ipv6 } } | sed 's/^/# /g' }