; config options
server:
	do-nat64: yes
	target-fetch-policy: "0 0 0 0 0"

stub-zone:
	name: "."
	stub-addr: 2001:db8::1
CONFIG_END

SCENARIO_BEGIN Test NAT64 transport for a v4-only server.

RANGE_BEGIN 0 100
	ADDRESS 2001:db8::1
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY QR NOERROR
SECTION QUESTION
. IN NS
SECTION ANSWER
. IN NS	FAKE.ROOT.
SECTION ADDITIONAL
FAKE.ROOT.	IN	AAAA	2001:db8::1
ENTRY_END

ENTRY_BEGIN
MATCH opcode subdomain
ADJUST copy_id copy_query
REPLY QR NOERROR
SECTION QUESTION
v4only. IN NS
SECTION AUTHORITY
v4only.	IN NS	ns.v4only.
SECTION ADDITIONAL
ns.v4only.	IN	A	192.0.2.1
ENTRY_END

RANGE_END

; replies from NS over "NAT64"

RANGE_BEGIN 0 100
	ADDRESS 64:ff9b::c000:0201

; A over NAT64
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY AA QR NOERROR
SECTION QUESTION
ns.v4only. IN A
SECTION ANSWER
ns.v4only.	IN	A	192.0.2.1
SECTION AUTHORITY
v4only.		IN	NS	ns.v4only.
ENTRY_END

; no AAAA
ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY AA QR NOERROR
SECTION QUESTION
ns.v4only.	IN	AAAA
SECTION AUTHORITY
v4only.		IN	NS	ns.v4only.
SECTION ADDITIONAL
ns.v4only.	IN	A	192.0.2.1
ENTRY_END

ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY AA QR NOERROR
SECTION QUESTION
v4only.		IN	NS
SECTION ANSWER
v4only.		IN	NS	ns.v4only.
SECTION ADDITIONAL
ns.v4only.	IN	A	192.0.2.1
ENTRY_END

ENTRY_BEGIN
MATCH opcode qtype qname
ADJUST copy_id
REPLY AA QR NOERROR
SECTION QUESTION
test.v4only.	IN	A
SECTION ANSWER
test.v4only.	IN	A	192.0.2.2
SECTION AUTHORITY
v4only.		IN	NS	ns.v4only.
SECTION ADDITIONAL
ns.v4only.	IN	A	192.0.2.1
ENTRY_END

RANGE_END

STEP 1 QUERY
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
test.v4only. IN A
ENTRY_END

STEP 20 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR RD RA NOERROR
SECTION QUESTION
test.v4only.	IN	A
SECTION ANSWER
test.v4only.	IN	A	192.0.2.2
ENTRY_END

SCENARIO_END
