diff options
author | Riccardo Spagni <ric@spagni.net> | 2015-04-02 11:16:18 +0200 |
---|---|---|
committer | Riccardo Spagni <ric@spagni.net> | 2015-04-02 11:16:18 +0200 |
commit | 1f49833d4fc449d54c95c3235b5c18523e6f8d69 (patch) | |
tree | ae027273609339b9b89e3e546552af7a7afb23e7 /external/unbound/contrib | |
parent | Merge pull request #248 (diff) | |
download | monero-1f49833d4fc449d54c95c3235b5c18523e6f8d69.tar.xz |
update unbound from upstream
Diffstat (limited to 'external/unbound/contrib')
-rw-r--r-- | external/unbound/contrib/README | 3 | ||||
-rw-r--r-- | external/unbound/contrib/create_unbound_ad_servers.sh | 2 | ||||
-rw-r--r-- | external/unbound/contrib/unbound_cache.cmd | 56 | ||||
-rw-r--r-- | external/unbound/contrib/unbound_cache.sh | 87 | ||||
-rw-r--r-- | external/unbound/contrib/unbound_cacti.tar.gz | bin | 73220 -> 73219 bytes | |||
-rwxr-xr-x | external/unbound/contrib/unbound_munin_ | 168 | ||||
-rw-r--r-- | external/unbound/contrib/unbound_smf22.tar.gz | bin | 0 -> 4578 bytes | |||
-rw-r--r-- | external/unbound/contrib/warmup.cmd | 161 | ||||
-rw-r--r-- | external/unbound/contrib/warmup.sh | 155 |
9 files changed, 448 insertions, 184 deletions
diff --git a/external/unbound/contrib/README b/external/unbound/contrib/README index 49dee02e5..34c8cc46a 100644 --- a/external/unbound/contrib/README +++ b/external/unbound/contrib/README @@ -29,4 +29,5 @@ distribution but may be helpful. works like the BIND feature (removes AAAA records unless AAAA-only domain). Useful for certain 'broken IPv6 default route' scenarios. Patch from Stephane Lapie for ASAHI Net. - +* unbound_smf22.tar.gz: Solaris SMF installation/removal scripts. + Contributed by Yuri Voinov. diff --git a/external/unbound/contrib/create_unbound_ad_servers.sh b/external/unbound/contrib/create_unbound_ad_servers.sh index c3b05c60c..d31f078b3 100644 --- a/external/unbound/contrib/create_unbound_ad_servers.sh +++ b/external/unbound/contrib/create_unbound_ad_servers.sh @@ -36,4 +36,4 @@ echo "Done." # the unbound_ad_servers file: # # include: $dst_dir/unbound_ad_servers -# +#
\ No newline at end of file diff --git a/external/unbound/contrib/unbound_cache.cmd b/external/unbound/contrib/unbound_cache.cmd index 0f0069388..532162b16 100644 --- a/external/unbound/contrib/unbound_cache.cmd +++ b/external/unbound/contrib/unbound_cache.cmd @@ -2,7 +2,7 @@ rem --------------------------------------------------------------
rem -- DNS cache save/load script
rem --
-rem -- Version 1.0
+rem -- Version 1.2
rem -- By Yuri Voinov (c) 2014
rem --------------------------------------------------------------
@@ -19,31 +19,42 @@ exit 1 :start
-set arg=%1
+rem arg1 - command (optional)
+rem arg2 - file name (optional)
+set arg1=%1
+set arg2=%2
-if /I "%arg%" == "-h" goto help
+if /I "%arg1%" == "-h" goto help
-if "%arg%" == "" (
+if "%arg1%" == "" (
echo Loading cache from %program_path%\%fname%
+dir /a %program_path%\%fname%
type %program_path%\%fname%|%uc% load_cache
goto end
)
-if /I "%arg%" == "-s" (
+if defined %arg2% (goto Not_Defined) else (goto Defined)
+
+rem If file not specified; use default dump file
+:Not_defined
+if /I "%arg1%" == "-s" (
echo Saving cache to %program_path%\%fname%
%uc% dump_cache>%program_path%\%fname%
+dir /a %program_path%\%fname%
echo ok
goto end
)
-if /I "%arg%" == "-l" (
+if /I "%arg1%" == "-l" (
echo Loading cache from %program_path%\%fname%
+dir /a %program_path%\%fname%
type %program_path%\%fname%|%uc% load_cache
goto end
)
-if /I "%arg%" == "-r" (
+if /I "%arg1%" == "-r" (
echo Saving cache to %program_path%\%fname%
+dir /a %program_path%\%fname%
%uc% dump_cache>%program_path%\%fname%
echo ok
echo Loading cache from %program_path%\%fname%
@@ -51,15 +62,44 @@ type %program_path%\%fname%|%uc% load_cache goto end
)
+rem If file name specified; use this filename
+:Defined
+if /I "%arg1%" == "-s" (
+echo Saving cache to %arg2%
+%uc% dump_cache>%arg2%
+dir /a %arg2%
+echo ok
+goto end
+)
+
+if /I "%arg1%" == "-l" (
+echo Loading cache from %arg2%
+dir /a %arg2%
+type %arg2%|%uc% load_cache
+goto end
+)
+
+if /I "%arg1%" == "-r" (
+echo Saving cache to %arg2%
+dir /a %arg2%
+%uc% dump_cache>%arg2%
+echo ok
+echo Loading cache from %arg2%
+type %arg2%|%uc% load_cache
+goto end
+)
+
:help
-echo Usage: unbound_cache.cmd [-s] or [-l] or [-r] or [-h]
+echo Usage: unbound_cache.cmd [-s] or [-l] or [-r] or [-h] [filename]
echo.
echo l - Load - default mode. Warming up Unbound DNS cache from saved file. cache-ttl must be high value.
echo s - Save - save Unbound DNS cache contents to plain file with domain names.
echo r - Reload - reloadind new cache entries and refresh existing cache
echo h - this screen.
+echo filename - file to save/load dumped cache. If not specified, %program_path%\%fname% will be used instead.
echo Note: Run without any arguments will be in default mode.
echo Also, unbound-control must be configured.
exit 1
:end
+exit 0
diff --git a/external/unbound/contrib/unbound_cache.sh b/external/unbound/contrib/unbound_cache.sh index 238d90e39..b3e876ba9 100644 --- a/external/unbound/contrib/unbound_cache.sh +++ b/external/unbound/contrib/unbound_cache.sh @@ -1,13 +1,13 @@ #!/sbin/sh -# + # -------------------------------------------------------------- # -- DNS cache save/load script # -- -# -- Version 1.0 +# -- Version 1.2 # -- By Yuri Voinov (c) 2006, 2014 # -------------------------------------------------------------- # -# ident "@(#)unbound_cache.sh 1.1 14/04/26 YV" +# ident "@(#)unbound_cache.sh 1.2 14/10/30 YV" # ############# @@ -27,9 +27,10 @@ BASENAME=`which basename` CAT=`which cat` CUT=`which cut` ECHO=`which echo` +EXPR=`which expr` GETOPT=`which getopt` ID=`which id` -PRINTF=`which printf` +LS=`which ls` ############### # Subroutines # @@ -38,12 +39,13 @@ PRINTF=`which printf` usage_note () { # Script usage note - $ECHO "Usage: `$BASENAME $0` [-s] or [-l] or [-r] or [-h]" - $ECHO + $ECHO "Usage: `$BASENAME $0` [-s] or [-l] or [-r] or [-h] [filename]" + $ECHO . $ECHO "l - Load - default mode. Warming up Unbound DNS cache from saved file. cache-ttl must be high value." $ECHO "s - Save - save Unbound DNS cache contents to plain file with domain names." $ECHO "r - Reload - reloadind new cache entries and refresh existing cache" $ECHO "h - this screen." + $ECHO "filename - file to save/load dumped cache. If not specified, $CONF/$FNAME will be used instead." $ECHO "Note: Run without any arguments will be in default mode." $ECHO " Also, unbound-control must be configured." exit 0 @@ -68,7 +70,12 @@ check_uc () check_saved_file () { - if [ ! -f "$CONF/$FNAME" ]; then + filename=$1 + if [ ! -z "$filename" -a ! -f "$filename" ]; then + $ECHO . + $ECHO "ERROR: File $filename does not exists. Save it first." + exit 1 + elif [ ! -f "$CONF/$FNAME" ]; then $ECHO . $ECHO "ERROR: File $CONF/$FNAME does not exists. Save it first." exit 1 @@ -78,24 +85,42 @@ check_saved_file () save_cache () { # Save unbound cache - $PRINTF "Saving cache in $CONF/$FNAME..." - $UC dump_cache>$CONF/$FNAME + filename=$1 + if [ -z "$filename" ]; then + $ECHO "Saving cache in $CONF/$FNAME..." + $UC dump_cache>$CONF/$FNAME + $LS -lh $CONF/$FNAME + else + $ECHO "Saving cache in $filename..." + $UC dump_cache>$filename + $LS -lh $filename + fi $ECHO "ok" } load_cache () { - # Load saved cache contents and warmup DNS cache - $PRINTF "Loading cache from saved $CONF/$FNAME..." - check_saved_file - $CAT $CONF/$FNAME|$UC load_cache + # Load saved cache contents and warmup cache + filename=$1 + if [ -z "$filename" ]; then + $ECHO "Loading cache from saved $CONF/$FNAME..." + $LS -lh $CONF/$FNAME + check_saved_file $filename + $CAT $CONF/$FNAME|$UC load_cache + else + $ECHO "Loading cache from saved $filename..." + $LS -lh $filename + check_saved_file $filename + $CAT $filename|$UC load_cache + fi } reload_cache () { # Reloading and refresh existing cache and saved dump - save_cache - load_cache + filename=$1 + save_cache $filename + load_cache $filename } ############## @@ -109,27 +134,41 @@ root_check check_uc # Check command-line arguments -if [ "x$1" = "x" ]; then -# If arguments list empty, load cache by default +if [ "x$*" = "x" ]; then + # If arguments list empty,load cache by default load_cache else - arg_list=$1 + arg_list=$* # Parse command line set -- `$GETOPT sSlLrRhH: $arg_list` || { usage_note 1>&2 } - # Read arguments + # Read arguments for i in $arg_list do case $i in - -s | -S) save_cache;; - -l | -L) load_cache;; - -r | -R) reload_cache;; + -s | -S) save="1";; + -l | -L) save="0";; + -r | -R) save="2";; -h | -H | \?) usage_note;; + *) shift + file=$1 + break;; esac - break + shift done + + # Remove trailing -- + shift `$EXPR $OPTIND - 1` +fi + +if [ "$save" = "1" ]; then + save_cache $file +elif [ "$save" = "0" ]; then + load_cache $file +elif [ "$save" = "2" ]; then + reload_cache $file fi -exit 0 +exit 0
\ No newline at end of file diff --git a/external/unbound/contrib/unbound_cacti.tar.gz b/external/unbound/contrib/unbound_cacti.tar.gz Binary files differindex cc29476c6..36bbdecd7 100644 --- a/external/unbound/contrib/unbound_cacti.tar.gz +++ b/external/unbound/contrib/unbound_cacti.tar.gz diff --git a/external/unbound/contrib/unbound_munin_ b/external/unbound/contrib/unbound_munin_ index 1f9f39a3e..69e9f3116 100755 --- a/external/unbound/contrib/unbound_munin_ +++ b/external/unbound/contrib/unbound_munin_ @@ -210,6 +210,7 @@ exist_config ( ) { if grep '^'$1'=' $state >/dev/null 2>&1; then echo "$mn.label $2" echo "$mn.min 0" + echo "$mn.type ABSOLUTE" fi } @@ -218,6 +219,7 @@ p_config ( ) { mn=`echo $1 | sed $ABBREV | tr . _` echo $mn.label "$2" echo $mn.min 0 + echo $mn.type $3 } if test "$1" = "config" ; then @@ -228,20 +230,21 @@ if test "$1" = "config" ; then hits) echo "graph_title Unbound DNS traffic and cache hits" echo "graph_args --base 1000 -l 0" - echo "graph_vlabel queries / second" + echo "graph_vlabel queries / \${graph_period}" + echo "graph_scale no" echo "graph_category DNS" for x in `grep "^thread[0-9][0-9]*\.num\.queries=" $state | sed -e 's/=.*//'`; do exist_config $x "queries handled by `basename $x .num.queries`" done - p_config "total.num.queries" "total queries from clients" - p_config "total.num.cachehits" "cache hits" - p_config "total.num.prefetch" "cache prefetch" - p_config "num.query.tcp" "TCP queries" - p_config "num.query.tcpout" "TCP out queries" - p_config "num.query.ipv6" "IPv6 queries" - p_config "unwanted.queries" "queries that failed acl" - p_config "unwanted.replies" "unwanted or unsolicited replies" + p_config "total.num.queries" "total queries from clients" "ABSOLUTE" + p_config "total.num.cachehits" "cache hits" "ABSOLUTE" + p_config "total.num.prefetch" "cache prefetch" "ABSOLUTE" + p_config "num.query.tcp" "TCP queries" "ABSOLUTE" + p_config "num.query.tcpout" "TCP out queries" "ABSOLUTE" + p_config "num.query.ipv6" "IPv6 queries" "ABSOLUTE" + p_config "unwanted.queries" "queries that failed acl" "ABSOLUTE" + p_config "unwanted.replies" "unwanted or unsolicited replies" "ABSOLUTE" echo "u_replies.warning $warn" echo "u_replies.critical $crit" echo "graph_info DNS queries to the recursive resolver. The unwanted replies could be innocent duplicate packets, late replies, or spoof threats." @@ -250,11 +253,12 @@ if test "$1" = "config" ; then echo "graph_title Unbound requestlist size" echo "graph_args --base 1000 -l 0" echo "graph_vlabel number of queries" + echo "graph_scale no" echo "graph_category DNS" - p_config "total.requestlist.avg" "Average size of queue on insert" - p_config "total.requestlist.max" "Max size of queue (in 5 min)" - p_config "total.requestlist.overwritten" "Number of queries replaced by new ones" - p_config "total.requestlist.exceeded" "Number of queries dropped due to lack of space" + p_config "total.requestlist.avg" "Average size of queue on insert" "GAUGE" + p_config "total.requestlist.max" "Max size of queue (in 5 min)" "GAUGE" + p_config "total.requestlist.overwritten" "Number of queries replaced by new ones" "GAUGE" + p_config "total.requestlist.exceeded" "Number of queries dropped due to lack of space" "GAUGE" echo "graph_info The queries that did not hit the cache and need recursion service take up space in the requestlist. If there are too many queries, first queries get overwritten, and at last resort dropped." ;; memory) @@ -262,128 +266,144 @@ if test "$1" = "config" ; then echo "graph_args --base 1024 -l 0" echo "graph_vlabel memory used in bytes" echo "graph_category DNS" - p_config "mem.total.sbrk" "Total memory" - p_config "mem.cache.rrset" "RRset cache memory" - p_config "mem.cache.message" "Message cache memory" - p_config "mem.mod.iterator" "Iterator module memory" - p_config "mem.mod.validator" "Validator module and key cache memory" - p_config "msg.cache.count" "msg cache count" - p_config "rrset.cache.count" "rrset cache count" - p_config "infra.cache.count" "infra cache count" - p_config "key.cache.count" "key cache count" + p_config "mem.total.sbrk" "Total memory" "GAUGE" + p_config "mem.cache.rrset" "RRset cache memory" "GAUGE" + p_config "mem.cache.message" "Message cache memory" "GAUGE" + p_config "mem.mod.iterator" "Iterator module memory" "GAUGE" + p_config "mem.mod.validator" "Validator module and key cache memory" "GAUGE" + p_config "msg.cache.count" "msg cache count" "GAUGE" + p_config "rrset.cache.count" "rrset cache count" "GAUGE" + p_config "infra.cache.count" "infra cache count" "GAUGE" + p_config "key.cache.count" "key cache count" "GAUGE" echo "graph_info The memory used by unbound." ;; by_type) echo "graph_title Unbound DNS queries by type" echo "graph_args --base 1000 -l 0" - echo "graph_vlabel queries / second" + echo "graph_vlabel queries / \${graph_period}" + echo "graph_scale no" echo "graph_category DNS" for x in `grep "^num.query.type" $state`; do nm=`echo $x | sed -e 's/=.*$//'` tp=`echo $nm | sed -e s/num.query.type.//` - p_config "$nm" "$tp" + p_config "$nm" "$tp" "ABSOLUTE" done echo "graph_info queries by DNS RR type queried for" ;; by_class) echo "graph_title Unbound DNS queries by class" echo "graph_args --base 1000 -l 0" - echo "graph_vlabel queries / second" + echo "graph_vlabel queries / \${graph_period}" + echo "graph_scale no" echo "graph_category DNS" for x in `grep "^num.query.class" $state`; do nm=`echo $x | sed -e 's/=.*$//'` tp=`echo $nm | sed -e s/num.query.class.//` - p_config "$nm" "$tp" + p_config "$nm" "$tp" "ABSOLUTE" done echo "graph_info queries by DNS RR class queried for." ;; by_opcode) echo "graph_title Unbound DNS queries by opcode" echo "graph_args --base 1000 -l 0" - echo "graph_vlabel queries / second" + echo "graph_vlabel queries / \${graph_period}" + echo "graph_scale no" echo "graph_category DNS" for x in `grep "^num.query.opcode" $state`; do nm=`echo $x | sed -e 's/=.*$//'` tp=`echo $nm | sed -e s/num.query.opcode.//` - p_config "$nm" "$tp" + p_config "$nm" "$tp" "ABSOLUTE" done echo "graph_info queries by opcode in the query packet." ;; by_rcode) echo "graph_title Unbound DNS answers by return code" echo "graph_args --base 1000 -l 0" - echo "graph_vlabel answer packets / second" + echo "graph_vlabel answer packets / \${graph_period}" + echo "graph_scale no" echo "graph_category DNS" for x in `grep "^num.answer.rcode" $state`; do nm=`echo $x | sed -e 's/=.*$//'` tp=`echo $nm | sed -e s/num.answer.rcode.//` - p_config "$nm" "$tp" + p_config "$nm" "$tp" "ABSOLUTE" done - p_config "num.answer.secure" "answer secure" - p_config "num.answer.bogus" "answer bogus" - p_config "num.rrset.bogus" "num rrsets marked bogus" - echo "graph_info answers sorted by return value. rrsets bogus is the number of rrsets marked bogus per second by the validator" + p_config "num.answer.secure" "answer secure" "ABSOLUTE" + p_config "num.answer.bogus" "answer bogus" "ABSOLUTE" + p_config "num.rrset.bogus" "num rrsets marked bogus" "ABSOLUTE" + echo "graph_info answers sorted by return value. rrsets bogus is the number of rrsets marked bogus per \${graph_period} by the validator" ;; by_flags) echo "graph_title Unbound DNS incoming queries by flags" echo "graph_args --base 1000 -l 0" - echo "graph_vlabel queries / second" + echo "graph_vlabel queries / \${graph_period}" + echo "graph_scale no" echo "graph_category DNS" - p_config "num.query.flags.QR" "QR (query reply) flag" - p_config "num.query.flags.AA" "AA (auth answer) flag" - p_config "num.query.flags.TC" "TC (truncated) flag" - p_config "num.query.flags.RD" "RD (recursion desired) flag" - p_config "num.query.flags.RA" "RA (rec avail) flag" - p_config "num.query.flags.Z" "Z (zero) flag" - p_config "num.query.flags.AD" "AD (auth data) flag" - p_config "num.query.flags.CD" "CD (check disabled) flag" - p_config "num.query.edns.present" "EDNS OPT present" - p_config "num.query.edns.DO" "DO (DNSSEC OK) flag" + p_config "num.query.flags.QR" "QR (query reply) flag" "ABSOLUTE" + p_config "num.query.flags.AA" "AA (auth answer) flag" "ABSOLUTE" + p_config "num.query.flags.TC" "TC (truncated) flag" "ABSOLUTE" + p_config "num.query.flags.RD" "RD (recursion desired) flag" "ABSOLUTE" + p_config "num.query.flags.RA" "RA (rec avail) flag" "ABSOLUTE" + p_config "num.query.flags.Z" "Z (zero) flag" "ABSOLUTE" + p_config "num.query.flags.AD" "AD (auth data) flag" "ABSOLUTE" + p_config "num.query.flags.CD" "CD (check disabled) flag" "ABSOLUTE" + p_config "num.query.edns.present" "EDNS OPT present" "ABSOLUTE" + p_config "num.query.edns.DO" "DO (DNSSEC OK) flag" "ABSOLUTE" echo "graph_info This graphs plots the flags inside incoming queries. For example, if QR, AA, TC, RA, Z flags are set, the query can be rejected. RD, AD, CD and DO are legitimately set by some software." ;; histogram) echo "graph_title Unbound DNS histogram of reply time" echo "graph_args --base 1000 -l 0" - echo "graph_vlabel queries / second" + echo "graph_vlabel queries / \${graph_period}" + echo "graph_scale no" echo "graph_category DNS" echo hcache.label "cache hits" echo hcache.min 0 + echo hcache.type ABSOLUTE echo hcache.draw AREA echo hcache.colour 999999 echo h64ms.label "0 msec - 66 msec" echo h64ms.min 0 + echo h64ms.type ABSOLUTE echo h64ms.draw STACK echo h64ms.colour 0000FF echo h128ms.label "66 msec - 131 msec" echo h128ms.min 0 + echo h128ms.type ABSOLUTE echo h128ms.colour 1F00DF echo h128ms.draw STACK echo h256ms.label "131 msec - 262 msec" echo h256ms.min 0 + echo h256ms.type ABSOLUTE echo h256ms.draw STACK echo h256ms.colour 3F00BF echo h512ms.label "262 msec - 524 msec" echo h512ms.min 0 + echo h512ms.type ABSOLUTE echo h512ms.draw STACK echo h512ms.colour 5F009F echo h1s.label "524 msec - 1 sec" echo h1s.min 0 + echo h1s.type ABSOLUTE echo h1s.draw STACK echo h1s.colour 7F007F echo h2s.label "1 sec - 2 sec" echo h2s.min 0 + echo h2s.type ABSOLUTE echo h2s.draw STACK echo h2s.colour 9F005F echo h4s.label "2 sec - 4 sec" echo h4s.min 0 + echo h4s.type ABSOLUTE echo h4s.draw STACK echo h4s.colour BF003F echo h8s.label "4 sec - 8 sec" echo h8s.min 0 + echo h8s.type ABSOLUTE echo h8s.draw STACK echo h8s.colour DF001F echo h16s.label "8 sec - ..." echo h16s.min 0 + echo h16s.type ABSOLUTE echo h16s.draw STACK echo h16s.colour FF0000 echo "graph_info Histogram of the reply times for queries." @@ -404,27 +424,21 @@ if test $value = 0 || test $value = "0.000000"; then fi elapsed="$value" -# print value for $1 / elapsed -print_qps ( ) { +# print value for $1 +print_value ( ) { mn=`echo $1 | sed $ABBREV | tr . _` get_value $1 - echo "$mn.value" `echo scale=6';' $value / $elapsed | bc ` + echo "$mn.value" $value } -# print qps if line already found in $2 -print_qps_line ( ) { +# print value if line already found in $2 +print_value_line ( ) { mn=`echo $1 | sed $ABBREV | tr . _` value="`echo $2 | sed -e 's/^.*=//'`" - echo "$mn.value" `echo scale=6';' $value / $elapsed | bc ` -} - -# print value for $1 -print_value ( ) { - mn=`echo $1 | sed $ABBREV | tr . _` - get_value $1 echo "$mn.value" $value } + case $id in hits) for x in `grep "^thread[0-9][0-9]*\.num\.queries=" $state | @@ -433,7 +447,7 @@ hits) num.query.tcpout num.query.ipv6 unwanted.queries \ unwanted.replies; do if grep "^"$x"=" $state >/dev/null 2>&1; then - print_qps $x + print_value $x fi done ;; @@ -467,38 +481,38 @@ memory) by_type) for x in `grep "^num.query.type" $state`; do nm=`echo $x | sed -e 's/=.*$//'` - print_qps_line $nm $x + print_value_line $nm $x done ;; by_class) for x in `grep "^num.query.class" $state`; do nm=`echo $x | sed -e 's/=.*$//'` - print_qps_line $nm $x + print_value_line $nm $x done ;; by_opcode) for x in `grep "^num.query.opcode" $state`; do nm=`echo $x | sed -e 's/=.*$//'` - print_qps_line $nm $x + print_value_line $nm $x done ;; by_rcode) for x in `grep "^num.answer.rcode" $state`; do nm=`echo $x | sed -e 's/=.*$//'` - print_qps_line $nm $x + print_value_line $nm $x done - print_qps "num.answer.secure" - print_qps "num.answer.bogus" - print_qps "num.rrset.bogus" + print_value "num.answer.secure" + print_value "num.answer.bogus" + print_value "num.rrset.bogus" ;; by_flags) for x in num.query.flags.QR num.query.flags.AA num.query.flags.TC num.query.flags.RD num.query.flags.RA num.query.flags.Z num.query.flags.AD num.query.flags.CD num.query.edns.present num.query.edns.DO; do - print_qps $x + print_value $x done ;; histogram) get_value total.num.cachehits - echo hcache.value `echo scale=6';' $value / $elapsed | bc ` + echo hcache.value $value r=0 for x in histogram.000000.000000.to.000000.000001 \ histogram.000000.000001.to.000000.000002 \ @@ -520,21 +534,21 @@ histogram) get_value $x r=`expr $r + $value` done - echo h64ms.value `echo scale=6';' $r / $elapsed | bc ` + echo h64ms.value $r get_value histogram.000000.065536.to.000000.131072 - echo h128ms.value `echo scale=6';' $value / $elapsed | bc ` + echo h128ms.value $value get_value histogram.000000.131072.to.000000.262144 - echo h256ms.value `echo scale=6';' $value / $elapsed | bc ` + echo h256ms.value $value get_value histogram.000000.262144.to.000000.524288 - echo h512ms.value `echo scale=6';' $value / $elapsed | bc ` + echo h512ms.value $value get_value histogram.000000.524288.to.000001.000000 - echo h1s.value `echo scale=6';' $value / $elapsed | bc ` + echo h1s.value $value get_value histogram.000001.000000.to.000002.000000 - echo h2s.value `echo scale=6';' $value / $elapsed | bc ` + echo h2s.value $value get_value histogram.000002.000000.to.000004.000000 - echo h4s.value `echo scale=6';' $value / $elapsed | bc ` + echo h4s.value $value get_value histogram.000004.000000.to.000008.000000 - echo h8s.value `echo scale=6';' $value / $elapsed | bc ` + echo h8s.value $value r=0 for x in histogram.000008.000000.to.000016.000000 \ histogram.000016.000000.to.000032.000000 \ @@ -555,6 +569,6 @@ histogram) get_value $x r=`expr $r + $value` done - echo h16s.value `echo scale=6';' $r / $elapsed | bc ` + echo h16s.value $r ;; esac diff --git a/external/unbound/contrib/unbound_smf22.tar.gz b/external/unbound/contrib/unbound_smf22.tar.gz Binary files differnew file mode 100644 index 000000000..e4c51c3dc --- /dev/null +++ b/external/unbound/contrib/unbound_smf22.tar.gz diff --git a/external/unbound/contrib/warmup.cmd b/external/unbound/contrib/warmup.cmd index d7df01827..b3895a86f 100644 --- a/external/unbound/contrib/warmup.cmd +++ b/external/unbound/contrib/warmup.cmd @@ -1,68 +1,153 @@ @echo off
rem --------------------------------------------------------------
-rem -- Warm up DNS cache script by your own MRU domains
+rem -- Warm up DNS cache script by your own MRU domains or from
+rem -- file when it specified as script argument.
rem --
-rem -- Version 1.0
+rem -- Version 1.1
rem -- By Yuri Voinov (c) 2014
rem --------------------------------------------------------------
+rem DNS host address
+set address="127.0.0.1"
+
rem Check dig installed
for /f "delims=" %%a in ('where dig') do @set dig=%%a
if /I "%dig%"=="" echo Dig not found. If installed, add path to PATH environment variable. & exit 1
echo Dig found: %dig%
-echo Warming up cache by MRU domains...
-rem dig -f my_domains 1>nul 2>nul
-rem echo Done.
+set arg=%1%
+
+if defined %arg% (goto builtin) else (goto from_file)
+:builtin
+echo Warming up cache by MRU domains...
for %%a in (
-mail.ru
-my.mail.ru
-mra.mail.ru
+2gis.ru
+admir.kz
+adobe.com
agent.mail.ru
-news.mail.ru
-icq.com
-lenta.ru
-gazeta.ru
-peerbet.ru
-www.opennet.ru
-snob.ru
+aimp.ru
+akamai.com
+akamai.net
+almaty.tele2.kz
+aol.com
+apple.com
+arin.com
artlebedev.ru
-mail.google.com
-translate.google.com
-drive.google.com
-google.com
-google.kz
-drive.google.com
+auto.mail.ru
+beeline.kz
+bing.com
blogspot.com
+comodo.com
+dnscrypt.org
+drive.google.com
+drive.mail.ru
+facebook.com
farmanager.com
+fb.com
+firefox.com
forum.farmanager.com
+gazeta.ru
+getsharex.com
+gismeteo.ru
+google.com
+google.kz
+google.ru
+googlevideo.com
+goto.kz
+iana.org
+icq.com
+imap.mail.ru
+instagram.com
+intel.com
+irr.kz
+java.com
+kaspersky.com
+kaspersky.ru
+kcell.kz
+krisha.kz
+lady.mail.ru
+lenta.ru
+libreoffice.org
+linkedin.com
+livejournal.com
+mail.google.com
+mail.ru
+microsoft.com
+mozilla.org
+mra.mail.ru
+munin-monitoring.org
+my.mail.ru
+news.bbcimg.co.uk
+news.mail.ru
+newsimg.bbc.net.uk
+nvidia.com
+odnoklassniki.ru
+ok.ru
+opencsw.org
+opendns.com
+opendns.org
+opennet.ru
+opera.com
+oracle.com
+peerbet.ru
+piriform.com
plugring.farmanager.com
+privoxy.org
+qip.ru
+raidcall.com
+rambler.ru
+reddit.com
+ru.wikipedia.org
+shallalist.de
+skype.com
+snob.ru
+squid-cache.org
+squidclamav.darold.net
+squidguard.org
+ssl.comodo.com
+ssl.verisign.com
symantec.com
symantecliveupdate.com
-shalla.de
-torstatus.blutmagie.de
+tele2.kz
+tengrinews.kz
+thunderbird.com
torproject.org
-dnscrypt.org
+torstatus.blutmagie.de
+translate.google.com
unbound.net
-getsharex.com
-skype.com
+verisign.com
+vk.com
+vk.me
+vk.ru
+vkontakte.com
+vkontakte.ru
vlc.org
-aimp.ru
-mozilla.org
-libreoffice.org
-piriform.com
-raidcall.com
-nvidia.com
-intel.com
-microsoft.com
+watsapp.net
+weather.mail.ru
windowsupdate.com
-ru.wikipedia.org
+www.baidu.com
www.bbc.co.uk
-tengrinews.kz
-) do "%dig%" %%a 1>nul 2>nul
+www.internic.net
+www.opennet.ru
+www.topgear.com
+ya.ru
+yahoo.com
+yandex.com
+yandex.ru
+youtube.com
+ytimg.com
+) do "%dig%" %%a @%address% 1>nul 2>nul
+goto end
+:from_file
+echo Warming up cache from %1% file...
+%dig% -f %arg% @%address% 1>nul 2>nul
+
+:end
echo Saving cache...
-unbound_cache.cmd -s
+if exist unbound_cache.cmd unbound_cache.cmd -s
echo Done.
+
+exit 0
\ No newline at end of file diff --git a/external/unbound/contrib/warmup.sh b/external/unbound/contrib/warmup.sh index 820f019d7..b4d9135a6 100644 --- a/external/unbound/contrib/warmup.sh +++ b/external/unbound/contrib/warmup.sh @@ -1,65 +1,150 @@ #!/bin/sh # -------------------------------------------------------------- -# -- Warm up DNS cache script by your own MRU domains +# -- Warm up DNS cache script by your own MRU domains or from +# -- file when it specified as script argument. # -- -# -- Version 1.0 +# -- Version 1.1 # -- By Yuri Voinov (c) 2014 # -------------------------------------------------------------- +# Default DNS host address +address="127.0.0.1" + +cat=`which cat` dig=`which dig` +if [ -z "$1" ]; then echo "Warming up cache by MRU domains..." -$dig -f - >/dev/null 2>&1 <<EOT -mail.ru -my.mail.ru -mra.mail.ru +$dig -f - @$address >/dev/null 2>&1 <<EOT +2gis.ru +admir.kz +adobe.com agent.mail.ru -news.mail.ru -icq.com -lenta.ru -gazeta.ru -peerbet.ru -www.opennet.ru -snob.ru +aimp.ru +akamai.com +akamai.net +almaty.tele2.kz +aol.com +apple.com +arin.com artlebedev.ru -mail.google.com -translate.google.com -drive.google.com -google.com -google.kz -drive.google.com +auto.mail.ru +beeline.kz +bing.com blogspot.com +clamav.net +comodo.com +dnscrypt.org +drive.google.com +drive.mail.ru +facebook.com farmanager.com +fb.com +firefox.com forum.farmanager.com +gazeta.ru +getsharex.com +gismeteo.ru +google.com +google.kz +google.ru +googlevideo.com +goto.kz +iana.org +icq.com +imap.mail.ru +instagram.com +instagram.com +intel.com +irr.kz +java.com +kaspersky.com +kaspersky.ru +kcell.kz +krisha.kz +lady.mail.ru +lenta.ru +libreoffice.org +linkedin.com +livejournal.com +mail.google.com +mail.ru +microsoft.com +mozilla.org +mra.mail.ru +munin-monitoring.org +my.mail.ru +news.bbcimg.co.uk +news.mail.ru +newsimg.bbc.net.uk +nvidia.com +odnoklassniki.ru +ok.ru +opencsw.org +opendns.com +opendns.org +opennet.ru +opera.com +oracle.com +peerbet.ru +piriform.com plugring.farmanager.com +privoxy.org +qip.ru +raidcall.com +rambler.ru +reddit.com +ru.wikipedia.org +shallalist.de +skype.com +snob.ru +squid-cache.org +squidclamav.darold.net +squidguard.org +ssl.comodo.com +ssl.verisign.com symantec.com symantecliveupdate.com -shalla.de -torstatus.blutmagie.de +tele2.kz +tengrinews.kz +thunderbird.com torproject.org -dnscrypt.org +torstatus.blutmagie.de +translate.google.com unbound.net -getsharex.com -skype.com +verisign.com +vk.com +vk.me +vk.ru +vkontakte.com +vkontakte.ru vlc.org -aimp.ru -mozilla.org -libreoffice.org -piriform.com -raidcall.com -nvidia.com -intel.com -microsoft.com +watsapp.net +weather.mail.ru windowsupdate.com -ru.wikipedia.org +www.baidu.com www.bbc.co.uk -tengrinews.kz +www.internic.net +www.opennet.ru +www.topgear.com +ya.ru +yahoo.com +yandex.com +yandex.ru +youtube.com +ytimg.com EOT +else + echo "Warming up cache from $1 file..." + $cat $1 | $dig -f - @$address >/dev/null 2>&1 +fi + echo "Done." echo "Saving cache..." -/usr/local/bin/unbound_cache.sh -s +script=`which unbound_cache.sh` +[ -f "$script" ] && $script -s echo "Done." exit 0 |