12 changed files with 1807 additions and 0 deletions
@ -0,0 +1,434 @@ |
|||
<!-- Generated by pkgdown: do not edit by hand --> |
|||
<!DOCTYPE html> |
|||
<html> |
|||
<head> |
|||
<meta charset="utf-8"> |
|||
<meta http-equiv="X-UA-Compatible" content="IE=edge"> |
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|||
|
|||
<title>Home. gdns</title> |
|||
|
|||
<!-- jquery --> |
|||
<script src="https://code.jquery.com/jquery-3.1.0.min.js" integrity="sha384-nrOSfDHtoPMzJHjVTdCopGqIqeYETSXhZDFyniQ8ZHcVy08QesyHcnOUpMpqnmWq" crossorigin="anonymous"></script> |
|||
|
|||
<!-- Bootstrap --> |
|||
|
|||
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> |
|||
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> |
|||
|
|||
<!-- Font Awesome icons --> |
|||
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css" rel="stylesheet" integrity="sha384-T8Gy5hrqNKT+hzMclPo118YTQO6cYprQmhrYwIiQ/3axmI1hQomh7Ud2hPOy8SP1" crossorigin="anonymous"> |
|||
|
|||
|
|||
<!-- pkgdown --> |
|||
<link href="pkgdown.css" rel="stylesheet"> |
|||
<script src="pkgdown.js"></script> |
|||
|
|||
<!-- mathjax --> |
|||
<script src='https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML'></script> |
|||
|
|||
<!--[if lt IE 9]> |
|||
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script> |
|||
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> |
|||
<![endif]--> |
|||
</head> |
|||
|
|||
<body> |
|||
<div class="container"> |
|||
<header> |
|||
|
|||
<div class="navbar navbar-default navbar-fixed-top" role="navigation"> |
|||
<div class="container"> |
|||
<div class="navbar-header"> |
|||
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar"> |
|||
<span class="icon-bar"></span> |
|||
<span class="icon-bar"></span> |
|||
<span class="icon-bar"></span> |
|||
</button> |
|||
<a class="navbar-brand" href="index.html">gdns</a> |
|||
</div> |
|||
<div id="navbar" class="navbar-collapse collapse"> |
|||
<ul class="nav navbar-nav"> |
|||
<li> |
|||
<a href="index.html">Home</a> |
|||
</li> |
|||
<li> |
|||
<a href="reference/index.html">Reference</a> |
|||
</li> |
|||
<li> |
|||
<a href="news/index.html">News</a> |
|||
</li> |
|||
</ul> |
|||
<ul class="nav navbar-nav navbar-right"> |
|||
|
|||
</ul> |
|||
</div><!--/.nav-collapse --> |
|||
</div><!--/.container --> |
|||
</div><!--/.navbar --> |
|||
|
|||
</header> |
|||
|
|||
<div class="row"> |
|||
<div class="col-md-9"> |
|||
|
|||
<p><a href="https://travis-ci.org/hrbrmstr/gdns"><img src="https://travis-ci.org/hrbrmstr/gdns.svg?branch=master" alt="Travis-CI Build Status"></a></p> |
|||
<p><code>gdns</code> : Tools to work with the Google DNS over HTTPS API</p> |
|||
<p>Traditional DNS queries and responses are sent over UDP or TCP without encryption. This is vulnerable to eavesdropping and spoofing (including DNS-based Internet filtering). Responses from recursive resolvers to clients are the most vulnerable to undesired or malicious changes, while communications between recursive resolvers and authoritative nameservers often incorporate additional protection.</p> |
|||
<p>To address this problem, Google Public DNS offers DNS resolution over an encrypted HTTPS connection. DNS-over-HTTPS greatly enhances privacy and security between a client and a recursive resolver, and complements DNSSEC to provide end-to-end authenticated DNS lookups.</p> |
|||
<p>More info at <a href="https://developers.google.com/speed/public-dns/docs/dns-over-https" class="uri">https://developers.google.com/speed/public-dns/docs/dns-over-https</a>.</p> |
|||
<p>The following functions are implemented:</p> |
|||
<ul> |
|||
<li> |
|||
<code>bulk_query</code>: Vectorized query, returning only answers in a data frame</li> |
|||
<li> |
|||
<code>has_spf</code>: Test for whether a DNS TXT record is an SPF record</li> |
|||
<li> |
|||
<code>is_hard_fail</code>: SPF “all” type test</li> |
|||
<li> |
|||
<code>is_soft_fail</code>: SPF “all” type test</li> |
|||
<li> |
|||
<code>passes_all</code>: SPF “all” type test</li> |
|||
<li> |
|||
<code>query</code>: Perform DNS over HTTPS queries using Google</li> |
|||
<li> |
|||
<code>spf_exists</code>: SPF field extraction functions</li> |
|||
<li> |
|||
<code>spf_includes</code>: SPF field extraction functions</li> |
|||
<li> |
|||
<code>spf_ipv4s</code>: SPF field extraction functions</li> |
|||
<li> |
|||
<code>spf_ipv6s</code>: SPF field extraction functions</li> |
|||
<li> |
|||
<code>spf_ptrs</code>: SPF field extraction functions</li> |
|||
<li> |
|||
<code>split_spf</code>: Split out all SPF records in a domain’s TXT record</li> |
|||
</ul> |
|||
<h3 id="installation">Installation</h3> |
|||
<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r">devtools::<span class="kw">install_github</span>(<span class="st">"hrbrmstr/gdns"</span>)</code></pre></div> |
|||
<h3 id="usage">Usage</h3> |
|||
<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">library</span>(gdns) |
|||
|
|||
<span class="co"># current verison</span> |
|||
<span class="kw">packageVersion</span>(<span class="st">"gdns"</span>) |
|||
<span class="co">#> [1] '0.2.0.9000'</span> |
|||
|
|||
<span class="kw"><a href="reference/query.html">query</a></span>(<span class="st">"rud.is"</span>) |
|||
<span class="co">#> $Status</span> |
|||
<span class="co">#> [1] 0</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $TC</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $RD</span> |
|||
<span class="co">#> [1] TRUE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $RA</span> |
|||
<span class="co">#> [1] TRUE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $AD</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $CD</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Question</span> |
|||
<span class="co">#> name type</span> |
|||
<span class="co">#> 1 rud.is. 1</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Answer</span> |
|||
<span class="co">#> name type TTL data</span> |
|||
<span class="co">#> 1 rud.is. 1 3599 104.236.112.222</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Additional</span> |
|||
<span class="co">#> list()</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $edns_client_subnet</span> |
|||
<span class="co">#> [1] "0.0.0.0/0"</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Comment</span> |
|||
<span class="co">#> [1] "Response from dns.mwebdns.net.(84.246.124.75)"</span> |
|||
|
|||
<span class="kw"><a href="reference/query.html">query</a></span>(<span class="st">"example.com"</span>, <span class="st">"255"</span>) <span class="co"># "ANY" query</span> |
|||
<span class="co">#> $Status</span> |
|||
<span class="co">#> [1] 0</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $TC</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $RD</span> |
|||
<span class="co">#> [1] TRUE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $RA</span> |
|||
<span class="co">#> [1] TRUE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $AD</span> |
|||
<span class="co">#> [1] TRUE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $CD</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Question</span> |
|||
<span class="co">#> name type</span> |
|||
<span class="co">#> 1 example.com. 255</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Answer</span> |
|||
<span class="co">#> name type TTL</span> |
|||
<span class="co">#> 1 example.com. 6 3599</span> |
|||
<span class="co">#> 2 example.com. 46 21599</span> |
|||
<span class="co">#> 3 example.com. 46 21599</span> |
|||
<span class="co">#> 4 example.com. 46 3599</span> |
|||
<span class="co">#> 5 example.com. 46 59</span> |
|||
<span class="co">#> 6 example.com. 46 21599</span> |
|||
<span class="co">#> 7 example.com. 46 3599</span> |
|||
<span class="co">#> 8 example.com. 46 3599</span> |
|||
<span class="co">#> 9 example.com. 46 3599</span> |
|||
<span class="co">#> 10 example.com. 47 3599</span> |
|||
<span class="co">#> 11 example.com. 2 21599</span> |
|||
<span class="co">#> 12 example.com. 2 21599</span> |
|||
<span class="co">#> 13 example.com. 28 21599</span> |
|||
<span class="co">#> 14 example.com. 1 21599</span> |
|||
<span class="co">#> 15 example.com. 16 59</span> |
|||
<span class="co">#> 16 example.com. 16 59</span> |
|||
<span class="co">#> 17 example.com. 48 3599</span> |
|||
<span class="co">#> 18 example.com. 48 3599</span> |
|||
<span class="co">#> 19 example.com. 48 3599</span> |
|||
<span class="co">#> data</span> |
|||
<span class="co">#> 1 sns.dns.icann.org. noc.dns.icann.org. 2015082662 7200 3600 1209600 3600</span> |
|||
<span class="co">#> 2 a 8 2 86400 1476095331 1474297785 1704 example.com. OnhJa3/aHkvePBvBME3nlZrkU/rdenyaquFgSYI/wKPq2/ZJVZGhv0TVBMJ5l6GZujqnyBfq9cvvb88//koi17oNjR5JEv2cv4rLT5pud3VhQdVrHD7fU8BV/YnCpP3ikXJMgjf6sAhgL7FZKLtpv7cFXnqznfRCTZ3HKkpBtAB0ZZw=</span> |
|||
<span class="co">#> 3 ns 8 2 86400 1476218628 1474362585 1704 example.com. dxPw4KtqLRMR/P1MB7umTClO/Tgf5X2ukJApKd133OMPhsy7c2N3QIxW4TLxZnCezUewDE1D86HBnGi1kGw4pN4W83lI37L6pTjIkDUtrc1acISOwg9Q9JM74On9/qKTGpTi7aSGVA5t4biLKqPm00a1Yu/VNPOxeLQPyYNjUYspNZ8=</span> |
|||
<span class="co">#> 4 soa 8 2 3600 1476508736 1474722585 1704 example.com. rHojLwiWn5xVU8noy1se7gRjiNI6GJdDcxwO1GU1qUs3Un4y7LyENjrK8qOv2z6EhblBOhPnrgnNMzEPPH3w+5azpU6xAH+jJHO4tExj4Pc3zzQ1sfFx1k8xWPfJjiWnUtUsk19y8vVqHvLXltvVItXlCClzljA0XyNUi1fvYjHbQxI=</span> |
|||
<span class="co">#> 5 txt 8 2 60 1476051975 1474218584 1704 example.com. FBZiE56Ux4VY5AMVtgitLIBWi+UteNSFh4BWwJksVRRt/7OoH7iD6h4UDqP8rNbk9qvXmRo4Ce2vROCbNkdTy/IDEoKo+Urfm69TuI2UTbl/nnQ2UtfMIEC83yywYRWdra5BPkt67SQhHSc4N7QHblABFbm2jPuu2+uOqaRCpfeoWYo=</span> |
|||
<span class="co">#> 6 aaaa 8 2 86400 1475967038 1474146584 1704 example.com. ZQgPaEBxSxHCPhOES76xksqOVYSRtNIieIwTwIo4Oceq0NGzjOyI+8wrgs79QHqs4e5SRe67hVX2rSaJ9Q167+TuQz57ZtyqeOZ+x+cgULyT1Q+8N0ZJlHpZS4i2VfR1xT+quG+0m9wtye8wA3Hl2mWPyTjtsH7mjoS7/U/ZQMJwi44=</span> |
|||
<span class="co">#> 7 nsec 8 2 3600 1475694918 1473887384 1704 example.com. XTCfotH8+cSDgNrFnCNWt4lx64yTnVzwOMZsFgynNSGS5LzY0VfRl7UvTH2WDVzdsIHgKpPBOUwv/DvjNhAMzUgHFlaK/A+U1aFa16/YQkqkIqqfnCA4EgBdhIK4FM3dSIVcpaj3PhGFKvMG4RBvoMAWLRXE3gKf3306CJzX1sfKdsA=</span> |
|||
<span class="co">#> 8 dnskey 8 2 3600 1476561735 1474722585 31406 example.com. Oup7snCR/5iUmTuGyHfCfFCisTeqaJ8RHD6aE9wZQR2CCkKZHXO9dzfUL1gA6T35p4T0XeM+TMlv1uZhX157RnanPwyZluancmm5cNz5ub0vG7G/O4DxnSoLmATYoBJ7Ub9Ul4iWFUE7nvyJ23X2MhX6XTiplXYPnztiem6rJLV84JiemoKtvapWchRhFi4w4Y+BdjHfY7IRERjQYNhVuaus5+EeppIoot9srsj2suXePGC7dE0R8z9K/BTYvQi76kBlJzzF9fNNy5JvyZPEUpXATuRD7KfxBsWHaFajOnYOb1eDAL/C0H3hhjVBov2Pexp7YDIsJzIa2g8850LruQ==</span> |
|||
<span class="co">#> 9 dnskey 8 2 3600 1476561735 1474722585 45620 example.com. f+aO6V+QKA4XgTC0Vqow59jBP/NlX6f7EEbaoXts0lp7Vaj/DBrhnS/sT4BbJb3VK1MvuPmNre5t0eyOeNCjbjrwIM2uf41GFuBI0AFxQx7o2PIdf1vrXsDnUGsZrMkYMv4gr802S7MXsvMdMN5cM0AA5Zol888sLP1yrHIcfNxG8hoUn3dS0L6nd/OxkL70+NjHBTjBQLqkLsK92ryJ0CWrzcJElszBRqfQfYGV/sJ84Ko4tjnBqRuki/rmTW5KQYdE7NI+MvERtGnep7RHb02Luk7BFPPD3uh353EYSAOVHrMH4fte6mJGcj3vxErfSWakRUXQpovLNcqYZNxoGQ==</span> |
|||
<span class="co">#> 10 www.example.com. A NS SOA TXT AAAA RRSIG NSEC DNSKEY</span> |
|||
<span class="co">#> 11 a.iana-servers.net.</span> |
|||
<span class="co">#> 12 b.iana-servers.net.</span> |
|||
<span class="co">#> 13 2606:2800:220:1:248:1893:25c8:1946</span> |
|||
<span class="co">#> 14 93.184.216.34</span> |
|||
<span class="co">#> 15 "v=spf1 -all"</span> |
|||
<span class="co">#> 16 "$Id: example.com 4415 2015-08-24 20:12:23Z davids $"</span> |
|||
<span class="co">#> 17 256 3 8 AwEAAa3d68DfyIs03nGYpi3a9YX+f/wln3g6dhWWzjUUqp6CGXuaOdEHfS8zI/5JdGKi8Xoc4YmjPGfiCJIkCiQnMKn/QFygpZs41ANLdPp2jJlJhFA6IHE/xxTCxJfNhsdEAOGlMORN9Zu1XLUBo/IuCDUvUzZPgalivd/m9L+Jr4kxbg3v</span> |
|||
<span class="co">#> 18 257 3 8 AwEAAZ0aqu1rJ6orJynrRfNpPmayJZoAx9Ic2/Rl9VQWLMHyjxxem3VUSoNUIFXERQbj0A9Ogp0zDM9YIccKLRd6LmWiDCt7UJQxVdD+heb5Ec4qlqGmyX9MDabkvX2NvMwsUecbYBq8oXeTT9LRmCUt9KUt/WOi6DKECxoG/bWTykrXyBR8elD+SQY43OAVjlWrVltHxgp4/rhBCvRbmdflunaPIgu27eE2U4myDSLT8a4A0rB5uHG4PkOa9dIRs9y00M2mWf4lyPee7vi5few2dbayHXmieGcaAHrx76NGAABeY393xjlmDNcUkF1gpNWUla4fWZbbaYQzA93mLdrng+M=</span> |
|||
<span class="co">#> 19 257 3 8 AwEAAbOFAxl+Lkt0UMglZizKEC1AxUu8zlj65KYatR5wBWMrh18TYzK/ig6Y1t5YTWCO68bynorpNu9fqNFALX7bVl9/gybA0v0EhF+dgXmoUfRX7ksMGgBvtfa2/Y9a3klXNLqkTszIQ4PEMVCjtryl19Be9/PkFeC9ITjgMRQsQhmB39eyMYnal+f3bUxKk4fq7cuEU0dbRpue4H/N6jPucXWOwiMAkTJhghqgy+o9FfIp+tR/emKao94/wpVXDcPf5B18j7xz2SvTTxiuqCzCMtsxnikZHcoh1j4g+Y1B8zIMIvrEM+pZGhh/Yuf4RwCBgaYCi9hpiMWVvS4WBzx0/lU=</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Additional</span> |
|||
<span class="co">#> list()</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $edns_client_subnet</span> |
|||
<span class="co">#> [1] "0.0.0.0/0"</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Comment</span> |
|||
<span class="co">#> [1] "Response from 199.43.135.53"</span> |
|||
|
|||
<span class="kw"><a href="reference/query.html">query</a></span>(<span class="st">"microsoft.com"</span>, <span class="st">"MX"</span>) |
|||
<span class="co">#> $Status</span> |
|||
<span class="co">#> [1] 0</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $TC</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $RD</span> |
|||
<span class="co">#> [1] TRUE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $RA</span> |
|||
<span class="co">#> [1] TRUE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $AD</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $CD</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Question</span> |
|||
<span class="co">#> name type</span> |
|||
<span class="co">#> 1 microsoft.com. 15</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Answer</span> |
|||
<span class="co">#> name type TTL data</span> |
|||
<span class="co">#> 1 microsoft.com. 15 1509 10 microsoft-com.mail.protection.outlook.com.</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Additional</span> |
|||
<span class="co">#> list()</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $edns_client_subnet</span> |
|||
<span class="co">#> [1] "0.0.0.0/0"</span> |
|||
|
|||
<span class="kw"><a href="reference/query.html">query</a></span>(<span class="st">"google-public-dns-a.google.com"</span>, <span class="st">"TXT"</span>) |
|||
<span class="co">#> $Status</span> |
|||
<span class="co">#> [1] 0</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $TC</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $RD</span> |
|||
<span class="co">#> [1] TRUE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $RA</span> |
|||
<span class="co">#> [1] TRUE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $AD</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $CD</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Question</span> |
|||
<span class="co">#> name type</span> |
|||
<span class="co">#> 1 google-public-dns-a.google.com. 16</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Answer</span> |
|||
<span class="co">#> name type TTL data</span> |
|||
<span class="co">#> 1 google-public-dns-a.google.com. 16 21599 "http://xkcd.com/1361/"</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Additional</span> |
|||
<span class="co">#> list()</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $edns_client_subnet</span> |
|||
<span class="co">#> [1] "0.0.0.0/0"</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Comment</span> |
|||
<span class="co">#> [1] "Response from 216.239.36.10"</span> |
|||
|
|||
<span class="kw"><a href="reference/query.html">query</a></span>(<span class="st">"apple.com"</span>) |
|||
<span class="co">#> $Status</span> |
|||
<span class="co">#> [1] 0</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $TC</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $RD</span> |
|||
<span class="co">#> [1] TRUE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $RA</span> |
|||
<span class="co">#> [1] TRUE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $AD</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $CD</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Question</span> |
|||
<span class="co">#> name type</span> |
|||
<span class="co">#> 1 apple.com. 1</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Answer</span> |
|||
<span class="co">#> name type TTL data</span> |
|||
<span class="co">#> 1 apple.com. 1 3413 17.172.224.47</span> |
|||
<span class="co">#> 2 apple.com. 1 3413 17.178.96.59</span> |
|||
<span class="co">#> 3 apple.com. 1 3413 17.142.160.59</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Additional</span> |
|||
<span class="co">#> list()</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $edns_client_subnet</span> |
|||
<span class="co">#> [1] "0.0.0.0/0"</span> |
|||
|
|||
<span class="kw"><a href="reference/query.html">query</a></span>(<span class="st">"17.142.160.59"</span>, <span class="st">"PTR"</span>) |
|||
<span class="co">#> $Status</span> |
|||
<span class="co">#> [1] 0</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $TC</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $RD</span> |
|||
<span class="co">#> [1] TRUE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $RA</span> |
|||
<span class="co">#> [1] TRUE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $AD</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $CD</span> |
|||
<span class="co">#> [1] FALSE</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Question</span> |
|||
<span class="co">#> name type</span> |
|||
<span class="co">#> 1 59.160.142.17.in-addr.arpa. 12</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Answer</span> |
|||
<span class="co">#> name type TTL data</span> |
|||
<span class="co">#> 1 59.160.142.17.in-addr.arpa. 12 3025 apples-msk.ru.</span> |
|||
<span class="co">#> 2 59.160.142.17.in-addr.arpa. 12 3025 icloud.se.</span> |
|||
<span class="co">#> 3 59.160.142.17.in-addr.arpa. 12 3025 icloud.es.</span> |
|||
<span class="co">#> 4 59.160.142.17.in-addr.arpa. 12 3025 icloud.om.</span> |
|||
<span class="co">#> 5 59.160.142.17.in-addr.arpa. 12 3025 icloudo.com.</span> |
|||
<span class="co">#> 6 59.160.142.17.in-addr.arpa. 12 3025 icloud.ch.</span> |
|||
<span class="co">#> 7 59.160.142.17.in-addr.arpa. 12 3025 icloud.fr.</span> |
|||
<span class="co">#> 8 59.160.142.17.in-addr.arpa. 12 3025 icloude.com.</span> |
|||
<span class="co">#> 9 59.160.142.17.in-addr.arpa. 12 3025 camelspaceeffect.com.</span> |
|||
<span class="co">#> 10 59.160.142.17.in-addr.arpa. 12 3025 camelphat.com.</span> |
|||
<span class="co">#> 11 59.160.142.17.in-addr.arpa. 12 3025 alchemysynth.com.</span> |
|||
<span class="co">#> 12 59.160.142.17.in-addr.arpa. 12 3025 openni.org.</span> |
|||
<span class="co">#> 13 59.160.142.17.in-addr.arpa. 12 3025 swell.am.</span> |
|||
<span class="co">#> 14 59.160.142.17.in-addr.arpa. 12 3025 appleweb.net.</span> |
|||
<span class="co">#> 15 59.160.142.17.in-addr.arpa. 12 3025 apple.com.</span> |
|||
<span class="co">#> 16 59.160.142.17.in-addr.arpa. 12 3025 pv-apple-com.apple.com.</span> |
|||
<span class="co">#> 17 59.160.142.17.in-addr.arpa. 12 3025 ripmixburn.com.</span> |
|||
<span class="co">#> 18 59.160.142.17.in-addr.arpa. 12 3025 yessql.info.</span> |
|||
<span class="co">#> 19 59.160.142.17.in-addr.arpa. 12 3025 webobjects.info.</span> |
|||
<span class="co">#> 20 59.160.142.17.in-addr.arpa. 12 3025 ubnw.info.</span> |
|||
<span class="co">#> 21 59.160.142.17.in-addr.arpa. 12 3025 skyvines.info.</span> |
|||
<span class="co">#> 22 59.160.142.17.in-addr.arpa. 12 3025 shopdifferent.info.</span> |
|||
<span class="co">#> 23 59.160.142.17.in-addr.arpa. 12 3025 sherlock.info.</span> |
|||
<span class="co">#> 24 59.160.142.17.in-addr.arpa. 12 3025 quicktimetv.info.</span> |
|||
<span class="co">#> 25 59.160.142.17.in-addr.arpa. 12 3025 quicktimelive.info.</span> |
|||
<span class="co">#> 26 59.160.142.17.in-addr.arpa. 12 3025 powermac.info.</span> |
|||
<span class="co">#> 27 59.160.142.17.in-addr.arpa. 12 3025 powerbook.info.</span> |
|||
<span class="co">#> 28 59.160.142.17.in-addr.arpa. 12 3025 macosx.info.</span> |
|||
<span class="co">#> 29 59.160.142.17.in-addr.arpa. 12 3025 appleshare.info.</span> |
|||
<span class="co">#> 30 59.160.142.17.in-addr.arpa. 12 3025 applescript.info.</span> |
|||
<span class="co">#> 31 59.160.142.17.in-addr.arpa. 12 3025 applepaysupplies.info.</span> |
|||
<span class="co">#> 32 59.160.142.17.in-addr.arpa. 12 3025 applepaymerchantsupplies.info.</span> |
|||
<span class="co">#> 33 59.160.142.17.in-addr.arpa. 12 3025 applepay.info.</span> |
|||
<span class="co">#> 34 59.160.142.17.in-addr.arpa. 12 3025 applemasters.info.</span> |
|||
<span class="co">#> 35 59.160.142.17.in-addr.arpa. 12 3025 appleexpo.info.</span> |
|||
<span class="co">#> 36 59.160.142.17.in-addr.arpa. 12 3025 applecomputerinc.info.</span> |
|||
<span class="co">#> 37 59.160.142.17.in-addr.arpa. 12 3025 applecentre.info.</span> |
|||
<span class="co">#> 38 59.160.142.17.in-addr.arpa. 12 3025 airtunes.info.</span> |
|||
<span class="co">#> 39 59.160.142.17.in-addr.arpa. 12 3025 apple.by.</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $Additional</span> |
|||
<span class="co">#> list()</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> $edns_client_subnet</span> |
|||
<span class="co">#> [1] "0.0.0.0/0"</span> |
|||
|
|||
hosts <-<span class="st"> </span><span class="kw">c</span>(<span class="st">"rud.is"</span>, <span class="st">"dds.ec"</span>, <span class="st">"r-project.org"</span>, <span class="st">"rstudio.com"</span>, <span class="st">"apple.com"</span>) |
|||
gdns::<span class="kw"><a href="reference/bulk_query.html">bulk_query</a></span>(hosts) |
|||
<span class="co">#> name type TTL data</span> |
|||
<span class="co">#> 1 rud.is. 1 3598 104.236.112.222</span> |
|||
<span class="co">#> 2 dds.ec. 1 299 162.243.111.4</span> |
|||
<span class="co">#> 3 r-project.org. 1 3072 137.208.57.37</span> |
|||
<span class="co">#> 4 rstudio.com. 1 3599 45.79.156.36</span> |
|||
<span class="co">#> 5 apple.com. 1 3415 17.172.224.47</span> |
|||
<span class="co">#> 6 apple.com. 1 3415 17.178.96.59</span> |
|||
<span class="co">#> 7 apple.com. 1 3415 17.142.160.59</span></code></pre></div> |
|||
<h3 id="test-results">Test Results</h3> |
|||
<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">library</span>(gdns) |
|||
<span class="kw">library</span>(testthat) |
|||
|
|||
<span class="kw">date</span>() |
|||
<span class="co">#> [1] "Thu Sep 29 09:44:11 2016"</span> |
|||
|
|||
<span class="kw">test_dir</span>(<span class="st">"tests/"</span>) |
|||
<span class="co">#> testthat results ========================================================================================================</span> |
|||
<span class="co">#> OK: 2 SKIPPED: 0 FAILED: 0</span> |
|||
<span class="co">#> </span> |
|||
<span class="co">#> DONE ===================================================================================================================</span></code></pre></div> |
|||
<h3 id="code-of-conduct">Code of Conduct</h3> |
|||
<p>Please note that this project is released with a <a href="CONDUCT.md">Contributor Code of Conduct</a>. By participating in this project you agree to abide by its terms.</p> |
|||
|
|||
</div> |
|||
</div> |
|||
|
|||
<footer> |
|||
<p>Built by <a href="http://hadley.github.io/pkgdown/">pkgdown</a>. Styled with <a href="http://getbootstrap.com">Bootstrap 3</a>.</p> |
|||
</footer> |
|||
</div> |
|||
|
|||
</body> |
|||
</html> |
@ -0,0 +1,97 @@ |
|||
<!-- Generated by pkgdown: do not edit by hand --> |
|||
<!DOCTYPE html> |
|||
<html> |
|||
<head> |
|||
<meta charset="utf-8"> |
|||
<meta http-equiv="X-UA-Compatible" content="IE=edge"> |
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|||
|
|||
<title>All news. gdns</title> |
|||
|
|||
<!-- jquery --> |
|||
<script src="https://code.jquery.com/jquery-3.1.0.min.js" integrity="sha384-nrOSfDHtoPMzJHjVTdCopGqIqeYETSXhZDFyniQ8ZHcVy08QesyHcnOUpMpqnmWq" crossorigin="anonymous"></script> |
|||
|
|||
<!-- Bootstrap --> |
|||
|
|||
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> |
|||
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> |
|||
|
|||
<!-- Font Awesome icons --> |
|||
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css" rel="stylesheet" integrity="sha384-T8Gy5hrqNKT+hzMclPo118YTQO6cYprQmhrYwIiQ/3axmI1hQomh7Ud2hPOy8SP1" crossorigin="anonymous"> |
|||
|
|||
|
|||
<!-- pkgdown --> |
|||
<link href="../pkgdown.css" rel="stylesheet"> |
|||
<script src="../pkgdown.js"></script> |
|||
|
|||
<!-- mathjax --> |
|||
<script src='https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML'></script> |
|||
|
|||
<!--[if lt IE 9]> |
|||
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script> |
|||
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> |
|||
<![endif]--> |
|||
</head> |
|||
|
|||
<body> |
|||
<div class="container"> |
|||
<header> |
|||
|
|||
<div class="navbar navbar-default navbar-fixed-top" role="navigation"> |
|||
<div class="container"> |
|||
<div class="navbar-header"> |
|||
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar"> |
|||
<span class="icon-bar"></span> |
|||
<span class="icon-bar"></span> |
|||
<span class="icon-bar"></span> |
|||
</button> |
|||
<a class="navbar-brand" href="../index.html">gdns</a> |
|||
</div> |
|||
<div id="navbar" class="navbar-collapse collapse"> |
|||
<ul class="nav navbar-nav"> |
|||
<li> |
|||
<a href="../index.html">Home</a> |
|||
</li> |
|||
<li> |
|||
<a href="../reference/index.html">Reference</a> |
|||
</li> |
|||
<li> |
|||
<a href="../news/index.html">News</a> |
|||
</li> |
|||
</ul> |
|||
<ul class="nav navbar-nav navbar-right"> |
|||
|
|||
</ul> |
|||
</div><!--/.nav-collapse --> |
|||
</div><!--/.container --> |
|||
</div><!--/.navbar --> |
|||
|
|||
</header> |
|||
|
|||
<div class="row"> |
|||
<div class="col-md-9"> |
|||
<div id="gdns-0.2.0" class="section level1"> |
|||
<h1>gdns 0.2.0</h1> |
|||
<ul><li>CRAN release</li> |
|||
<li>Added a <code>NEWS.md</code> file to track changes to the package.</li> |
|||
</ul></div> |
|||
</div> |
|||
|
|||
<div class="col-md-3 hidden-xs"> |
|||
<div id="tocnav"> |
|||
<h2>Contents</h2> |
|||
<ul class="nav nav-pills nav-stacked"> |
|||
<li><a href="#gdns-0.2.0">0.2.0</a></li> |
|||
</ul> |
|||
</div> |
|||
</div> |
|||
|
|||
</div> |
|||
|
|||
<footer> |
|||
<p>Built by <a href="http://hadley.github.io/pkgdown/">pkgdown</a>. Styled with <a href="http://getbootstrap.com">Bootstrap 3</a>.</p> |
|||
</footer> |
|||
</div> |
|||
|
|||
</body> |
|||
</html> |
@ -0,0 +1,59 @@ |
|||
body { |
|||
position: relative; |
|||
} |
|||
|
|||
.icon img { |
|||
float: right; |
|||
border: 1px solid #ccc; |
|||
} |
|||
.index .internal {display: none;} |
|||
ul.index li {margin-bottom: 0.5em; clear: both;} |
|||
|
|||
footer { |
|||
margin-top: 45px; |
|||
padding: 35px 0 36px; |
|||
border-top: 1px solid #e5e5e5; |
|||
} |
|||
footer p { |
|||
margin-bottom: 0; |
|||
color: #555; |
|||
} |
|||
|
|||
/* Fixes for fixed navbar --------------------------*/ |
|||
|
|||
body { |
|||
position: relative; |
|||
padding-top: 60px; |
|||
} |
|||
|
|||
.section h1, .section h2, .section h3, .section h4 { |
|||
padding-top: 60px; |
|||
margin-top: -60px; |
|||
} |
|||
|
|||
/* Table of contents --------------------------*/ |
|||
|
|||
#tocnav h2 { |
|||
margin-top: 0; |
|||
font-size: 1.5em; |
|||
} |
|||
|
|||
|
|||
/* Syntax highlighting ---------------------------------------------------- */ |
|||
|
|||
.fl,.number {color:rgb(21,20,181);} |
|||
.fu,.functioncall {color:#264D66 ;} |
|||
.ch,.st,.string {color:#375D81 ;} |
|||
.kw,.keyword {font-weight:bolder ;color:black;} |
|||
.argument {color:#264D66 ;} |
|||
.co,.comment {color: #333;} |
|||
.formalargs {color: #264D66;} |
|||
.eqformalargs {color:#264D66;} |
|||
.slot {font-style:italic;} |
|||
.symbol {color:black ;} |
|||
.prompt {color:black ;} |
|||
|
|||
pre img { |
|||
background-color: #fff; |
|||
display: block; |
|||
} |
@ -0,0 +1,13 @@ |
|||
$(function() { |
|||
|
|||
$('#tocnav').affix({ |
|||
offset: { |
|||
top: $('#tocnav').offset().top - 80 |
|||
} |
|||
}); |
|||
$('body').scrollspy({ |
|||
target: '#tocnav', |
|||
offset: 80 |
|||
}); |
|||
|
|||
}); |
@ -0,0 +1,145 @@ |
|||
<!-- Generated by pkgdown: do not edit by hand --> |
|||
<!DOCTYPE html> |
|||
<html> |
|||
<head> |
|||
<meta charset="utf-8"> |
|||
<meta http-equiv="X-UA-Compatible" content="IE=edge"> |
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|||
|
|||
<title>bulk_query. gdns</title> |
|||
|
|||
<!-- jquery --> |
|||
<script src="https://code.jquery.com/jquery-3.1.0.min.js" integrity="sha384-nrOSfDHtoPMzJHjVTdCopGqIqeYETSXhZDFyniQ8ZHcVy08QesyHcnOUpMpqnmWq" crossorigin="anonymous"></script> |
|||
|
|||
<!-- Bootstrap --> |
|||
|
|||
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> |
|||
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> |
|||
|
|||
<!-- Font Awesome icons --> |
|||
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css" rel="stylesheet" integrity="sha384-T8Gy5hrqNKT+hzMclPo118YTQO6cYprQmhrYwIiQ/3axmI1hQomh7Ud2hPOy8SP1" crossorigin="anonymous"> |
|||
|
|||
|
|||
<!-- pkgdown --> |
|||
<link href="../pkgdown.css" rel="stylesheet"> |
|||
<script src="../pkgdown.js"></script> |
|||
|
|||
<!-- mathjax --> |
|||
<script src='https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML'></script> |
|||
|
|||
<!--[if lt IE 9]> |
|||
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script> |
|||
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> |
|||
<![endif]--> |
|||
</head> |
|||
|
|||
<body> |
|||
<div class="container"> |
|||
<header> |
|||
|
|||
<div class="navbar navbar-default navbar-fixed-top" role="navigation"> |
|||
<div class="container"> |
|||
<div class="navbar-header"> |
|||
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar"> |
|||
<span class="icon-bar"></span> |
|||
<span class="icon-bar"></span> |
|||
<span class="icon-bar"></span> |
|||
</button> |
|||
<a class="navbar-brand" href="../index.html">gdns</a> |
|||
</div> |
|||
<div id="navbar" class="navbar-collapse collapse"> |
|||
<ul class="nav navbar-nav"> |
|||
<li> |
|||
<a href="../index.html">Home</a> |
|||
</li> |
|||
<li> |
|||
<a href="../reference/index.html">Reference</a> |
|||
</li> |
|||
<li> |
|||
<a href="../news/index.html">News</a> |
|||
</li> |
|||
</ul> |
|||
<ul class="nav navbar-nav navbar-right"> |
|||
|
|||
</ul> |
|||
</div><!--/.nav-collapse --> |
|||
</div><!--/.container --> |
|||
</div><!--/.navbar --> |
|||
|
|||
</header> |
|||
|
|||
<div class="page-header"> |
|||
<h1>Vectorized query, returning only answers in a data frame</h1> |
|||
</div> |
|||
|
|||
<div class="row"> |
|||
<div class="col-md-9"> |
|||
|
|||
<p>Vectorized query, returning only answers in a data frame</p> |
|||
|
|||
|
|||
<pre><span class='fu'>bulk_query</span>(<span class='no'>entities</span>, <span class='kw'>type</span> <span class='kw'>=</span> <span class='fl'>1</span>, <span class='kw'>edns_client_subnet</span> <span class='kw'>=</span> <span class='st'>"0.0.0.0/0"</span>)</pre> |
|||
|
|||
<h2>Arguments</h2> |
|||
<dl class="dl-horizontal"> |
|||
<dt>entities</dt> |
|||
<dd>character vector of entities to query</dd> |
|||
<dt>type</dt> |
|||
<dd>RR type can be represented as a number in [1, 65535] or canonical |
|||
string (A, aaaa, etc). More information on RR types can be |
|||
found <a href = 'here'>http://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml#dns-parameters-4</a>.</dd> |
|||
<dt>edns_client_subnet</dt> |
|||
<dd>The edns0-client-subnet option. Format is an IP |
|||
address with a subnet mask. Examples: <code>1.2.3.4/24</code>, |
|||
<code>2001:700:300::/48</code>. |
|||
If you are using DNS-over-HTTPS because of privacy concerns, and do |
|||
not want any part of your IP address to be sent to authoritative |
|||
nameservers for geographic location accuracy, use |
|||
<code>edns_client_subnet=0.0.0.0/0</code>. Google Public DNS normally sends |
|||
approximate network information (usually replacing the last part of |
|||
your IPv4 address with zeroes). <code>0.0.0.0/0</code> is the default.</dd> |
|||
</dl> |
|||
|
|||
<div class="Value"> |
|||
<h2>Value</h2> |
|||
|
|||
<p><code>data.frame</code> of only answers (use <code>query()</code> for detailed responses)</p> |
|||
</div> |
|||
|
|||
<div class="Note"> |
|||
<h2>Note</h2> |
|||
|
|||
<p>this is a fairly naive function. It expects <code>Answer</code> to be one of the |
|||
return value list slots. The intent for it was to make it easier |
|||
to do bulk forward queries. It will get smarter in future versions.</p> |
|||
</div> |
|||
|
|||
<div class="References"> |
|||
<h2>References</h2> |
|||
|
|||
<p><a href = 'https://developers.google.com/speed/public-dns/docs/dns-over-https'>https://developers.google.com/speed/public-dns/docs/dns-over-https</a></p> |
|||
</div> |
|||
|
|||
<h2 id="examples">Examples</h2> |
|||
<pre class="examples"><div class='input'><span class='no'>hosts</span> <span class='kw'><-</span> <span class='fu'>c</span>(<span class='st'>"rud.is"</span>, <span class='st'>"dds.ec"</span>, <span class='st'>"r-project.org"</span>, <span class='st'>"rstudio.com"</span>, <span class='st'>"apple.com"</span>) |
|||
<span class='kw'>gdns</span><span class='kw'>::</span><span class='fu'>bulk_query</span>(<span class='no'>hosts</span>)</div><div class='output co'>#> name type TTL data |
|||
#> 1 rud.is. 1 3599 104.236.112.222 |
|||
#> 2 dds.ec. 1 299 162.243.111.4 |
|||
#> 3 r-project.org. 1 7199 137.208.57.37 |
|||
#> 4 rstudio.com. 1 3599 45.79.156.36 |
|||
#> 5 apple.com. 1 1006 17.172.224.47 |
|||
#> 6 apple.com. 1 1006 17.178.96.59 |
|||
#> 7 apple.com. 1 1006 17.142.160.59 |
|||
#> </div></pre> |
|||
</div> |
|||
<div class="col-md-3"> |
|||
</div> |
|||
</div> |
|||
|
|||
<footer> |
|||
<p>Built by <a href="http://hadley.github.io/pkgdown/">pkgdown</a>. Styled with <a href="http://getbootstrap.com">Bootstrap 3</a>.</p> |
|||
</footer> |
|||
</div> |
|||
|
|||
</body> |
|||
</html> |
@ -0,0 +1,111 @@ |
|||
<!-- Generated by pkgdown: do not edit by hand --> |
|||
<!DOCTYPE html> |
|||
<html> |
|||
<head> |
|||
<meta charset="utf-8"> |
|||
<meta http-equiv="X-UA-Compatible" content="IE=edge"> |
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|||
|
|||
<title>gdns. gdns</title> |
|||
|
|||
<!-- jquery --> |
|||
<script src="https://code.jquery.com/jquery-3.1.0.min.js" integrity="sha384-nrOSfDHtoPMzJHjVTdCopGqIqeYETSXhZDFyniQ8ZHcVy08QesyHcnOUpMpqnmWq" crossorigin="anonymous"></script> |
|||
|
|||
<!-- Bootstrap --> |
|||
|
|||
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> |
|||
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> |
|||
|
|||
<!-- Font Awesome icons --> |
|||
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css" rel="stylesheet" integrity="sha384-T8Gy5hrqNKT+hzMclPo118YTQO6cYprQmhrYwIiQ/3axmI1hQomh7Ud2hPOy8SP1" crossorigin="anonymous"> |
|||
|
|||
|
|||
<!-- pkgdown --> |
|||
<link href="../pkgdown.css" rel="stylesheet"> |
|||
<script src="../pkgdown.js"></script> |
|||
|
|||
<!-- mathjax --> |
|||
<script src='https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML'></script> |
|||
|
|||
<!--[if lt IE 9]> |
|||
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script> |
|||
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> |
|||
<![endif]--> |
|||
</head> |
|||
|
|||
<body> |
|||
<div class="container"> |
|||
<header> |
|||
|
|||
<div class="navbar navbar-default navbar-fixed-top" role="navigation"> |
|||
<div class="container"> |
|||
<div class="navbar-header"> |
|||
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar"> |
|||
<span class="icon-bar"></span> |
|||
<span class="icon-bar"></span> |
|||
<span class="icon-bar"></span> |
|||
</button> |
|||
<a class="navbar-brand" href="../index.html">gdns</a> |
|||
</div> |
|||
<div id="navbar" class="navbar-collapse collapse"> |
|||
<ul class="nav navbar-nav"> |
|||
<li> |
|||
<a href="../index.html">Home</a> |
|||
</li> |
|||
<li> |
|||
<a href="../reference/index.html">Reference</a> |
|||
</li> |
|||
<li> |
|||
<a href="../news/index.html">News</a> |
|||
</li> |
|||
</ul> |
|||
<ul class="nav navbar-nav navbar-right"> |
|||
|
|||
</ul> |
|||
</div><!--/.nav-collapse --> |
|||
</div><!--/.container --> |
|||
</div><!--/.navbar --> |
|||
|
|||
</header> |
|||
|
|||
<div class="page-header"> |
|||
<h1>Tools to Work with Google DNS Over HTTPS API</h1> |
|||
</div> |
|||
|
|||
<div class="row"> |
|||
<div class="col-md-9"> |
|||
|
|||
<p>Traditional DNS queries and responses are sent over UDP or TCP without |
|||
encryption. This is vulnerable to eavesdropping and spoofing (including |
|||
DNS-based Internet filtering). Responses from recursive resolvers to clients |
|||
are the most vulnerable to undesired or malicious changes, while |
|||
communications between recursive resolvers and authoritative nameservers |
|||
often incorporate additional protection.</p> |
|||
|
|||
<p>To address this problem, Google Public DNS offers DNS resolution over an |
|||
encrypted HTTPS connection. DNS-over-HTTPS greatly enhances privacy and |
|||
security between a client and a recursive resolver, and complements DNSSEC |
|||
to provide end-to-end authenticated DNS lookups.</p> |
|||
|
|||
<p>Support for reverse lookups is also provided.</p> |
|||
|
|||
<p>See <a href = 'https://developers.google.com/speed/public-dns/docs/dns-over-https'>https://developers.google.com/speed/public-dns/docs/dns-over-https</a> |
|||
for more information.</p> |
|||
|
|||
|
|||
</div> |
|||
<div class="col-md-3"> |
|||
<h2>Author</h2> |
|||
|
|||
Bob Rudis (bob@rud.is) |
|||
|
|||
</div> |
|||
</div> |
|||
|
|||
<footer> |
|||
<p>Built by <a href="http://hadley.github.io/pkgdown/">pkgdown</a>. Styled with <a href="http://getbootstrap.com">Bootstrap 3</a>.</p> |
|||
</footer> |
|||
</div> |
|||
|
|||
</body> |
|||
</html> |
@ -0,0 +1,99 @@ |
|||
<!-- Generated by pkgdown: do not edit by hand --> |
|||
<!DOCTYPE html> |
|||
<html> |
|||
<head> |
|||
<meta charset="utf-8"> |
|||
<meta http-equiv="X-UA-Compatible" content="IE=edge"> |
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|||
|
|||
<title>has_spf. gdns</title> |
|||
|
|||
<!-- jquery --> |
|||
<script src="https://code.jquery.com/jquery-3.1.0.min.js" integrity="sha384-nrOSfDHtoPMzJHjVTdCopGqIqeYETSXhZDFyniQ8ZHcVy08QesyHcnOUpMpqnmWq" crossorigin="anonymous"></script> |
|||
|
|||
<!-- Bootstrap --> |
|||
|
|||
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> |
|||
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> |
|||
|
|||
<!-- Font Awesome icons --> |
|||
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css" rel="stylesheet" integrity="sha384-T8Gy5hrqNKT+hzMclPo118YTQO6cYprQmhrYwIiQ/3axmI1hQomh7Ud2hPOy8SP1" crossorigin="anonymous"> |
|||
|
|||
|
|||
<!-- pkgdown --> |
|||
<link href="../pkgdown.css" rel="stylesheet"> |
|||
<script src="../pkgdown.js"></script> |
|||
|
|||
<!-- mathjax --> |
|||
<script src='https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML'></script> |
|||
|
|||
<!--[if lt IE 9]> |
|||
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script> |
|||
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> |
|||
<![endif]--> |
|||
</head> |
|||
|
|||
<body> |
|||
<div class="container"> |
|||
<header> |
|||
|
|||
<div class="navbar navbar-default navbar-fixed-top" role="navigation"> |
|||
<div class="container"> |
|||
<div class="navbar-header"> |
|||
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar"> |
|||
<span class="icon-bar"></span> |
|||
<span class="icon-bar"></span> |
|||
<span class="icon-bar"></span> |
|||
</button> |
|||
<a class="navbar-brand" href="../index.html">gdns</a> |
|||
</div> |
|||
<div id="navbar" class="navbar-collapse collapse"> |
|||
<ul class="nav navbar-nav"> |
|||
<li> |
|||
<a href="../index.html">Home</a> |
|||
</li> |
|||
<li> |
|||
<a href="../reference/index.html">Reference</a> |
|||
</li> |
|||
<li> |
|||
<a href="../news/index.html">News</a> |
|||
</li> |
|||
</ul> |
|||
<ul class="nav navbar-nav navbar-right"> |
|||
|
|||
</ul> |
|||
</div><!--/.nav-collapse --> |
|||
</div><!--/.container --> |
|||
</div><!--/.navbar --> |
|||
|
|||
</header> |
|||
|
|||
<div class="page-header"> |
|||
<h1>Test for whether a DNS TXT record is an SPF record</h1> |
|||
</div> |
|||
|
|||
<div class="row"> |
|||
<div class="col-md-9"> |
|||
|
|||
<p>Test for whether a DNS TXT record is an SPF record</p> |
|||
|
|||
|
|||
<pre><span class='fu'>has_spf</span>(<span class='no'>spf_rec</span>)</pre> |
|||
|
|||
<h2>Arguments</h2> |
|||
<dl class="dl-horizontal"> |
|||
<dt>spf_rec</dt> |
|||
<dd>a character vector of DNS TXT records</dd> |
|||
</dl> |
|||
</div> |
|||
<div class="col-md-3"> |
|||
</div> |
|||
</div> |
|||
|
|||
<footer> |
|||
<p>Built by <a href="http://hadley.github.io/pkgdown/">pkgdown</a>. Styled with <a href="http://getbootstrap.com">Bootstrap 3</a>.</p> |
|||
</footer> |
|||
</div> |
|||
|
|||
</body> |
|||
</html> |
@ -0,0 +1,107 @@ |
|||
<!-- Generated by pkgdown: do not edit by hand --> |
|||
<!DOCTYPE html> |
|||
<html> |
|||
<head> |
|||
<meta charset="utf-8"> |
|||
<meta http-equiv="X-UA-Compatible" content="IE=edge"> |
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|||
|
|||
<title>Function reference. gdns</title> |
|||
|
|||
<!-- jquery --> |
|||
<script src="https://code.jquery.com/jquery-3.1.0.min.js" integrity="sha384-nrOSfDHtoPMzJHjVTdCopGqIqeYETSXhZDFyniQ8ZHcVy08QesyHcnOUpMpqnmWq" crossorigin="anonymous"></script> |
|||
|
|||
<!-- Bootstrap --> |
|||
|
|||
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> |
|||
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> |
|||
|
|||
<!-- Font Awesome icons --> |
|||
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css" rel="stylesheet" integrity="sha384-T8Gy5hrqNKT+hzMclPo118YTQO6cYprQmhrYwIiQ/3axmI1hQomh7Ud2hPOy8SP1" crossorigin="anonymous"> |
|||
|
|||
|
|||
<!-- pkgdown --> |
|||
<link href="../pkgdown.css" rel="stylesheet"> |
|||
<script src="../pkgdown.js"></script> |
|||
|
|||
<!-- mathjax --> |
|||
<script src='https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML'></script> |
|||
|
|||
<!--[if lt IE 9]> |
|||
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script> |
|||
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> |
|||
<![endif]--> |
|||
</head> |
|||
|
|||
<body> |
|||
<div class="container"> |
|||
<header> |
|||
|
|||
<div class="navbar navbar-default navbar-fixed-top" role="navigation"> |
|||
<div class="container"> |
|||
<div class="navbar-header"> |
|||
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar"> |
|||
<span class="icon-bar"></span> |
|||
<span class="icon-bar"></span> |
|||
<span class="icon-bar"></span> |
|||
</button> |
|||
<a class="navbar-brand" href="../index.html">gdns</a> |
|||
</div> |
|||
<div id="navbar" class="navbar-collapse collapse"> |
|||
<ul class="nav navbar-nav"> |
|||
<li> |
|||
<a href="../index.html">Home</a> |
|||
</li> |
|||
<li> |
|||
<a href="../reference/index.html">Reference</a> |
|||
</li> |
|||
<li> |
|||
<a href="../news/index.html">News</a> |
|||
</li> |
|||
</ul> |
|||
<ul class="nav navbar-nav navbar-right"> |
|||
|
|||
</ul> |
|||
</div><!--/.nav-collapse --> |
|||
</div><!--/.container --> |
|||
</div><!--/.navbar --> |
|||
|
|||
</header> |
|||
|
|||
<div class="page-header"> |
|||
<h1>Function reference <small>version 0.2.0</small></h1> |
|||
</div> |
|||
|
|||
<div class="row"> |
|||
<div class="col-md-9"> |
|||
<div class="section "> |
|||
<h2>All functions</h2> |
|||
<p class="section-desc"></p> |
|||
|
|||
<dl class="dl-horizontal"> |
|||
<dt><a href="bulk_query.html">bulk_query</a></dt> |
|||
<dd>Vectorized query, returning only answers in a data frame</dd> |
|||
<dt><a href="gdns.html">gdns</a></dt><dt><a href="gdns.html">gdns-package</a></dt> |
|||
<dd>Tools to Work with Google DNS Over HTTPS API</dd> |
|||
<dt><a href="has_spf.html">has_spf</a></dt> |
|||
<dd>Test for whether a DNS TXT record is an SPF record</dd> |
|||
<dt><a href="is_soft_fail.html">is_hard_fail</a></dt><dt><a href="is_soft_fail.html">is_soft_fail</a></dt><dt><a href="is_soft_fail.html">passes_all</a></dt> |
|||
<dd>SPF "all" type test</dd> |
|||
<dt><a href="query.html">query</a></dt> |
|||
<dd>Perform DNS over HTTPS queries using Google</dd> |
|||
<dt><a href="spf_ipv4s.html">spf_exists</a></dt><dt><a href="spf_ipv4s.html">spf_includes</a></dt><dt><a href="spf_ipv4s.html">spf_ipv4s</a></dt><dt><a href="spf_ipv4s.html">spf_ipv6s</a></dt><dt><a href="spf_ipv4s.html">spf_ptrs</a></dt> |
|||
<dd>SPF field extraction functions</dd> |
|||
<dt><a href="split_spf.html">split_spf</a></dt> |
|||
<dd>Split out all SPF records in a domain's TXT record</dd> |
|||
</dl> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
|
|||
<footer> |
|||
<p>Built by <a href="http://hadley.github.io/pkgdown/">pkgdown</a>. Styled with <a href="http://getbootstrap.com">Bootstrap 3</a>.</p> |
|||
</footer> |
|||
</div> |
|||
|
|||
</body> |
|||
</html> |
@ -0,0 +1,103 @@ |
|||
<!-- Generated by pkgdown: do not edit by hand --> |
|||
<!DOCTYPE html> |
|||
<html> |
|||
<head> |
|||
<meta charset="utf-8"> |
|||
<meta http-equiv="X-UA-Compatible" content="IE=edge"> |
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|||
|
|||
<title>is_soft_fail. gdns</title> |
|||
|
|||
<!-- jquery --> |
|||
<script src="https://code.jquery.com/jquery-3.1.0.min.js" integrity="sha384-nrOSfDHtoPMzJHjVTdCopGqIqeYETSXhZDFyniQ8ZHcVy08QesyHcnOUpMpqnmWq" crossorigin="anonymous"></script> |
|||
|
|||
<!-- Bootstrap --> |
|||
|
|||
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> |
|||
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> |
|||
|
|||
<!-- Font Awesome icons --> |
|||
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css" rel="stylesheet" integrity="sha384-T8Gy5hrqNKT+hzMclPo118YTQO6cYprQmhrYwIiQ/3axmI1hQomh7Ud2hPOy8SP1" crossorigin="anonymous"> |
|||
|
|||
|
|||
<!-- pkgdown --> |
|||
<link href="../pkgdown.css" rel="stylesheet"> |
|||
<script src="../pkgdown.js"></script> |
|||
|
|||
<!-- mathjax --> |
|||
<script src='https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML'></script> |
|||
|
|||
<!--[if lt IE 9]> |
|||
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script> |
|||
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> |
|||
<![endif]--> |
|||
</head> |
|||
|
|||
<body> |
|||
<div class="container"> |
|||
<header> |
|||
|
|||
<div class="navbar navbar-default navbar-fixed-top" role="navigation"> |
|||
<div class="container"> |
|||
<div class="navbar-header"> |
|||
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar"> |
|||
<span class="icon-bar"></span> |
|||
<span class="icon-bar"></span> |
|||
<span class="icon-bar"></span> |
|||
</button> |
|||
<a class="navbar-brand" href="../index.html">gdns</a> |
|||
</div> |
|||
<div id="navbar" class="navbar-collapse collapse"> |
|||
<ul class="nav navbar-nav"> |
|||
<li> |
|||
<a href="../index.html">Home</a> |
|||
</li> |
|||
<li> |
|||
<a href="../reference/index.html">Reference</a> |
|||
</li> |
|||
<li> |
|||
<a href="../news/index.html">News</a> |
|||
</li> |
|||
</ul> |
|||
<ul class="nav navbar-nav navbar-right"> |
|||
|
|||
</ul> |
|||
</div><!--/.nav-collapse --> |
|||
</div><!--/.container --> |
|||
</div><!--/.navbar --> |
|||
|
|||
</header> |
|||
|
|||
<div class="page-header"> |
|||
<h1>SPF "all" type test</h1> |
|||
</div> |
|||
|
|||
<div class="row"> |
|||
<div class="col-md-9"> |
|||
|
|||
<p>SPF "all" type test</p> |
|||
|
|||
|
|||
<pre><span class='fu'>is_soft_fail</span>(<span class='no'>spf_rec</span>) |
|||
|
|||
<span class='fu'>is_hard_fail</span>(<span class='no'>spf_rec</span>) |
|||
|
|||
<span class='fu'>passes_all</span>(<span class='no'>spf_rec</span>)</pre> |
|||
|
|||
<h2>Arguments</h2> |
|||
<dl class="dl-horizontal"> |
|||
<dt>spf_rec</dt> |
|||
<dd>a character vector of DNS TXT records</dd> |
|||
</dl> |
|||
</div> |
|||
<div class="col-md-3"> |
|||
</div> |
|||
</div> |
|||
|
|||
<footer> |
|||
<p>Built by <a href="http://hadley.github.io/pkgdown/">pkgdown</a>. Styled with <a href="http://getbootstrap.com">Bootstrap 3</a>.</p> |
|||
</footer> |
|||
</div> |
|||
|
|||
</body> |
|||
</html> |
@ -0,0 +1,430 @@ |
|||
<!-- Generated by pkgdown: do not edit by hand --> |
|||
<!DOCTYPE html> |
|||
<html> |
|||
<head> |
|||
<meta charset="utf-8"> |
|||
<meta http-equiv="X-UA-Compatible" content="IE=edge"> |
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|||
|
|||
<title>query. gdns</title> |
|||
|
|||
<!-- jquery --> |
|||
<script src="https://code.jquery.com/jquery-3.1.0.min.js" integrity="sha384-nrOSfDHtoPMzJHjVTdCopGqIqeYETSXhZDFyniQ8ZHcVy08QesyHcnOUpMpqnmWq" crossorigin="anonymous"></script> |
|||
|
|||
<!-- Bootstrap --> |
|||
|
|||
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> |
|||
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> |
|||
|
|||
<!-- Font Awesome icons --> |
|||
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css" rel="stylesheet" integrity="sha384-T8Gy5hrqNKT+hzMclPo118YTQO6cYprQmhrYwIiQ/3axmI1hQomh7Ud2hPOy8SP1" crossorigin="anonymous"> |
|||
|
|||
|
|||
<!-- pkgdown --> |
|||
<link href="../pkgdown.css" rel="stylesheet"> |
|||
<script src="../pkgdown.js"></script> |
|||
|
|||
<!-- mathjax --> |
|||
<script src='https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML'></script> |
|||
|
|||
<!--[if lt IE 9]> |
|||
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script> |
|||
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> |
|||
<![endif]--> |
|||
</head> |
|||
|
|||
<body> |
|||
<div class="container"> |
|||
<header> |
|||
|
|||
<div class="navbar navbar-default navbar-fixed-top" role="navigation"> |
|||
<div class="container"> |
|||
<div class="navbar-header"> |
|||
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar"> |
|||
<span class="icon-bar"></span> |
|||
<span class="icon-bar"></span> |
|||
<span class="icon-bar"></span> |
|||
</button> |
|||
<a class="navbar-brand" href="../index.html">gdns</a> |
|||
</div> |
|||
<div id="navbar" class="navbar-collapse collapse"> |
|||
<ul class="nav navbar-nav"> |
|||
<li> |
|||
<a href="../index.html">Home</a> |
|||
</li> |
|||
<li> |
|||
<a href="../reference/index.html">Reference</a> |
|||
</li> |
|||
<li> |
|||
<a href="../news/index.html">News</a> |
|||
</li> |
|||
</ul> |
|||
<ul class="nav navbar-nav navbar-right"> |
|||
|
|||
</ul> |
|||
</div><!--/.nav-collapse --> |
|||
</div><!--/.container --> |
|||
</div><!--/.navbar --> |
|||
|
|||
</header> |
|||
|
|||
<div class="page-header"> |
|||
<h1>Perform DNS over HTTPS queries using Google</h1> |
|||
</div> |
|||
|
|||
<div class="row"> |
|||
<div class="col-md-9"> |
|||
|
|||
<p>Traditional DNS queries and responses are sent over UDP or TCP without |
|||
encryption. This is vulnerable to eavesdropping and spoofing (including |
|||
DNS-based Internet filtering). Responses from recursive resolvers to clients |
|||
are the most vulnerable to undesired or malicious changes, while |
|||
communications between recursive resolvers and authoritative nameservers |
|||
often incorporate additional protection.</p> |
|||
|
|||
<p>To address this problem, Google Public DNS offers DNS resolution over an |
|||
encrypted HTTPS connection. DNS-over-HTTPS greatly enhances privacy and |
|||
security between a client and a recursive resolver, and complements DNSSEC |
|||
to provide end-to-end authenticated DNS lookups.</p> |
|||
|
|||
|
|||
<pre><span class='fu'>query</span>(<span class='no'>name</span>, <span class='kw'>type</span> <span class='kw'>=</span> <span class='st'>"1"</span>, <span class='kw'>edns_client_subnet</span> <span class='kw'>=</span> <span class='st'>"0.0.0.0/0"</span>)</pre> |
|||
|
|||
<h2>Arguments</h2> |
|||
<dl class="dl-horizontal"> |
|||
<dt>name</dt> |
|||
<dd>item to lookup. Valid characters are numbers, letters, hyphen, and dot. Length |
|||
must be between 1 and 255. Names with escaped or non-ASCII characters |
|||
are not supported. Internationalized domain names must use the |
|||
punycode format (e.g. "<code>xn--qxam</code>"). |
|||
If an IPv4 string is input, it will be transformed into |
|||
a proper format for reverse lookups.</dd> |
|||
<dt>type</dt> |
|||
<dd>RR type can be represented as a number in [1, 65535] or canonical |
|||
string (A, aaaa, etc). More information on RR types can be |
|||
found <a href = 'here'>http://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml#dns-parameters-4</a>. |
|||
You can use <code>255</code> for an <code>ANY</code> query.</dd> |
|||
<dt>edns_client_subnet</dt> |
|||
<dd>The edns0-client-subnet option. Format is an IP |
|||
address with a subnet mask. Examples: <code>1.2.3.4/24</code>, |
|||
<code>2001:700:300::/48</code>. |
|||
If you are using DNS-over-HTTPS because of privacy concerns, and do |
|||
not want any part of your IP address to be sent to authoritative |
|||
nameservers for geographic location accuracy, use |
|||
<code>edns_client_subnet=0.0.0.0/0</code>. Google Public DNS normally sends |
|||
approximate network information (usually replacing the last part of |
|||
your IPv4 address with zeroes). <code>0.0.0.0/0</code> is the default.</dd> |
|||
</dl> |
|||
|
|||
<div class="Value"> |
|||
<h2>Value</h2> |
|||
|
|||
<p>a <code>list</code> with the query result or <code>NULL</code> if an error occurred</p> |
|||
</div> |
|||
|
|||
<div class="Details"> |
|||
<h2>Details</h2> |
|||
|
|||
<p>To perform vectorized queries with only answers (and no metadata) use |
|||
<code>bulk_query()</code>).</p> |
|||
</div> |
|||
|
|||
<div class="References"> |
|||
<h2>References</h2> |
|||
|
|||
<p><a href = 'https://developers.google.com/speed/public-dns/docs/dns-over-https'>https://developers.google.com/speed/public-dns/docs/dns-over-https</a></p> |
|||
</div> |
|||
|
|||
<h2 id="examples">Examples</h2> |
|||
<pre class="examples"><div class='input'><span class='fu'>query</span>(<span class='st'>"rud.is"</span>)</div><div class='output co'>#> $Status |
|||
#> [1] 0 |
|||
#> |
|||
#> $TC |
|||
#> [1] FALSE |
|||
#> |
|||
#> $RD |
|||
#> [1] TRUE |
|||
#> |
|||
#> $RA |
|||
#> [1] TRUE |
|||
#> |
|||
#> $AD |
|||
#> [1] FALSE |
|||
#> |
|||
#> $CD |
|||
#> [1] FALSE |
|||
#> |
|||
#> $Question |
|||
#> name type |
|||
#> 1 rud.is. 1 |
|||
#> |
|||
#> $Answer |
|||
#> name type TTL data |
|||
#> 1 rud.is. 1 3599 104.236.112.222 |
|||
#> |
|||
#> $Additional |
|||
#> list() |
|||
#> |
|||
#> $edns_client_subnet |
|||
#> [1] "0.0.0.0/0" |
|||
#> |
|||
#> $Comment |
|||
#> [1] "Response from dns.mwebdns.eu.(84.246.125.230)" |
|||
#> |
|||
#> </div><div class='input'><span class='fu'>query</span>(<span class='st'>"example.com"</span>, <span class='st'>"255"</span>) <span class='co'># ANY query</span></div><div class='output co'>#> $Status |
|||
#> [1] 0 |
|||
#> |
|||
#> $TC |
|||
#> [1] FALSE |
|||
#> |
|||
#> $RD |
|||
#> [1] TRUE |
|||
#> |
|||
#> $RA |
|||
#> [1] TRUE |
|||
#> |
|||
#> $AD |
|||
#> [1] TRUE |
|||
#> |
|||
#> $CD |
|||
#> [1] FALSE |
|||
#> |
|||
#> $Question |
|||
#> name type |
|||
#> 1 example.com. 255 |
|||
#> |
|||
#> $Answer |
|||
#> name type TTL |
|||
#> 1 example.com. 6 3599 |
|||
#> 2 example.com. 46 21599 |
|||
#> 3 example.com. 46 21599 |
|||
#> 4 example.com. 46 3599 |
|||
#> 5 example.com. 46 59 |
|||
#> 6 example.com. 46 21599 |
|||
#> 7 example.com. 46 3599 |
|||
#> 8 example.com. 46 3599 |
|||
#> 9 example.com. 46 3599 |
|||
#> 10 example.com. 47 3599 |
|||
#> 11 example.com. 2 21599 |
|||
#> 12 example.com. 2 21599 |
|||
#> 13 example.com. 28 21599 |
|||
#> 14 example.com. 1 21599 |
|||
#> 15 example.com. 16 59 |
|||
#> 16 example.com. 16 59 |
|||
#> 17 example.com. 48 3599 |
|||
#> 18 example.com. 48 3599 |
|||
#> 19 example.com. 48 3599 |
|||
#> data |
|||
#> 1 sns.dns.icann.org. noc.dns.icann.org. 2015082669 7200 3600 1209600 3600 |
|||
#> 2 a 8 2 86400 1477364031 1475579385 1704 example.com. auGIKxU2oVxE9YE2ca9Xv5yuA2bP8uwIXW3t/d/wxGn6gnzuyVPefMHu5jT0z2ldwsqiB0+VGZpVguUeY7M22PCR0YwMGjB64/VQjsZQxAhaleVOLCRR2fya4EtOYvPRoWielQfDaS+4SBenCv0+nN8Gb3PMSsEe0ICjDSrzFRC0V7U= |
|||
#> 3 ns 8 2 86400 1477484364 1475701785 1704 example.com. bY3Q/b0KCwv+fkMGpKABu3oT3y+u2xcCoykkPDJrkVGRM16Z4WojbemTYFR++pbsbuVHptz6uUtX3m94kbyvmaLvXTxy1bwY0b8F/0Rz9Se9jy5mIUiatTHftqlz434PC+UnQKNiWZBYsgQJegTJZJLlJ7/KaiIzjrhltRFWwqsOaUA= |
|||
#> 4 soa 8 2 3600 1477543924 1475701785 1704 example.com. kWe1dnPv94cNlWhysZSKC3WC4/YlSTkG6/NZtFxxQcwPGlS7x+z4tRnNodhfLCpYw8D4loan0ybfWuRK/tzKminJsdt3lLqJxlXvcIzmEkI17xKUpcnD1jA0mhCfTptzLj4oCw4hhkC/d8JuD5jVmTskoiav36SV+cW1KngAY/UtPfw= |
|||
#> 5 txt 8 2 60 1477325190 1475536185 1704 example.com. ZaMZnuA5mh+GSbmL3nJxDbVZEdAu0BC1I71FgOPojAgRT5i2pn4+obRCd+aUw3c/grt1xzciBdhyw9jMvzcyEwcxk2WDS+REkEwzBn1YKodoo1YCjcXVUZscugSXc+hq+eFaTcRlW/siqWq+cy77VVsjdKJTAJrcK12abkjOnRrqfww= |
|||
#> 6 aaaa 8 2 86400 1477264070 1475449785 1704 example.com. M0ggDOmzYveQUd145aePLv19PwzYed7bDNsU74quoitB1nEZ8/r7ROdsT1m7VXi/BBimUVtezXBeVTc3/+2rEvhNsmX1WRrHN7seHzAiEt27TNogwn3e40YGCrwVIy+ypLRfZTi+Xlv/Ykd0H4Uvp0tW+69eel8MOlYRqSO5DMizMTc= |
|||
#> 7 nsec 8 2 3600 1476958241 1475176185 1704 example.com. WnXb1Y/Qkn5CmiRir6a0KssPjiPbEq7Tko0rWsQQyFFPrT+JB/6YUKStJY5K+GN+M2tWGW3jrOSbTVei0GLxjE/3BBLoYtLqLURjEk3Ki3n5zP5c9FMyQPf3fCC0ac/kSxw5V3nTs3eSnu8p/quseV8BqkU/hYgm1qsvQOyXVUSFync= |
|||
#> 8 dnskey 8 2 3600 1476561735 1474722585 31406 example.com. Oup7snCR/5iUmTuGyHfCfFCisTeqaJ8RHD6aE9wZQR2CCkKZHXO9dzfUL1gA6T35p4T0XeM+TMlv1uZhX157RnanPwyZluancmm5cNz5ub0vG7G/O4DxnSoLmATYoBJ7Ub9Ul4iWFUE7nvyJ23X2MhX6XTiplXYPnztiem6rJLV84JiemoKtvapWchRhFi4w4Y+BdjHfY7IRERjQYNhVuaus5+EeppIoot9srsj2suXePGC7dE0R8z9K/BTYvQi76kBlJzzF9fNNy5JvyZPEUpXATuRD7KfxBsWHaFajOnYOb1eDAL/C0H3hhjVBov2Pexp7YDIsJzIa2g8850LruQ== |
|||
#> 9 dnskey 8 2 3600 1476561735 1474722585 45620 example.com. f+aO6V+QKA4XgTC0Vqow59jBP/NlX6f7EEbaoXts0lp7Vaj/DBrhnS/sT4BbJb3VK1MvuPmNre5t0eyOeNCjbjrwIM2uf41GFuBI0AFxQx7o2PIdf1vrXsDnUGsZrMkYMv4gr802S7MXsvMdMN5cM0AA5Zol888sLP1yrHIcfNxG8hoUn3dS0L6nd/OxkL70+NjHBTjBQLqkLsK92ryJ0CWrzcJElszBRqfQfYGV/sJ84Ko4tjnBqRuki/rmTW5KQYdE7NI+MvERtGnep7RHb02Luk7BFPPD3uh353EYSAOVHrMH4fte6mJGcj3vxErfSWakRUXQpovLNcqYZNxoGQ== |
|||
#> 10 www.example.com. A NS SOA TXT AAAA RRSIG NSEC DNSKEY |
|||
#> 11 a.iana-servers.net. |
|||
#> 12 b.iana-servers.net. |
|||
#> 13 2606:2800:220:1:248:1893:25c8:1946 |
|||
#> 14 93.184.216.34 |
|||