Trochę to trwało, ale znalazłem czemu PBR działało tylko dla adresu IP czyli przyznawany był zwykły adres, a DNSy szły przez VPN
Zrobiłem  reguły port forwards (przechwytywanie DNS na sztywno wpisanych w urządzeniu i kierowanie przez router) i one pilnowały aby każde zapytanie DNS szło przez VPN. Opcja 6 też tego nie obchodziła. Dopiero zrobienie IP Sets i dodanie tego zestawu do reguły pozwoliło na odpytanie DNS ustawionego na WAN a nie przez VPN

config redirect                                 
        option dest 'IoT'                       
        option target 'DNAT'                 
        option src 'IoT'                        
        option src_dport '53'                   
        option dest_ip '192.168.3.1'         
        option dest_port '53'                   
        option family 'ipv4'                    
        option name 'Force DNS IoT'          
        option ipset '!DNS_IOT' 

config ipset                                    
        option name 'DNS_IOT'                   
        option family 'ipv4'                 
        list match 'src_ip'                     
        list entry '192.168.3.1'                
        list entry '192.168.3.77' 

Nie, tylko przy eth0 jest fe80::
I jeszcze przy lo:  inet6 addr: ::1/128 Scope:Host

IPv6 chyba jednak wyłączone ale dlaczego na stronie której wspomniałem pojawiają się adresy dns v6? i to na na pewno idzie przez router bo jak w piszę w WAN 1.1.1.1 to są cloudflare, a jak wpiszę 8.8.8.8 to google. na innych stronach np https://dnsleaktest.com/ wycieku nie ma. jak usunę DNS z WAN to po restarcie skrypt pia_wg.sh nie zestawia mi tunelu.

root@OpenWrt:~# ping -6 google.com
ping: bad address 'google.com'

root@OpenWrt:~# nslookup google.com
Server:        127.0.0.1
Address:    127.0.0.1:53

Non-authoritative answer:
Name:    google.com
Address: 142.250.129.100
Name:    google.com
Address: 142.250.129.113
Name:    google.com
Address: 142.250.129.102
Name:    google.com
Address: 142.250.129.101
Name:    google.com
Address: 142.250.129.138
Name:    google.com
Address: 142.250.129.139

Non-authoritative answer:

root@OpenWrt:~# sysctl -p
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
root@OpenWrt:~#

został temat wypuszczenia tv poza VPN, IP idzie ale DNS niestety są od PIA

Generalnie się na tym nie znam, sprawdzam kolejny dzień z tym co znalazłem na sieci i nic. teoretycznie chyba ta opcja 6 działa

root@OpenWrt:~# uci show dhcp | grep tag1
dhcp.tag1=dns_novpn
dhcp.tag1.dhcp_option='6,1.1.1.1,9.9.9.9'
dhcp.@host[6].tag='tag1'
root@OpenWrt:~# 

IPv6 wyłączyłem chyba wszędzie. nawet komendy sysctl i nadal na browserleaks.com pokazują mi się serwery dns IPv6. co ciekawe na Ipv4 jest czysto. Teraz już robiłem tyle rzeczy, że jak już znajdę gdzie jest problem lub jak to dobrze skonfigurować to przeinstaluję router i wszystko skonfiguruję od nowa.

Niestety coś robię nie tak bo nadal mam dnsy pia jak sprawdzam na tv https://browserleaks.com. a na adresie z vpn mam wyciek na ipV6 chociaż wyłączyłem IPv6.

Prawie całość robiłem przez luci, ale chodzi o to że jak mam dodane statyczne adresy w /etc/config/dhcp to tam dopisać coś w stylu: dhcp_option="6,8.8.8.8,8.8.4.4" przy adresie, który ma iść poza VPN,i wtedy w WAN usunąć wpisane adres serwera DNS?

Witam,
Od tyg. walczę z openwrt 24.10 po przesiadce z DD-wrt na WRT3200ACM. Zrobiłem Vlany br-lan.1 i br-lan.3, ustawiłem dns z  przekierowaniem i blokadę DOT.  Odpaliłem Wireguard (VPN PIA) na skrypcie Bolemo/pia_wg. i nie mogę tego poprawnie skonfigurować. chodzi mi oto że LAN i IoT ma iść przez VPN, a poza VPN chcę wypuścić wskazane adresy IP jak TV (netflix) i np konsolę do gier. Nie daję rady ogarnąć PBR aby nie było problemów z DNSami. IP ok, co przez VPN to ma adres PIA, co poza VPN to ma Adres zwykły, ale DNSy albo tylko PIA, albo pomieszane PIA + z WAN.
Da się to ustawić tak, aby przez VPN szedł cały ruch i nie było dnsów  cloudflare,  a TV szedł na zwykłym ip i z DNSem Cloudflare
?
Po drodze zmieniłem wpad na wpad-openssl; doinstalowałem pbr,i zmieniłem dnsmasq na dnsmasq-full i jeszcze parę rzeczy o których teraz nie pamiętam.