It appears the issue is that the client is bound back to wlan0 on receiving RADIUS message from the server after 4addr mode has been activated previously upon association: …. Enable 4-address WDS mode for STA 00:06:3d:0a:a8:0a (aid 1) nl80211: Set WDS STA addr=00:06:3d:0a:a8:0a aid=1 val=1 name=wlan0.sta1 nl80211: Create interface iftype 4 (AP_VLAN) nl80211: Ignored event (cmd=7) for foreign interface (ifindex 23 wdev 0x0) nl80211: New interface wlan0.sta1 created: ifindex=23 nl80211: Add own interface ifindex 23 (ifidx_reason -1) nl80211: if_indices[16]: 11(19) 19(-1) 23(-1) nl80211: wlan0[19]: set_sta_vlan(00:06:3d:0a:a8:0a, ifname=wlan0.sta1[23], vlan_id=0) RTM_NEWLINK: ifi_index=23 ifname=wlan0.sta1 operstate=2 linkmode=0 ifi_family=0 ifi_flags=0x1002 () …. …. wlan0: RADIUS Received RADIUS message wlan0: STA 00:06:3d:0a:a8:0a RADIUS: Received RADIUS packet matched with a pending request, round trip time 0.00 sec RADIUS packet matching with station 00:06:3d:0a:a8:0a wlan0: STA 00:06:3d:0a:a8:0a IEEE 802.11: binding station to interface 'wlan0' nl80211: wlan0[19]: set_sta_vlan(00:06:3d:0a:a8:0a, ifname=wlan0[19], vlan_id=0) MS-MPPE-Send-Key - hexdump(len=32): [REMOVED] MS-MPPE-Recv-Key - hexdump(len=32): [REMOVED] … Following seems to fix the issue: diff --git a/src/ap/sta_info.c b/src/ap/sta_info.c index b1fde3c..56e1bf8 100644 --- a/src/ap/sta_info.c +++ b/src/ap/sta_info.c @@ -986,6 +986,9 @@ done: int ap_sta_bind_vlan(struct hostapd_data *hapd, struct sta_info *sta) { + if (sta->flags & WLAN_STA_WDS) + return 0; + #ifndef CONFIG_NO_VLAN const char *iface; struct hostapd_vlan *vlan = NULL; Please advise if above is the correct fix or if there is a better alternative. Thanks Ajay _______________________________________________ Hostap mailing list Hostap@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/hostap