There is a lot of documentation about routing ipv6 and most of it is outdated for tunnels or routing with ipv4.
My isp supplies native ipv6
I have installed dhcpcd 6.11.5 from https://build.opensuse.org/package/show/home%3Abastianfriedrich/dhcpcd which is working great, it allocates an ipv6 ip address to my wan, and a public subnet to my bridged lan.
For testing to see if the public subnet works, I created an address from my bridge on my wan. I did this just to ping and verify I had the address. It worked fine using ipv6 sites to ping me.
dhcpcd.conf:
denyinterfaces br0 enp10s0f0 enp10s0f1 enp11s0f0 enp11s0f1 wlp5s0 wlp7s0
duid
noipv6rs
waitip 600
# Uncomment this line if you are running dhcpcd for IPv6 only.
ipv6only
# use the interface connected to WAN
interface enp12s0
ipv6rs
#iaid 1
ia_na 1
# use the interface connected to your LAN
ia_pd 2 br0/0
I can have radvd.conf apply local ip addresses or public to the lan. This works perfectly. There is also the documentation stating that it can auto generate subnet ipv6 ips from dynamic subnet ip blocks provided by the isp, though not the main concern of my post.
radvd.conf:
interface br0
{
AdvSendAdvert on;
prefix fc00::1/64
{
AdvOnLink on;
AdvAutonomous on;
AdvRouterAddr on;
};
RDNSS fc00::1{};
};
(yes, I am aware fc00::1 is not a public route-able address, for tayga it works just fine. I have a few public subnets on standby for when I learn to do the routing properly)
I have installed tayga (NAT64) https://software.opensuse.org/package/tayga?search_term=tayga
which does the routing ok, but seems like it was meant to translate ipv4 to ipv6 more than routing direct ipv6 → ipv6.
I am thinking there is a better way to properly setup a router gateway and route public ipv6 ips to the lan without a nat. Much of the documentation I have read has proven wrong as most of it involves routing with ipv4 and back to ipv6.
(feels sloppy to route native ipv6 this way)
tayga.conf:
tun-device nat64
ipv4-addr 192.168.255.1
ipv6-addr 2001:db8:1::2
prefix 2001:db8:1:ffff::/96
dynamic-pool 192.168.255.0/24
data-dir /var/db/tayga
map 192.168.1.1 fc00::1
tayga is working for the most part, I have a subnet lan and can ping6 outside addresses. But this is not how ipv6 was designed. I am unsure of how to properly setup ipv6 routing in my opensuse linux router. I could use public route-able ips with tayga, but this is not correct ipv6 routing. Something direct should exist?
Also I have firewalld which I have recently upgraded to with tumbleweed and am unsure of how it interacts with iptables which has led to more confusion reading iptables tutorials. SuSEfirewall2 was dropped a few weeks ago.