openwrt / openwrt/openwrt

ath11k: 802.1q VLAN TX broken on 5 GHz mesh, works on 2.4GHz; 802.1ad broken on both

Open
#23,645 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug invalid
Dominant language
C
Stars
28.5k
Forks
13k
PR merge metrics
PR metrics pending

Description

Describe the bug

Pinging ipv6 link local multicast address over vlan over 80211s is not or partially working
on a tplink_eap650-outdoor-v1 which has the following ath11k chipset:

  • ipq5018 (2.4GHz)
  • qcn9074 (5GHz)

I tested changing the mac-address of the vlan interfaces without success.
Seeing this https://github.com/openwrt/openwrt/pull/18823 I wonder if the support for vlans over 80211s could be incomplete. And I'm asking if someone with similar hardware could try to reproduce it.

Tested connecting the device via 80211s to an openwrt-one running openwrt-v25.12.4
Pinging ipv6 link-local multicast works on the raw 80211s interfaces phy0-mesh0 and phy1-mesh0.

802.1q vlans works only 2.4GHz
  • ping6 ff02::1%phy0-mesh0.17 # 2.4GHz ipq5018 works
  • ping6 ff02::1%phy1-mesh0.17 # 5GHz qcn9074 do not work
Detail of 5GHz

Given the ipv4 addresses on top of phy1-mesh0.17

  • 192.168.10.10/16 for eap650-outdoor-v1
  • 192.168.10.16/16 for openwrt-one

Only if it is the openwrt-one that start a connection:

  • ipv6 link-local: after the openwrt-one pings the ipv6 link-local unicast of the eap650, it reaches it after a while (say 1000ms). Then:
    • it can also reach the eap650 and receive replies when pinging the multicast ff02::1%phy1-mesh0.17
    • eap650 starts reaching the ipv6 link-local unicast address of the openwrt-one, but not via multicast.
  • ipv4: similar behavior, after the openwrt-one start the ping to 192.168.10.10 then the eap650 pings to 192.168.10.16 start reaching the openwrt-one
802.1ad vlans nothing works
  • cannot ping ipv6 link-local multicast
  • cannot ping the ipv6 link-local unicast from both sides
  • cannot ping the neighbour via ipv4
OpenWrt version

r34730+2-d93c6d9a49

OpenWrt release

SNAPSHOT

OpenWrt target/subtarget

qualcommax/ipq50xx

Device

TP-Link EAP650-Outdoor v1

Image kind

Self-built image

Steps to reproduce
Details of the configuration applied via LUCI

# /etc/config/wireless uci del wireless.default_radio0.ssid uci set wireless.radio0.channel='6' uci set wireless.radio0.cell_density='0' uci set wireless.default_radio0.mode='mesh' uci set wireless.default_radio0.mesh_id='LiMe' uci set wireless.default_radio0.mesh_fwding='0' uci set wireless.default_radio0.mesh_rssi_threshold='0' uci del wireless.default_radio1.ssid uci del wireless.default_radio1.network uci set wireless.radio1.channel='40' uci set wireless.radio1.cell_density='0' uci set wireless.default_radio1.mode='mesh' uci set wireless.default_radio1.mesh_id='LiMe' uci set wireless.default_radio1.mesh_fwding='0' uci set wireless.default_radio1.mesh_rssi_threshold='0' uci del wireless.default_radio0.network

/etc/config/network

uci add network device # =cfg090f15
uci set network.@device[-1].type='8021q'
uci set network.@device[-1].ifname='phy0-mesh0'
uci set network.@device[-1].vid='17'
uci set network.@device[-1].name='phy0-mesh0.17'
uci set network.@device[-1].ipv6='1'
uci add network device # =cfg0a0f15
uci set network.@device[-1].type='8021q'
uci set network.@device[-1].ifname='phy1-mesh0'
uci set network.@device[-1].vid='17'
uci set network.@device[-1].name='phy1-mesh0.17'
uci set network.@device[-1].ipv6='1'

/etc/config/firewall

uci del firewall.cfg02dc81.network
uci add_list firewall.cfg02dc81.network='lan'
uci add_list firewall.cfg02dc81.network='mesh0'
uci del firewall.cfg02dc81.network
uci add_list firewall.cfg02dc81.network='lan'
uci add_list firewall.cfg02dc81.network='mesh0'
uci add_list firewall.cfg02dc81.network='mesh0_17'
uci del firewall.cfg02dc81.network
uci add_list firewall.cfg02dc81.network='lan'
uci add_list firewall.cfg02dc81.network='mesh0'
uci add_list firewall.cfg02dc81.network='mesh0_17'
uci add_list firewall.cfg02dc81.network='mesh1'
uci del firewall.cfg02dc81.network
uci add_list firewall.cfg02dc81.network='lan'
uci add_list firewall.cfg02dc81.network='mesh0'
uci add_list firewall.cfg02dc81.network='mesh0_17'
uci add_list firewall.cfg02dc81.network='mesh1'
uci add_list firewall.cfg02dc81.network='mesh1_17'

/etc/config/network

uci del network.globals.packet_steering
uci set network.mesh0=interface
uci set network.mesh0.proto='none'
uci del network.mesh0.proto
uci set network.mesh0.device='phy0-mesh0'
uci set network.mesh0_17=interface
uci set network.mesh0_17.proto='none'
uci del network.mesh0_17.proto
uci set network.mesh0_17.device='phy0-mesh0.17'
uci set network.mesh1=interface
uci set network.mesh1.proto='none'
uci del network.mesh1.proto
uci set network.mesh1.device='phy1-mesh0'
uci set network.mesh1_17=interface
uci set network.mesh1_17.proto='none'
uci del network.mesh1_17.proto
uci set network.mesh1_17.device='phy1-mesh0.17'

Actual behaviour

the device is not able to send and to reach ipv6 link-local packets both via unicast and via multicast addresses over 802.1q and 8021.ad vlans created on top of 80211s connection

Expected behaviour

the device should be able to send and to reach ipv6 link-local packets both via unicast and via multicast addresses over 802.1q and 8021.ad vlans created on top of 80211s connection

Additional info

Tested and the issue is persist changing the package wpad, the following were tested:

  • wpad-basic-mbedtls (default)
  • wpad-mesh-mbedtls
  • wpad-mbedtls
  • wpad-mesh-openssl
  • wpad-openssl
  • wpad-mesh-wolfssl
  • wpad-wolfssl
Diffconfig

Terms
  • I am reporting an issue for OpenWrt, not an unsupported fork.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the failure on the TP-Link EAP650-Outdoor v1 and openwrt-one using the supplied wireless, network, and firewall UCI configuration. Compare raw phy0-mesh0/phy1-mesh0 traffic with the 802.1q and 802.1ad VLAN interfaces, using the listed ping6 and IPv4 tests. Done means unicast and multicast IPv6 link-local traffic works over both VLAN types on the mesh connection.

Written by the indexing model from the issue text.

Assessment

Domain
embedded-iot, networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
40/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.