| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .\" Generated by Mmark Markdown Processer - mmark.nl | 
					
						
							| 
									
										
										
										
											2019-08-01 14:00:37 +00:00
										 |  |  | .TH "COREDNS-HOSTS" 7 "August 2019" "CoreDNS" "CoreDNS Plugins" | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-06-24 12:37:27 +01:00
										 |  |  | .SH "NAME" | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .PP | 
					
						
							|  |  |  | \fIhosts\fP - enables serving zone data from a \fB\fC/etc/hosts\fR style file. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-06-24 12:37:27 +01:00
										 |  |  | .SH "DESCRIPTION" | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .PP | 
					
						
							|  |  |  | The hosts plugin is useful for serving zones from a \fB\fC/etc/hosts\fR file. It serves from a preloaded | 
					
						
							|  |  |  | file that exists on disk. It checks the file for changes and updates the zones accordingly. This | 
					
						
							|  |  |  | plugin only supports A, AAAA, and PTR records. The hosts plugin can be used with readily | 
					
						
							|  |  |  | available hosts files that block access to advertising servers. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .PP | 
					
						
							| 
									
										
										
										
											2019-07-28 10:02:52 +00:00
										 |  |  | The plugin reloads the content of the hosts file every 5 seconds. Upon reload, CoreDNS will use the | 
					
						
							|  |  |  | new definitions. Should the file be deleted, any inlined content will continue to be served. When | 
					
						
							|  |  |  | the file is restored, it will then again be used. | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-08-01 14:00:37 +00:00
										 |  |  | .PP | 
					
						
							|  |  |  | If you want to pass the request to the rest of the plugin chain if there is no match in the \fIhosts\fP | 
					
						
							|  |  |  | plugin, you must specify the \fB\fCfallthrough\fR option. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .PP | 
					
						
							|  |  |  | This plugin can only be used once per Server Block. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-06-24 12:37:27 +01:00
										 |  |  | .SH "THE HOSTS FILE" | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .PP | 
					
						
							| 
									
										
										
										
											2019-07-28 10:02:52 +00:00
										 |  |  | Commonly the entries are of the form \fB\fCIP_address canonical_hostname [aliases...]\fR as explained by | 
					
						
							|  |  |  | the hosts(5) man page. | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | .PP | 
					
						
							| 
									
										
										
										
											2018-06-13 11:02:14 +01:00
										 |  |  | Examples: | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .PP | 
					
						
							|  |  |  | .RS | 
					
						
							| 
									
										
										
										
											2018-06-13 11:02:14 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .nf | 
					
						
							|  |  |  | 127.0.0.1       localhost | 
					
						
							|  |  |  | 192.168.1.10    example.com            example | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-06-13 11:02:14 +01:00
										 |  |  | ::1                     localhost ip6\-localhost ip6\-loopback | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | fdfc:a744:27b5:3b0e::1  example.com example | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-06-13 11:02:14 +01:00
										 |  |  | .fi | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .RE | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-06-24 12:37:27 +01:00
										 |  |  | .SS "PTR RECORDS" | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .PP | 
					
						
							| 
									
										
										
										
											2019-07-28 10:02:52 +00:00
										 |  |  | PTR records for reverse lookups are generated automatically by CoreDNS (based on the hosts file | 
					
						
							|  |  |  | entries) and cannot be created manually. | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-06-24 12:37:27 +01:00
										 |  |  | .SH "SYNTAX" | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .PP | 
					
						
							|  |  |  | .RS | 
					
						
							| 
									
										
										
										
											2018-01-04 12:53:07 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .nf | 
					
						
							|  |  |  | hosts [FILE [ZONES...]] { | 
					
						
							| 
									
										
										
										
											2018-01-04 12:53:07 +00:00
										 |  |  |     [INLINE] | 
					
						
							| 
									
										
										
										
											2019-02-27 20:32:48 +00:00
										 |  |  |     ttl SECONDS | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  |     no\_reverse | 
					
						
							| 
									
										
										
										
											2019-02-27 20:32:48 +00:00
										 |  |  |     reload DURATION | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  |     fallthrough [ZONES...] | 
					
						
							| 
									
										
										
										
											2018-01-04 12:53:07 +00:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-04 12:53:07 +00:00
										 |  |  | .fi | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .RE | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .IP \(bu 4 | 
					
						
							|  |  |  | \fBFILE\fP the hosts file to read and parse. If the path is relative the path from the \fIroot\fP | 
					
						
							|  |  |  | directive will be prepended to it. Defaults to /etc/hosts if omitted. We scan the file for changes | 
					
						
							|  |  |  | every 5 seconds. | 
					
						
							|  |  |  | .IP \(bu 4 | 
					
						
							|  |  |  | \fBZONES\fP zones it should be authoritative for. If empty, the zones from the configuration block | 
					
						
							|  |  |  | are used. | 
					
						
							|  |  |  | .IP \(bu 4 | 
					
						
							|  |  |  | \fBINLINE\fP the hosts file contents inlined in Corefile. If there are any lines before fallthrough | 
					
						
							|  |  |  | then all of them will be treated as the additional content for hosts file. The specified hosts | 
					
						
							|  |  |  | file path will still be read but entries will be overridden. | 
					
						
							|  |  |  | .IP \(bu 4 | 
					
						
							|  |  |  | \fB\fCttl\fR change the DNS TTL of the records generated (forward and reverse). The default is 3600 seconds (1 hour). | 
					
						
							|  |  |  | .IP \(bu 4 | 
					
						
							| 
									
										
										
										
											2019-08-01 14:00:37 +00:00
										 |  |  | \fB\fCreload\fR change the period between each hostsfile reload. A time of zero seconds disables the | 
					
						
							|  |  |  | feature. Examples of valid durations: "300ms", "1.5h" or "2h45m". See Go's | 
					
						
							|  |  |  | time | 
					
						
							|  |  |  | \[la]https://godoc.org/time\[ra]. package. | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .IP \(bu 4 | 
					
						
							|  |  |  | \fB\fCno_reverse\fR disable the automatic generation of the \fB\fCin-addr.arpa\fR or \fB\fCip6.arpa\fR entries for the hosts | 
					
						
							|  |  |  | .IP \(bu 4 | 
					
						
							|  |  |  | \fB\fCfallthrough\fR If zone matches and no record can be generated, pass request to the next plugin. | 
					
						
							|  |  |  | If \fB[ZONES...]\fP is omitted, then fallthrough happens for all zones for which the plugin | 
					
						
							|  |  |  | is authoritative. If specific zones are listed (for example \fB\fCin-addr.arpa\fR and \fB\fCip6.arpa\fR), then only | 
					
						
							|  |  |  | queries for those zones will be subject to fallthrough. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-06-24 12:37:27 +01:00
										 |  |  | .SH "EXAMPLES" | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .PP | 
					
						
							|  |  |  | Load \fB\fC/etc/hosts\fR file. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .PP | 
					
						
							|  |  |  | .RS | 
					
						
							| 
									
										
										
										
											2018-01-04 12:53:07 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .nf | 
					
						
							|  |  |  | \&. { | 
					
						
							| 
									
										
										
										
											2018-01-04 12:53:07 +00:00
										 |  |  |     hosts | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-04 12:53:07 +00:00
										 |  |  | .fi | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .RE | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .PP | 
					
						
							|  |  |  | Load \fB\fCexample.hosts\fR file in the current directory. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .PP | 
					
						
							|  |  |  | .RS | 
					
						
							| 
									
										
										
										
											2018-01-04 12:53:07 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .nf | 
					
						
							|  |  |  | \&. { | 
					
						
							|  |  |  |     hosts example.hosts | 
					
						
							| 
									
										
										
										
											2018-03-25 17:18:04 +01:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-04 12:53:07 +00:00
										 |  |  | .fi | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .RE | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .PP | 
					
						
							|  |  |  | Load example.hosts file and only serve example.org and example.net from it and fall through to the | 
					
						
							|  |  |  | next plugin if query doesn't match. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .PP | 
					
						
							|  |  |  | .RS | 
					
						
							| 
									
										
										
										
											2018-01-04 12:53:07 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .nf | 
					
						
							|  |  |  | \&. { | 
					
						
							|  |  |  |     hosts example.hosts example.org example.net { | 
					
						
							| 
									
										
										
										
											2018-03-25 17:18:04 +01:00
										 |  |  |         fallthrough | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2018-01-04 12:53:07 +00:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-04 12:53:07 +00:00
										 |  |  | .fi | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .RE | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .PP | 
					
						
							|  |  |  | Load hosts file inlined in Corefile. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .PP | 
					
						
							|  |  |  | .RS | 
					
						
							| 
									
										
										
										
											2018-01-04 12:53:07 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .nf | 
					
						
							|  |  |  | \&. { | 
					
						
							|  |  |  |     hosts example.hosts example.org { | 
					
						
							|  |  |  |         10.0.0.1 example.org | 
					
						
							| 
									
										
										
										
											2018-03-25 17:18:04 +01:00
										 |  |  |         fallthrough | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2018-01-04 12:53:07 +00:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-04 12:53:07 +00:00
										 |  |  | .fi | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .RE | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-06-24 12:37:27 +01:00
										 |  |  | .SH "SEE ALSO" | 
					
						
							| 
									
										
										
										
											2019-04-06 08:42:40 +01:00
										 |  |  | .PP | 
					
						
							|  |  |  | The form of the entries in the \fB\fC/etc/hosts\fR file are based on IETF RFC 952 | 
					
						
							|  |  |  | \[la]https://tools.ietf.org/html/rfc952\[ra] which was updated by IETF RFC 1123 | 
					
						
							|  |  |  | \[la]https://tools.ietf.org/html/rfc1123\[ra]. | 
					
						
							|  |  |  | 
 |