IPV6 problems with android and google TV clients

I have enabled IPV6 on my router running 7.17. It seems to work and passes all the tests on test-ipv6.com.

However, I have some ongoing issues when IPV6 is enabled:

  1. Chromecast with Google TV and my Sony TV with Google TV, both repeatedly renew their ipv4 lease every few minutes. This causes the connection to reset, interrupting whatever is being viewed. (Interestingly, the issue does not happed with my amazon firestick running the same apps.) These problems go away if ipv6 is turned off.
  2. Certain apps on our Android phones are either very sluggish or do not work at all. In particular a weather app takes forever to get the current weather (might be a DNS issue?) and Libby (library app) will not download the book content. If ipv6 is disabled in the router both of these apps work fine.
  3. Sometimes there are long delays, as if DNS is timing out.

My configuration is listed below. Most of it is the default setting in the router. My ISP is Charter/Spectrum. I have tried with “use-peer-dns” yes or no and the problems seems to remain.

Any advice would be appreciated!

/ipv6 dhcp-server option
add code=23 comment="Primary and secondary IPV6 cloudflare family name servers\
    . Used by windows." name=DNS value=\
    "'2606:4700:4700::1113''2606:4700:4700::1003'"
/ipv6 address
add from-pool=WANv6 interface=bridge-local
add from-pool=WANv6 interface=vlan--guest
/ipv6 dhcp-client
add add-default-route=yes disabled=no interface=ether1-gateway pool-name=\
    WANv6 pool-prefix-length=62 prefix-hint=::/56 request=address,prefix \
    use-peer-dns=no
/ipv6 dhcp-server
add dhcp-option=DNS interface=bridge-local lease-time=1d name=server1 \
    prefix-pool=WANv6
/ipv6 firewall address-list
add address=::/128 comment="defconf: unspecified address" list=bad_ipv6
add address=::1/128 comment="defconf: lo" list=bad_ipv6
add address=fec0::/10 comment="defconf: site-local" list=bad_ipv6
add address=::ffff:0.0.0.0/96 comment="defconf: ipv4-mapped" list=bad_ipv6
add address=::/96 comment="defconf: ipv4 compat" list=bad_ipv6
add address=100::/64 comment="defconf: discard only " list=bad_ipv6
add address=2001:db8::/32 comment="defconf: documentation" list=bad_ipv6
add address=2001:10::/28 comment="defconf: ORCHID" list=bad_ipv6
add address=3ffe::/16 comment="defconf: 6bone" list=bad_ipv6
/ipv6 firewall filter
add action=accept chain=input comment=\
    "defconf: accept established,related,untracked" connection-state=\
    established,related,untracked
add action=drop chain=input comment="defconf: drop invalid" connection-state=\
    invalid
add action=accept chain=input comment="defconf: accept ICMPv6" protocol=\
    icmpv6
add action=accept chain=input comment="defconf: accept UDP traceroute" \
    dst-port=33434-33534 protocol=udp
add action=accept chain=input comment=\
    "defconf: accept DHCPv6-Client prefix delegation." dst-port=546 protocol=\
    udp src-address=fe80::/10
add action=accept chain=input comment="defconf: accept IKE" dst-port=500,4500 \
    protocol=udp
add action=accept chain=input comment="defconf: accept ipsec AH" protocol=\
    ipsec-ah
add action=accept chain=input comment="defconf: accept ipsec ESP" protocol=\
    ipsec-esp
add action=accept chain=input comment="allow l2tp" dst-port=1701 protocol=udp
add action=accept chain=input comment=\
    "defconf: accept all that matches ipsec policy" ipsec-policy=in,ipsec
add action=accept chain=input comment=\
    "TEMP testing allow winbox from anywhere" disabled=yes dst-port=8291 \
    protocol=tcp
add action=drop chain=input comment="drop everything else coming from WAN" \
    in-interface-list=WAN
add action=accept chain=forward comment=\
    "defconf: accept established,related,untracked" connection-state=\
    established,related,untracked
add action=drop chain=forward comment="defconf: drop invalid" \
    connection-state=invalid
add action=drop chain=forward comment=\
    "defconf: drop packets with bad src ipv6" src-address-list=bad_ipv6
add action=drop chain=forward comment=\
    "defconf: drop packets with bad dst ipv6" dst-address-list=bad_ipv6
add action=drop chain=forward comment="defconf: rfc4890 drop hop-limit=1" \
    hop-limit=equal:1 protocol=icmpv6
add action=accept chain=forward comment="defconf: accept ICMPv6" protocol=\
    icmpv6
add action=accept chain=forward comment="defconf: accept HIP" protocol=139
add action=accept chain=forward comment="defconf: accept IKE" dst-port=\
    500,4500 protocol=udp
add action=accept chain=forward comment="defconf: accept ipsec AH" protocol=\
    ipsec-ah
add action=accept chain=forward comment="defconf: accept ipsec ESP" protocol=\
    ipsec-esp
add action=accept chain=forward comment=\
    "defconf: accept all that matches ipsec policy" ipsec-policy=in,ipsec
add action=drop chain=forward comment="drop everything else coming from WAN" \
    in-interface-list=WAN
/ipv6 nd
set [ find default=yes ] dns=2606:4700:4700::1113,2606:4700:4700::1003
/ipv6 settings
set disable-ipv6=no max-neighbor-entries=8192

I’m seeing at least 2 & 3 on my network as well. It’s definitely IPv6: testing with test-ipv6.com fails on the phone. No other devices are behaving this way. Wired or wireless, Windows or Mac or Linux, all behave fine.

I’m curious if you were on 7.16 before and if you saw this behavior. I definitely started noticing it when I upgraded to 7.17.

I did not dig deep, but I saw that the common advice on r/Chromecast is to disable IPv6.

I did see the problem prior to 7.17