# THE ENVIRONMENTfoo.example.org = 1.2.3.4 = A public server with only an IPv4 address14141 = TCP Test Port that is listening on 1.2.3.464:ff9b::aaaa:bbbb = the (anonymised) IPv6 translation of 1.2.3.4 address2001:db8:0000:... = the (anonymised) IPv6 prefix (assigned by ISP)2001:db8:0000:2::1 = OPNsense incl. Tayga and Unbound DNS100.100.100.136/29 = the (anonymised) public IPv4 network (assigned by ISP)# CONNECTING FROM VLAN2 HOST# server1 (2001:db8:0000:2::10, vlan2)$ nc foo.example.org 14141<hangs until timeout># TCPDUMPS AT OPNSENSEopnsense$ tcpdump -n -i bge0_vlan2IP6 2001:db8:0000:2::10.52218 > 2001:db8:0000:2::1.53: 45473+ A? foo.example.org. (35)IP6 2001:db8:0000:2::10.52218 > 2001:db8:0000:2::1.53: 44454+ AAAA? foo.example.org. (35)IP6 2001:db8:0000:2::1.53 > 2001:db8:0000:2::10.52218: 45473 1/0/0 A 1.2.3.4 (51)IP6 2001:db8:0000:2::1.53 > 2001:db8:0000:2::10.52218: 44454 1/0/0 AAAA 64:ff9b::aaaa:bbbb (63)opnsense$ tcpdump -n -i bge0_vlan2IP6 2001:db8:0000:2::10.51300 > 64:ff9b::aaaa:bbbb.14141: Flags [S],...opnsense$ tcpdump -n -i nat64IP6 2001:db8:0000:2::10.51314 > 64:ff9b::aaaa:bbbb.14141: Flags [S], ...IP 10.64.120.219.51314 > 1.2.3.4.14141: Flags [S], ...opnsense$ tcpdump -n -i bnxt1 port 14141 # WAN interfaceIP 100.100.100.140.38343 > 1.2.3.4.14141: Flags [S], ...IP 1.2.3.4.14141 > 100.100.100.140.38343: Flags [S.], ...opnsense$ tcpdump -n -i nat64IP 1.2.3.4.14141 > 10.64.120.219.51314: Flags [S.], ...IP6 64:ff9b::aaaa:bbbb.14141 > 2001:db8:0000:2::10.51314: ...opnsense$ tcpdump -n -i bge0_vlan2IP6 2001:db8:0000:2::10.51300 > 64:ff9b::aaaa:bbbb.14141: Flags [S], ...IP6 2001:db8:0000:2::10.51300 > 64:ff9b::aaaa:bbbb.14141: Flags [S], ...IP6 2001:db8:0000:2::10.51300 > 64:ff9b::aaaa:bbbb.14141: Flags [S], ...
##### ISP Gateway:Static IP 2001:db8:0000::1Upstream Gateway = YesDisable Gateway Monitoring = YesDisable reply-to on WAN rules = No # also tried Yes with same result##### Tayga and Unbound DNS:IPv4 Address 10.64.0.1IPv4 NAT64 Interface Address 10.65.64.1IPv6 Address 2001:db8:0000:5001:64::1IPv6 NAT64 Interface Address 2001:db8:0000::4IPv6 Prefix 64:ff9b::/96IPv4 Pool 10.64.0.0/16Enable DNS64 Support = YesDNS64 Prefix = Not set # to use default 64:ff9b::/96##### NAT 64 interface and Routing Table:opnsense$ ifconfig nat64nat64: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1500 options=80000<LINKSTATE> inet 10.65.64.1 --> 10.64.0.1 netmask 0xffffffff groups: tun nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> Opened by PID 85229opnsense$ netstat -rnDestination Gateway Flags Netif Expiredefault 100.100.100.137 UGS bnxt110.64.0.0/16 link#16 US nat6410.64.0.1 link#16 UH nat6410.65.64.1 link#16 UHS lo0100.100.100.136/29 link#4 U bnxt1100.100.100.140 link#4 UHS lo0127.0.0.1 link#5 UH lo0Internet6:Destination Gateway Flags Netif Expiredefault 2001:db8:0000::1 UGS bnxt1::1 link#5 UHS lo064:ff9b::/96 link#16 US nat642001:db8:0000::/48 link#4 U bnxt12001:db8:0000::4 link#4 UHS lo02001:db8:0000:1::/64 link#10 U bge0_vlan12001:db8:0000:1::1 link#10 UHS lo02001:db8:0000:2::/64 link#9 U bge0_vlan22001:db8:0000:2::1 link#9 UHS lo02001:db8:0000:3::/64 link#11 U bnxt0_vlan32001:db8:0000:3::1 link#11 UHS lo0##### pf/NAT rules:Tayga Interface: pass IPv4 from 10.64.0.0/16 to any # also tried any to any with same resultVlan 2 Interface: pass IPv6 from any to anyNAT Outbound: IPv4, Source = 10.64.0.0/16, Destination = any, Translation = WAN Address (100.100.100.140)
IPv4 Address: 10.14.0.1 # from IPv4 PoolIPv4 NAT64 Interface Address: 10.15.0.1 # not from IPv4 PoolIPv6 Address: <GUA IPv6 address> # one of your "public" IPv6 adresses IPv6 NAT64 Interface Address: fd00:14::1 # not used by other interfacesIPv6 Prefix: 64:ff9b::/96 # well-known prefixIPv4 Pool: 10.14.0.0/16