mirror of
https://github.com/coredns/coredns.git
synced 2025-10-27 16:24:19 -04:00
plugin/nsid: Small doc cleanup (#1293)
add an example and some typos fixed.
This commit is contained in:
@@ -1,9 +1,9 @@
|
|||||||
# nsid
|
# nsid
|
||||||
|
|
||||||
*nsid* add an identifier of this server to each reply.
|
*nsid* adds an identifier of this server to each reply.
|
||||||
|
|
||||||
This plugin implements RFC 5001 and adds an EDNS0 OPT resource record to replies that uniquely
|
This plugin implements RFC 5001 and adds an EDNS0 OPT resource record to replies that uniquely
|
||||||
identifies the server. This can be useful in anycast setups to see which server was responsible for
|
identify the server. This is useful in anycast setups to see which server was responsible for
|
||||||
generating the reply and for debugging.
|
generating the reply and for debugging.
|
||||||
|
|
||||||
## Syntax
|
## Syntax
|
||||||
@@ -22,6 +22,25 @@ Enable nsid:
|
|||||||
|
|
||||||
~~~ corefile
|
~~~ corefile
|
||||||
. {
|
. {
|
||||||
nsid
|
whoami
|
||||||
|
nsid Use The Force
|
||||||
}
|
}
|
||||||
~~~
|
~~~
|
||||||
|
|
||||||
|
And now a client with NSID support will see an OPT record with the NSID option:
|
||||||
|
|
||||||
|
~~~ sh
|
||||||
|
% dig +nsid @localhost a whoami.example.org
|
||||||
|
|
||||||
|
;; Got answer:
|
||||||
|
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 46880
|
||||||
|
;; flags: qr aa rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 3
|
||||||
|
|
||||||
|
....
|
||||||
|
|
||||||
|
; OPT PSEUDOSECTION:
|
||||||
|
; EDNS: version: 0, flags:; udp: 4096
|
||||||
|
; NSID: 55 73 65 20 54 68 65 20 46 6f 72 63 65 ("Use The Force")
|
||||||
|
;; QUESTION SECTION:
|
||||||
|
;whoami.example.org. IN A
|
||||||
|
~~~
|
||||||
|
|||||||
@@ -29,7 +29,6 @@ func (n Nsid) ServeDNS(ctx context.Context, w dns.ResponseWriter, r *dns.Msg) (i
|
|||||||
if _, ok := o.(*dns.EDNS0_NSID); ok {
|
if _, ok := o.(*dns.EDNS0_NSID); ok {
|
||||||
nw := &ResponseWriter{ResponseWriter: w, Data: n.Data}
|
nw := &ResponseWriter{ResponseWriter: w, Data: n.Data}
|
||||||
return plugin.NextOrFailure(n.Name(), n.Next, ctx, nw, r)
|
return plugin.NextOrFailure(n.Name(), n.Next, ctx, nw, r)
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user