Question on bssid mask with ath10k

Ben Greear greearb at candelatech.com
Mon Jul 6 08:10:06 PDT 2015


On 07/06/2015 08:00 AM, "Jose Núñez-Martínez (CTTC)" wrote:
> Hi,
> the reason for starting a virtual device in monitor mode is to infuence Rx filters in firmware as pointed out in [1]. The goal is to configure the wireless
> device in adhoc mode so that it can receive and send packets containing any mac destination address.
>
> [1] http://lists.infradead.org/pipermail/ath10k/2015-April/005095.html

BSSID mask is not your main problem I think.  It is primarily used to
deal with multiple virtual devices (ap, STA, IBSS).  PROMISC will effectively
just disable the BSSID mask so that all (most, really..monitor mode is not perfect
for ath10k) frames are passed up the stack to the host.

The firmware will not send packets to destinations that it does not have a peer
object for, so you will not be able to transmit to arbitrary destinations.

ADHOC will create peer objects as it associates with new peers, so maybe you
do not actually need 'any mac destination address'?

I have some bugs to track down relating to some .11r and/or ANQP failures that we see
in some of our tests...possibly I'll figure out how to send to arbitrary destinations
while fixing this.

ath10k is full of subtle and not-so-subtle limitations.  I think for best support you should spell out
your real goals and use cases in detail instead of trying to think of ath10k as just a faster
version of ath9k.

Thanks,
Ben

>
>
> Thx,
> Jose
>
> On 07/06/2015 04:33 PM, Ben Greear wrote:
>> On 07/06/2015 06:54 AM, "Jose Núñez-Martínez (CTTC)" wrote:
>>> Thanks for your answer. My goal was to create a monitor interface (mon2) and another (wlan2) in ibss mode associated to the same physical device. This is the
>>> command I tried to create a virtual interface associated to phy0 in monitor mode:
>>>
>>> iw phy phy0 interface add moni2 type monitor
>>
>> That looks right...that command works for me.  Maybe you already had
>> moni2 created incorrectly?  Try starting from fresh reboot or driver
>> reload?
>>
>> Also, you should not actually need a monitor dev to have CT firmware work
>> properly...but of course if you want to sniff frames, it can be useful.
>>
>> Thanks,
>> Ben
>>
>>>
>>> As you mentioned it is somehow configured as "managed" and not as monitor. Any ideas?
>>>
>>> Jose
>>>
>>> On 07/06/2015 03:39 PM, Ben Greear wrote:
>>>> On 07/06/2015 06:23 AM, "Jose Núñez-Martínez (CTTC)" wrote:
>>>>> Hi,
>>>>> I upgraded to CT kernel and firmware. Now I have: Kernel is 4.0.4 from CT and Firmware is 10.1.467-ct-com-full-014-96d543
>>>>> However I cannot bring up two virtal interfaces associated to one physical device.
>>>>>
>>>>> The output of "iw dev" command:
>>>>>
>>>>> phy#1
>>>>>      Interface moni2
>>>>>          ifindex 9
>>>>>          wdev 0x100000002
>>>>>          addr 04:f0:21:18:26:a5
>>>>>          type managed
>>>>
>>>> It is type managed...you created this wrong somehow.
>>>>
>>>> If you want to bring up more than one managed interface, you have to
>>>> change the MAC address first so that they are unique.
>>>>
>>>> Thanks,
>>>> Ben
>>>>
>>>>
>>>>>      Interface wlan2
>>>>>          ifindex 7
>>>>>          wdev 0x100000001
>>>>>          addr 04:f0:21:18:26:a5
>>>>>          type IBSS
>>>>>
>>>>> This is the error shown when I try to bring up moni2 interface (ifconfig moni2 up): "SIOCSIFFLAGS: Name not unique on network"
>>>>>
>>>>>
>>>>> Jose
>>>>>
>>>>> On 07/03/2015 12:45 PM, Michal Kazior wrote:
>>>>>> On 3 July 2015 at 12:17, "Jose Núñez-Martínez (CTTC)"
>>>>>> <jose.nunez at cttc.cat> wrote:
>>>>>>> I'm trying to set BSSID mask in ath10k so that data packets with spoofed mac
>>>>>>> destination address can be received (and not dropped) by the card.
>>>>>>>
>>>>>>> Apparently the way bssid mask is managed has changed from ath5k and ath9k
>>>>>>> since there are not  "ath5k_hw_set_bssid_mask" or
>>>>>>> "ath9k_htc_set_mac_bssid_mask"  kind of functions.
>>>>>>>
>>>>>>> Anyone tried this?
>>>>>> There's no explicit control over Rx filters in ath10k that I know of.
>>>>>> This is abstracted away by other firmware higher-level commands. One
>>>>>> way to influence Rx filter (and BSSID mask) is to start a monitor vdev
>>>>>> in firmware. This apparently works[1] but 636 will crash on you again
>>>>>> if you do that. You'll need Ben's CT firmware.
>>>>>>
>>>>>> [1]: http://lists.infradead.org/pipermail/ath10k/2015-April/005095.html
>>>>>>
>>>>>>
>>>>>> Michał
>>>>>>
>>>>>> _______________________________________________
>>>>>> ath10k mailing list
>>>>>> ath10k at lists.infradead.org
>>>>>> http://lists.infradead.org/mailman/listinfo/ath10k
>>>>>
>>>>
>>>>
>>>
>>
>>
>


-- 
Ben Greear <greearb at candelatech.com>
Candela Technologies Inc  http://www.candelatech.com




More information about the ath10k mailing list