rfc2766_4.1_dns_v4tov6.seq - Verify IPv6 <-> IPv4 header
translation in accordance with RFC2766 [NATPT]
Router
rfc2766_4.1_dns_v4tov6.seq [-tooloption ...]
-p rfc2766_4.1_dns_v4tov6.def
Before this test starts, run initialize_natpt.seq.
This test verifies that NUT adjusts header checksum for TCP/UDP
packets.
Network Topology
Link0
--------------------------
| |
TN NUT
| |
--------------------------
Link1
TN -- (Link0) -- NUT NUT -- (Link1) -- TN
--------------------- ------------------------
1.1.
<===================
IPv4 UDP packet
IPv4 Header
src address : TN LINK1 IPv4 address
dst address : TN LINK0 IPv4 address
DF = 1
UDP packet
SourcePort = 1234;
DestinationPort = 53
DNS query
Transaction ID = 0xABCD
Flags = 0x0100 (Standard query)
Questions: 1
Answer RRs: 0
Authority RRs: 0
Additional RRs: 0
Queries
1.0.168.192.in-addr.arpa: type PTR, class inet
Name: 1.1.168.192.in-addr.arpa
Type: domain name pointer
Class: inet
1.2.
<>
<===================
IPv6 UDP packet
IPv6 Header
src address : TN LINK1 IPv4 embedded IPv6 address
dst address : TN LINK0 IPv4 embedded IPv6 address
UDP packet
SourcePort = 1234;
DestinationPort = 53
DNS query
Transaction ID = 0xAAAA
Flags = 0x0100 (Standard query)
Questions: 1
Answer RRs: 0
Authority RRs: 0
Additional RRs: 0
Queries
1.0.168.192.in-addr.arpa: type PTR, class inet
Name: 1.1.168.192.in-addr.arpa
Type: domain name pointer
Class: inet
2.1.
<===================
IPv4 UDP packet
IPv4 Header
src address : TN LINK1 IPv4 address
dst address : TN LINK0 IPv4 address
DF = 1
UDP packet
SourcePort = 1234;
DestinationPort = 53
DNS query
Transaction ID = 0xABCD
Flags = 0x8580 (Standard query response, No error)
Questions: 1
Answer RRs: 1
Authority RRs: 2
Additional RRs: 2
Queries
1.0.168.192.in-addr.arpa: type PTR, class inet
Answers
1.0.168.192.in-addr.arpa: type PTR, class inet, ptr ns1.ericsson.se
Authoritative nameservers
0.168.192.in-addr.arpa: type NS, class inet, ns ns1.ericsson.se
0.168.192.in-addr.arpa: type NS, class inet, ns ns2.ericsson.se
Additional records
ns1.ericsson.se: type A, class inet, addr 192.168.0.1
ns2.ericsson.se: type A, class inet, addr 192.168.0.2
2.2.
<>
<===================
IPv6 UDP packet
IPv6 Header
src address : TN LINK1 IPv4 embedded IPv6 address
dst address : TN LINK0 IPv4 embedded IPv6 address
UDP packet
SourcePort = 1234;
DestinationPort = 53
DNS query
Transaction ID = 0xAAAA
Flags = 0x0100 (Standard query)
Questions = 1
Answer RRs: 1
Authority RRs: 2
Additional RRs: 2
Queries
1.1.168.192.in-addr.arpa: type PTR, class inet
Name: 1.1.168.192.in-addr.arpa
Type: domain name pointer
Class: inet
3.1.
<===================
IPv4 UDP packet
IPv4 Header
src address : TN LINK1 IPv4 address
dst address : TN LINK0 IPv4 address
DF = 1
UDP packet
SourcePort = 1234;
DestinationPort = 53
DNS query
Transaction ID = 0xABCD
Flags = 0x0100 (Standard query)
Questions: 1
Answer RRs: 0
Authority RRs: 0
Additional RRs: 0
Queries
ric.ericsson.se: type A, class inet
Name: ric.ericsson.se
Type: Host address
Class: inet
3.2.
<>
<===================
IPv6 UDP packet
IPv6 Header
src address : TN LINK1 IPv4 embedded IPv6 address
dst address : TN LINK0 IPv4 embedded IPv6 address
UDP packet
SourcePort = 1234;
DestinationPort = 53
DNS query
Transaction ID = 0xAAAA
Flags = 0x0100 (Standard query)
Questions: 1
Answer RRs: 0
Authority RRs: 0
Additional RRs: 0
Queries
1.0.168.192.in-addr.arpa: type PTR, class inet
Name: 1.1.168.192.in-addr.arpa
Type: domain name pointer
Class: inet
4.1.
<===================
IPv4 UDP packet
IPv4 Header
src address : TN LINK1 IPv4 address
dst address : TN LINK0 IPv4 address
DF = 1
UDP packet
SourcePort = 1234;
DestinationPort = 53
DNS query
Transaction ID = 0xABCD
Flags = 0x8580 (Standard query response, No error)
Questions: 1
Answer RRs: 1
Authority RRs: 2
Additional RRs: 2
Queries
ric.ericsson.se: type A, class inet
Answers
ric.ericsson.se: type A, class inet, addr 192.168.0.3
Authoritative nameservers
ericsson.se: type NS, class inet, ns ns1.ericsson.se
ericsson.se: type NS, class inet, ns ns2.ericsson.se
Additional records
ns1.ericsson.se: type A, class inet, addr 192.168.0.1
ns2.ericsson.se: type A, class inet, addr 192.168.0.2
4.2.
<>
<===================
IPv6 UDP packet
IPv6 Header
src address : TN LINK1 IPv4 embedded IPv6 address
dst address : TN LINK0 IPv4 embedded IPv6 address
UDP packet
SourcePort = 1234;
DestinationPort = 53
DNS query
Transaction ID = 0xAAAA
Flags = 0x0100 (Standard query)
Questions = 1
Answer RRs: 1
Authority RRs: 2
Additional RRs: 2
Queries
1.1.168.192.in-addr.arpa: type PTR, class inet
Name: 1.1.168.192.in-addr.arpa
Type: domain name pointer
Class: inet
<< PASS >>
NUT translated (compressed or uncompressed) IPv4 DNS packages
to (compressed or uncompressed) IPv6 DNS packages.
IPv4 "A" records are changed to IPv6 "AAAA" records, and
IPv4 "IN-ADDR.ARPA" to "IP6.INT". << FAIL >>
NUT does not translate DNS packages properly.
B4.1 Use of DNS-ALG The DNS-ALG on the NAT-PT device
would modify DNS Queries for A records going into the V6 domain as
follows: (Note that a TCP/UDP DNS packet is recognised by the fact
that its source or destination port number is 53) a) For Node Name to Node Address Query requests: Change the Query
type from "A" to "AAAA" or "A6".
b) For Node address to Node name query requests: Replace the
string "IN-ADDR.ARPA" with the string "IP6.INT". Replace the
V4 address octets (in reverse order) preceding the string "IN-
ADDR.ARPA" with the corresponding V6 address (if there exists a
map) octets in reverse order. The TTL values on all DNS resource records (RRs) passing through
NAT-PT SHOULD be set to 0 so that DNS servers/clients do not cache
temporarily assigned RRs. Note, however, that due to some buggy DNS
client implementations a value of 1 might in some cases work better.
The TTL values should be left unchanged for statically mapped
addresses.
perldoc V6evalTool