With the Turris router you can easily create a network that uses only IPv6. Access to IPv4 Internet is solved by translation mechanism NAT64 combining with DNS64 creates an illusion availability of all content over IPv6. For example, on an IPv6-only network, you can test how different devices on the network behave, which is out of date does not support IPv4.
The manual assumes the Turris router with IPv6 connectivity.
/etc/config/network
: config interface 'lan6' option type 'bridge' option therefore 'static' option ip6assign '60 ' option ip6hint '6660' # optional - part of the address option 'igmp_snooping' 0 # disables multicast filtering traffic inside the bridge will solve some problems
config wifi-iface 'wlan5' option device 'radio0' option network 'lan6' option mode 'ap' option ssid 'turris-nat64' option encryption 'psk2' option key 'IPv6IsDaShit'
lan6
interface to the lan
zone in the firewall or similar zone.config dhcp 'lan6' option interface 'lan6' option ignore '1' # ignore for IPv4 DHCP option ra 'server' # send router announcement option dhcpv6 'server' # offers addresses using DHCPv6
ifup lan6
to start the interface.appcpd
service, for example using /etc/init.d/odhcpd
restart
wifi
to restart Wi-FiNow there should be a Wi-Fi network that only supports IPv6, without any service support on IPv4. For example, try the page www.nebezi.cz - information should be displayed that you are connected to a network that does not support the older IPv4 protocol.
tayga
, for example with opkg install tayga
/etc/config/network
. Address range 10.64.0.0/16
can be arbitrarily selected, but should not overlap with addresses in other networks. Address 2001:db8:1234::64
should be an address that is routed to your router and is not yet allocated. config interface 'nat64' option therefore 'tayga' option ipv4_addr '10.64.0.1' option ipv6_addr '2001:db8:1234::64' option prefix '64:ff9b::/96' option dynamic_pool '10.64.0.0/16'
nat64
interface to the lan
zone of the firewall, or a similar zone where the client connection interface will be located. It is important that the firewall does not block FORWARD of packets between zone interfaces./etc/init.d/network restart
(this is necessary for netifd
to load support for tayga
)ping
command on the IPv4 and / or IPv6 address specified in the configuration.ping6
to translated IPv4 address, for example ping6 64:ff9b::8.8.8.8
The easiest option is to use Google Public DNS64.
config dhcp 'lan6' option interface 'lan6' option ignore '1' # ignore for IPv4 DHCP option ra 'server' # send router announcement option dhcpv6 'server' # offers addresses using DHCPv6 list dns '2001:4860:4860::6464'
estcpd
service, for example using /etc/init.d/odhcpd restart
It only works on Turris 1.x
DNS64 is also available in Unbound validating DNS resolver which is a common part of TurrisOS for Turris 1.x routers. The disadvantage of its use is that it is can only be enabled on a global level. So, after activation, DNS64 is also performed for dual-stack network, which due to the limited performance of NAT64 the TAYGA daemon can lead to suboptimal router performance.
server: module-config: "dns64 validator iterator" dns64-prefix: 64:ff9b::/96
config resolver 'unbound_includes' list include_path '/etc/unbound/unbound-dns64.conf'
resolver
It only works on Turris Omnia
DNS64 is also available in the Knot DNS resolver DNS resolver which is a common part of TurrisOS for Turris Omnia routers. The disadvantage of its use is that it is can only be enabled on a global level. So, after activation, DNS64 is also performed for dual-stack network, which due to the limited performance of NAT64 the TAYGA daemon can lead to suboptimal router performance.
modules.load('dns64') dns64.config('64:ff9b::')
Config Resolver 'Kresd' option include_config '/etc/kresd/dns64.conf'
resolver
You can also run another DNS64 DNS resolver instance within the LXC container. In this way it is then possible to assign a DNS server with DNS64 functionality only to the IPv6-only network.
Try http://www.test-ipv6.cz. You should get full points and a note that NAT64 has been detected.