Upload
garey-brent-cooper
View
222
Download
1
Tags:
Embed Size (px)
Citation preview
1
Simplified DNS Query under IPv4/IPv6 Mixed Environment<draft-kitamura-ipv6-simple-dns-query-00.txt>
Hiroshi KITAMURA
NEC Corporation
2
Index
• Goals and Non-goal for today• Analysis of current regular Two DNS queries method• Understanding Confirmation• Problems of the current
Two DNS queries transaction method• Proposal: 3 types of One DNS query transaction for
One domain name resolving methods.1. Two record types (AAAA and A) set Queries2. One special new record type (e.g., AAAA+A) set Queries3. One record type (AAAA) set Queries
with transformation of A (IPv4) record entries
• Discussions
3
Goals and Non-goal for today
1. Clarify problems of current regular Two DNS queries method
2. Propose a simplified regular DNS query method
(One DNS query for One domain name resolving)
Goal for today:
- Notice that the current Two-DNS queries method is problematic and should be refined.
Non-goal for today:
- Discuss which simplified query method is suitable.
4
Simple DNS Query: (used in IPv4 only era)DNS Server Client (w/ PF_INET)
Record Address
hostX A p (IPv4)
A q (IPv4)
pIPv4(A): q
Queries 1
Name: hostXType: A
Answers 1
Name: hostXType: AAddr: p(IPv4)Name: hostXType: AAddr: q(IPv4)
5
Current: DNS Server Status under IPv4 / IPv6 Mixed Environment
for (one domain name) hostX– Two IPv4 addresses (p, q)
are registered as A record
In addition: – Two IPv6 addresses (s, t)
are registered as AAAA record
Record Address
hostX A p (IPv4)
A q (IPv4)
hostX AAAA s (IPv6)
AAAA t (IPv6)
pIPv4(A):IPv6(AAAA):
q
s t
DNS Server
6
Various Implementation typesfor current Two DNS queries method
Type Name 1st Query 2nd QuerySerial / Parallel
4-6 Serial for A record for AAAA record SerialWindows Vista/7FreeBSD
6-4 Serial for AAAA record for A record SerialRFC4472 shows: not recommend now
4-6 Parallel for A record for AAAA record Parallel Some Linux
6-4 Parallel for AAAA record for A record Parallel
At least, 4 types of implementations are known.
7
4-6 (A first) Serial TypeDNS Server Client (w/ PF_UNSPEC)
Queries 1
Name: hostXType: A
Answers 1
Name: hostXType: AAddr: p(IPv4)Name: hostXType: AAddr: q(IPv4) Queries 2
Name: hostXType: AAAA
Answers 2
Name: hostXType: AAAAAddr: s(IPv6)Name: hostXType: AAAAAddr: t(IPv6)
Record Address
hostX A p (IPv4)
A q (IPv4)
hostX AAAA s (IPv6)
AAAA t (IPv6)
pIPv4(A):IPv6(AAAA):
q
s t
Popular ImplementationWindows Vista/7, FreeBSD adopt this
8
6-4 (AAAA first) Serial Type (RFC4472 shows)DNS Server Client (w/ PF_UNSPEC)
Queries 1
Name: hostXType: A
Answers 1
Name: hostXType: AAddr: p(IPv4)Name: hostXType: AAddr: q(IPv4)
Queries 2
Name: hostXType: AAAA
Answers 2
Name: hostXType: AAAAAddr: s(IPv6)Name: hostXType: AAAAAddr: t(IPv6)
Record Address
hostX A p (IPv4)
A q (IPv4)
hostX AAAA s (IPv6)
AAAA t (IPv6)
pIPv4(A):IPv6(AAAA):
q
s tNOT Recommended
Now!
to avoid confusion RFC4472 (dnsop) should
be updated???
We have to remember order IndependenceIndependence • “Issued queries” order• “listed entries” order of getaddrinfo() return
9
4-6 (A first) Parallel TypeDNS Server Client (w/ PF_UNSPEC)
Queries 1
Name: hostXType: A
Answers 1
Name: hostXType: AAddr: p(IPv4)Name: hostXType: AAddr: q(IPv4)
Queries 2
Name: hostXType: AAAA
Answers 2
Name: hostXType: AAAAAddr: s(IPv6)Name: hostXType: AAAAAddr: t(IPv6)
Record Address
hostX A p (IPv4)
A q (IPv4)
hostX AAAA s (IPv6)
AAAA t (IPv6)
pIPv4(A):IPv6(AAAA):
q
s t
Popular Implementation, tooSome Linux (after glibc2.10)
adopt this
10
6-4 (AAAA first) Parallel TypeDNS Server Client (w/ PF_UNSPEC)
Queries 1
Name: hostXType: A
Answers 1
Name: hostXType: AAddr: p(IPv4)Name: hostXType: AAddr: q(IPv4)
Queries 2
Name: hostXType: AAAA
Answers 2
Name: hostXType: AAAAAddr: s(IPv6)Name: hostXType: AAAAAddr: t(IPv6)
Record Address
hostX A p (IPv4)
A q (IPv4)
hostX AAAA s (IPv6)
AAAA t (IPv6)
pIPv4(A):IPv6(AAAA):
q
s t
11
Understanding Confirmation
Status of DNS servers Best practical solution?
When IPv6 is started
Number of IPv6 ready DNS servers is small
WAS best practical solution at that time
NowMost of the DNS servers
are IPv6 readywill NOT become best
practical solution anymore
Q: Why we have adopted Two DNS queries method?A: Though it is less efficient, in order to avoid problems that is caused by meeting non-IPv6 ready DNS servers 1: keep IPv4(A) DNS query as it is. 2: Introduce IPv6(AAAA) DNS query independently
It must be time to reconsider or refine DNS query method under IPv4/IPv6 mixed environment, NOW!
12
Problems of current Two-queries method 1/2(from technical or abstract viewpoint)
Two-queries method is: – Latency is bad: wait for receiving two answers.
• If either one of two answers is lost, too complicated recover procedures are required.
– twice much traffic (compared to one query)– complicated, inefficient and problematic. – not suitable and not optimized for
current IPv4/IPv6 mixed environment.– temporal and will never last to
the future IPv6 fully deployed environment.
13
Problems of current Two-queries method 2/2(from operational or end-user viewpoint)
Worst problems:Two-queries method is a hotbed to bring
unsolvable problems for low-skill general end users, and it becomes one of the biggest obstaclesbecomes one of the biggest obstacles to deploy the IPv6 to the Internet.
When low-skill end users meet such problems, solution for them is “Uninstall IPv6 protocol stack”.
It is clear that this is “put the cart before the horse” type bad solution, but there are no choice for them.
14
One of unsolvable problems example for low-skill general end users
• Two types of Application implementations
A: (try once type) NoNo loop after getaddrinfo()
B: (multiple try type) recommended style has try & error loop after getaddrinfo()
• If an application get an unreachable IPv6 address as a first entry of getaddrinfo() return.
A: can notnot connect() / communicate
B: takes long time (because first trial is failed)
15
What we have to do NOW?
Our mission is:to provide “Simplified DNS query method” that can solve technical problems and reduce to cause unsolvable problems for low-skill general end users.
Hopefully, the method should be optimized for current IPv4/IPv6 mixed environment and will last to the future IPv6 fully deployed environment.
We propose “One DNS query method” to accomplish this mission
16
Solution Proposal:3 types of One DNS query method
for One domain name resolving
We can discuss 3 types of methods.
1. Two record types (AAAA and A) set Queries
2. One special new record type (e.g., AAAA+A) set Queries
3. One record type (AAAA) set Queries with transformation of A (IPv4) record entries
17
1: Two record types (AAAA and A) set Queries
DNS Server Client (w/ PF_UNSPEC)
Queries 1
Answers 1
Name: hostXType: AAddr: p(IPv4)Name: hostXType: AAddr: q(IPv4)Name: hostXType: AAAAAddr: s(IPv6)Name: hostXType: AAAAAddr: t(IPv6)
Name: hostXType: A Name: hostX Type: AAAA Record Address
hostX A p (IPv4)
A q (IPv4)
hostX AAAA s (IPv6)
AAAA t (IPv6)
pIPv4(A):IPv6(AAAA):
q
s t Two record types set
18
2: One special new record type (e.g., AAAA+A ) set Queries
DNS Server Client (w/ PF_UNSPEC)
Queries 1
Answers 1
Name: hostXType: AAddr: p(IPv4)Name: hostXType: AAddr: q(IPv4)Name: hostXType: AAAAAddr: s(IPv6)Name: hostXType: AAAAAddr: t(IPv6)
Name: hostXType: special new (e.g., AAAA+A)
Record Address
hostX A p (IPv4)
A q (IPv4)
hostX AAAA s (IPv6)
AAAA t (IPv6)
pIPv4(A):IPv6(AAAA):
q
s t
One special new record (e.g.,A
AAA+A) type set
Use Pseudo-RR is also possible
19
3: One record type (AAAA) set Queries with transformation of A (IPv4) record entries
DNS Server Client (w/ PF_INET6)
Queries 1
Answers 1
Name: hostXType: AAAAAddr: p’(IPv6)Name: hostXType: AAAAAddr: q’(IPv6)Name: hostXType: AAAAAddr: s(IPv6)Name: hostXType: AAAAAddr: t(IPv6)
Name: hostX Type: AAAA
Record Address
hostX A p (IPv4)
A q (IPv4)
hostX AAAA s (IPv6)
AAAA t (IPv6)
pIPv4(A):IPv6(AAAA):
q
s t
Record Address
hostX AAAA p’ (IPv6)
AAAA q’ (IPv6)
hostX AAAA s (IPv6)
AAAA t (IPv6)
Transform by using“IPv4 mapped IPv6 address” Very Unique Solution
No modifications areneeded on the Clients
One record type (AAAA) set
with IPv4 mapped address Transformation
20
Effects brought by One DNS query method
• Simple and technical problems are solved• Efficient• Latency is improved• Query traffic is decreased (becomes half)
• If you choose Type 3(AAAA only w/ mapped address), no modifications are needed on Clients.
21
Discussions
How do you think on this issue?
Q: How many people
1. current Two-queries method is problematic?
2. shown problems are worthwhile for solving?
3. agree with going forward this I-D?
4. either of the proposed One-query methods can become good solution?
• Please let us know you comments.– Which types of One-query methods is preferable?