<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>DNS Role on Gravity</title><link>https://deploy-preview-2170--beryju-gravity.netlify.app/docs/dns/</link><description>Recent content in DNS Role on Gravity</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://deploy-preview-2170--beryju-gravity.netlify.app/docs/dns/index.xml" rel="self" type="application/rss+xml"/><item><title>Zones</title><link>https://deploy-preview-2170--beryju-gravity.netlify.app/docs/dns/zones/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://deploy-preview-2170--beryju-gravity.netlify.app/docs/dns/zones/</guid><description>&lt;h2 id="handlers"&gt;Handlers&lt;/h2&gt;
&lt;p&gt;The order of handler matters; Gravity will send a query to each handler in the order they are configured until a response is returned.&lt;/p&gt;
&lt;p&gt;The handler configuration consists of a list of individual handler configurations. All list entries require a &lt;code&gt;type&lt;/code&gt; attribute which must match one of the headers listed below. For example:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;- &lt;span style="color:#f92672"&gt;type&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;forward_blocky&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;to&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; - &lt;span style="color:#ae81ff"&gt;8.8.8.8&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;cache_ttl&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;3600&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;- &lt;span style="color:#f92672"&gt;type&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;forward_ip&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;to&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; - &lt;span style="color:#ae81ff"&gt;8.8.8.8&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;or&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;- &lt;span style="color:#f92672"&gt;type&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;memory&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;- &lt;span style="color:#f92672"&gt;type&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;etcd&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="etcd"&gt;&lt;code&gt;etcd&lt;/code&gt;&lt;/h3&gt;
&lt;p&gt;Attempt to reply to query by looking for records in etcd. Keep in mind that because this is configured on zone level, this handler will only look for matching records in the current zone.&lt;/p&gt;</description></item><item><title>Hooks</title><link>https://deploy-preview-2170--beryju-gravity.netlify.app/docs/dns/hooks/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://deploy-preview-2170--beryju-gravity.netlify.app/docs/dns/hooks/</guid><description>&lt;h2 id="hook-methods"&gt;Hook Methods&lt;/h2&gt;
&lt;h3 id="ondnsrequestbeforerequest"&gt;&lt;code&gt;onDNSRequestBefore(request)&lt;/code&gt;&lt;/h3&gt;
&lt;p&gt;Called before the DNS response is generated.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;request&lt;/code&gt;: See &lt;a href="https://pkg.go.dev/beryju.io/gravity/pkg/roles/dns/utils#DNSRequest"&gt;https://pkg.go.dev/beryju.io/gravity/pkg/roles/dns/utils#DNSRequest&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="ondnsrequestafterrequest-response"&gt;&lt;code&gt;onDNSRequestAfter(request, response)&lt;/code&gt;&lt;/h3&gt;
&lt;p&gt;Called after the DNS response is generated.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;request&lt;/code&gt;: See &lt;a href="https://pkg.go.dev/beryju.io/gravity/pkg/roles/dns/utils#DNSRequest"&gt;https://pkg.go.dev/beryju.io/gravity/pkg/roles/dns/utils#DNSRequest&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;response&lt;/code&gt;: See &lt;a href="https://pkg.go.dev/github.com/miekg/dns#Msg"&gt;https://pkg.go.dev/github.com/miekg/dns#Msg&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="environment"&gt;Environment&lt;/h2&gt;


 




	






 






 &lt;h3 id="gravity-object"&gt;&lt;code&gt;gravity&lt;/code&gt; Object&lt;/h3&gt;
&lt;h4 id="logmsg-any"&gt;&lt;code&gt;log(msg: any)&lt;/code&gt;&lt;/h4&gt;
&lt;p&gt;Logs a message to the stdout of the Gravity node this hook is run on.&lt;/p&gt;
&lt;h4 id="node-string"&gt;&lt;code&gt;node: string&lt;/code&gt;&lt;/h4&gt;
&lt;p&gt;The identifier of the node this hook is run on.&lt;/p&gt;
&lt;h4 id="version-string"&gt;&lt;code&gt;version: string&lt;/code&gt;&lt;/h4&gt;
&lt;p&gt;The version of Gravity on the node this hook is run on.&lt;/p&gt;</description></item><item><title>Role configuration</title><link>https://deploy-preview-2170--beryju-gravity.netlify.app/docs/dns/role_config/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://deploy-preview-2170--beryju-gravity.netlify.app/docs/dns/role_config/</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;code&gt;port&lt;/code&gt;: The port the DNS server listens on (defaults to port 53).&lt;/li&gt;
&lt;/ul&gt;</description></item></channel></rss>