Differences between version 14 and predecessor to the previous major change of DNS.
Other diffs: Previous Revision, Previous Author, or view the Annotated Edit History
Newer page: | version 14 | Last edited on Wednesday, November 24, 2004 2:21:29 pm | by PerryLorier | Revert |
Older page: | version 1 | Last edited on Tuesday, July 16, 2002 12:34:15 am | by CraigBox | Revert |
@@ -1,11 +1,67 @@
-An [Acronym] for __D__omain __N__ame __S__ervice -- the glue that binds the InterWeb together
.
+An [Acronym] for __D__omain __N__ame __S__ervice.
-DNS is
the [Protocol|CategoryProtocols
] that takes you typing '
www.JRandomWebsite.com'
into your web browser, finds
the InternetProtocol address of the site (
which would look something like 127
.
..1)
.
+The glue that binds the InterNet together --
the [Protocol] that takes you from
typing <tt>
www.JRandomWebsite.com</tt>
into your web browser to
the InternetProtocol address of the site which would look something like <tt>123
.45
.67
.89</tt> so that:
-Practical upshot?
You can remember www.amd.com instead of 64.41.192.105. And then they
can change the name to point somewhere else if they need to (if something like the CodeRedBungle happens).
+*
You can remember <tt>
www.amd.com</tt>
instead of <tt>
64.41.192.105</tt>
+* They
can change the name to point somewhere else if they need to (if something like the CodeRedBungle happens).
-DNS is usually provided by a program called named(8) - usually
a version of bind, the Berkeley Internet Name Daemon. See our page of NamedNotes
.
+[
DNS] does more than just that (a ForwardLookup) though -- there are different types of ResourceRecord~s. It
is usually provided by a program called named(8) -- commonly
a version of bind, the Berkeley Internet Name Daemon.
-''someone wanna go find all the rfc's that refer
to DNS
and link them here? -- PerryLorier'
'
+-----
+This is pasted here from a conversation on IRC because this information is important but I don
't have time
to sit down
and write it up as a nice paragraph, it should also have it
's facts verified:
-Yes Perry
, you do
.
+<verbatim>
+ <Isomer> people set up dns so that replies don't come from the same ip sometimes
+ <quantum_> i wonder about this: client c sends a resquest to s1
+ <quantum_> which forwards the request to s2
+ <quantum_> but using a wierd packet so the reply goes right back to c
+ <quantum_> bypassing s1 completely
+ <Isomer> that doesn't happen
+ <Isomer> it's more when you have a machine
+ <Isomer> h1
+ <Isomer> with two interfaces i1 and i2
+ <quantum_> (which is just stupid
, because then s1 cant cache)
+ <Isomer> which have one unique IP each
+ <Isomer> now the default route goes out i1
+ <Isomer> but i2 is the IP in DNS as the nameserver
+ <Isomer>
you send a query to i2, but when h1 creates a new packet and sends it
+ <Isomer> the OS attaches i1 as the source address instead of i2
+ <Isomer> because it uses the IP of the interface that the packet leaves from
+ <Isomer> see?
+ <Isomer> this can't be easily fixed either, coz if you use the IP of i1
+ <Isomer> then people on i2 have the same issue
+ <Isomer> bind fixes this by opening one port per interface
+ <Isomer> hence why you see lots of :53's for bind
+ <Isomer> but it can't bind to new port 53's when you bring up another interface after it's started and has dropped privileges
+ <quantum_> ah
+ <Isomer> so yeah
+ <Isomer> I should wiki this
+ <quantum_> yes
+ <quantum_> because many things were just made clear
+ <Isomer> which is why so many things have cone nat's
+ <Isomer> because if they were restrictive nats
+ <quantum_> all because recv() can tell you who sent the packet
+ <Isomer> then you can't query some dns servers
+ <quantum_> but not where it arrived in the machine
.
+ <Isomer> thats not the problem
+ <Isomer> the problem is sending a packet with a specific source address
+ <quantum_> im sure ive seen log messages about bind discovering new interfaces
+ <quantum_> so they could leave a suid root child which communicates to its parent over unix domain socket
+ <quantum_> to pass file descs
+ <quantum_> and does nothing else, so is (hopefully) mostly secure
+ <Isomer> you run bind as root?
+ <quantum_> (maybe they do this, i dont admin any bind nameservers, nor have looked at the source)
+</verbatim>
+-----
+See also:
+* NameServer
+* NamedNotes
+* [DNSHowTo]
+* RFC:1034 (Domain Names -- Concepts and Facilities)
+* RFC:1035 (Domain Names -- Implementations and Specification)
+* [ICANN]
+
+(Should there be a category dns?)
+
+----
+Part of CategoryNetworking and CategoryProtocols