Hi, Let's assume we have 3 systems: A and B use 8821CU chip, and C uses another chip from a different vendor. If A is in AP mode and A and B use the rtw88 driver, pinging A from B and C by local name doesn't work because name resolution fails: avahi on B and C sends a multicast request to resolve A.local, A sees it and responds, but neither B nor C sees the response. In the same situation, but with A and B using the rtl8821cu driver (from https://github.com/morrownr/8821cu-20210916.git), everything works - B and C see A's response and can resolve A.local. If C is in AP mode, resolving C from A and B also works. This leads me to believe there's something wrong with rtw88 when sending multicast packets in AP mode. When it works: AP: 13:42:01.393649 IP 10.21.12.9.45190 > 10.21.12.1.53: 1519+ SOA? local. (23) 13:42:01.394137 IP 10.21.12.1.53 > 10.21.12.9.45190: 1519 Refused 0/0/0 (23) 13:42:01.395767 IP 10.21.12.9.49431 > 10.21.12.1.53: 1519+ SOA? local. (23) 13:42:01.395968 IP 10.21.12.1.53 > 10.21.12.9.49431: 1519 Refused 0/0/0 (23) 13:42:01.498904 IP 10.21.12.9.5353 > 224.0.0.251.5353: 0 A (QM)? A.local. (52) 13:42:01.499612 IP 10.21.12.1.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 10.21.12.1 (62) 13:42:01.502771 IP 10.21.12.9 > 10.21.12.1: ICMP echo request, id 597, seq 0, length 64 13:42:01.502870 IP 10.21.12.1 > 10.21.12.9: ICMP echo reply, id 597, seq 0, length 64 13:42:02.502636 IP 10.21.12.9 > 10.21.12.1: ICMP echo request, id 597, seq 1, length 64 13:42:02.502832 IP 10.21.12.1 > 10.21.12.9: ICMP echo reply, id 597, seq 1, length 64 13:42:03.503137 IP 10.21.12.9 > 10.21.12.1: ICMP echo request, id 597, seq 2, length 64 13:42:03.503332 IP 10.21.12.1 > 10.21.12.9: ICMP echo reply, id 597, seq 2, length 64 station: 13:41:55.542970 IP 10.21.12.9.45190 > 10.21.12.1.53: 1519+ SOA? local. (23) 13:41:55.545556 IP 10.21.12.1.53 > 10.21.12.9.45190: 1519 Refused 0/0/0 (23) 13:41:55.545888 IP 10.21.12.9.49431 > 10.21.12.1.53: 1519+ SOA? local. (23) 13:41:55.547212 IP 10.21.12.1.53 > 10.21.12.9.49431: 1519 Refused 0/0/0 (23) 13:41:55.648755 IP 10.21.12.9.5353 > 224.0.0.251.5353: 0 A (QM)? A.local. (52) 13:41:55.651057 IP 10.21.12.1.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 10.21.12.1 (62) 13:41:55.652154 IP 10.21.12.9 > 10.21.12.1: ICMP echo request, id 597, seq 0, length 64 13:41:55.654220 IP 10.21.12.1 > 10.21.12.9: ICMP echo reply, id 597, seq 0, length 64 13:41:56.652499 IP 10.21.12.9 > 10.21.12.1: ICMP echo request, id 597, seq 1, length 64 13:41:56.654529 IP 10.21.12.1 > 10.21.12.9: ICMP echo reply, id 597, seq 1, length 64 13:41:57.652892 IP 10.21.12.9 > 10.21.12.1: ICMP echo request, id 597, seq 2, length 64 13:41:57.654789 IP 10.21.12.1 > 10.21.12.9: ICMP echo reply, id 597, seq 2, length 64 when it doesn't: AP: 13:47:00.331053 IP 10.21.12.9.53078 > 10.21.12.1.53: 43258+ SOA? local. (23) 13:47:00.331459 IP 10.21.12.1.53 > 10.21.12.9.53078: 43258 Refused 0/0/0 (23) 13:47:00.334759 IP 10.21.12.9.37501 > 10.21.12.1.53: 43258+ SOA? local. (23) 13:47:00.334955 IP 10.21.12.1.53 > 10.21.12.9.37501: 43258 Refused 0/0/0 (23) 13:47:00.438593 IP 10.21.12.9.5353 > 224.0.0.251.5353: 0 A (QM)? A.local. (52) 13:47:00.438923 IP 10.21.12.9.5353 > 224.0.0.251.5353: 0 A (QM)? A.local. (52) 13:47:00.441040 IP 10.21.12.1.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 10.21.12.1 (62) 13:47:01.443349 IP 10.21.12.9.5353 > 224.0.0.251.5353: 0 A (QM)? A.local. (52) 13:47:01.443771 IP 10.21.12.9.5353 > 224.0.0.251.5353: 0 A (QM)? A.local. (52) 13:47:01.445513 IP 10.21.12.1.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 10.21.12.1 (62) 13:47:03.441963 IP 10.21.12.9.5353 > 224.0.0.251.5353: 0 A (QM)? A.local. (52) 13:47:03.442094 IP 10.21.12.9.5353 > 224.0.0.251.5353: 0 A (QM)? A.local. (52) 13:47:03.442747 IP 10.21.12.1.5353 > 224.0.0.251.5353: 0*- [0q] 1/0/0 (Cache flush) A 10.21.12.1 (62) station: 13:46:54.483807 IP 10.21.12.9.53078 > 10.21.12.1.53: 43258+ SOA? local. (23) 13:46:54.486122 IP 10.21.12.1.53 > 10.21.12.9.53078: 43258 Refused 0/0/0 (23) 13:46:54.487262 IP 10.21.12.9.37501 > 10.21.12.1.53: 43258+ SOA? local. (23) 13:46:54.489352 IP 10.21.12.1.53 > 10.21.12.9.37501: 43258 Refused 0/0/0 (23) 13:46:54.590785 IP 10.21.12.9.5353 > 224.0.0.251.5353: 0 A (QM)? A.local. (52) 13:46:55.593347 IP 10.21.12.9.5353 > 224.0.0.251.5353: 0 A (QM)? A.local. (52) 13:46:57.594809 IP 10.21.12.9.5353 > 224.0.0.251.5353: 0 A (QM)? A.local. (52) If all systems connect to an external AP, A and B use rtw88 or rtl8821cu, pinging A from B and C by local name (hostname.local) works, but this goes through normal DNS service, so it doesn't prove anything. I did some experiments with iperf though. If A and B are connected to an external AP this works: A: iperf -s -B 224.0.0.55 -u B: iperf -c 224.0.0.55 -u B: iperf -s -B 224.0.0.55 -u A: iperf -c 224.0.0.55 -u if A is in AP mode and uses rtw88 OR rtl8821cu, iperf fails both in server and client mode: iperf -s -B 224.0.0.55 -u multicast join failed: No such device ------------------------------------------------------------ Server listening on UDP port 5001 Binding to local address 224.0.0.55 Joining multicast group 224.0.0.55 Receiving 1470 byte datagrams UDP buffer size: 176 KByte (default) ------------------------------------------------------------ iperf -c 224.0.0.55 -u connect failed: Network is unreachable If A is in AP mode and uses rtl8821cu, iperf between B (rtl8821cu) and C works in both directions. If A is in AP mode and uses rtw88, iperf between B (rtw88) and C doesn't work (in both directions, no errors, just no traffic is registered on the other side). This indicates that there's something wrong with both sending and receiving multicast packets in rtw88 in AP mode. Please help me resolve this issue. Cheers, Marcin