There can be several reasons and one or more can affect you:
You are physically too far away from
the client(s). You need enough transmit power for the packets to reach
and be heard by the clients. If you do a full packet capture, each
packet sent to the client should result in an “ack” packet back. This
means the client heard the packet. If there is no “ack” then likely it
did not receive the packet.
Wireless cards work in particular
modes such b, g, n and so on. If your card is in a different mode then
the client card there is good chance that the client will not be able to
correctly receive your transmission. See the previous item for
confirming the client received the packet.
Some clients ignore broadcast
deauthentications. If this is the case, you will need to send a
deauthentication directed at the particular client.
Clients may reconnect too fast for
you to see that they had been disconnected. If you do a full packet
capture, you will be able to look for the reassociation packets in the
capture to confirm deauthentication worked.
说说我理解的。
第一点,我需要离client很近。我是在屋里的,client是在邻居屋里,直线距离不超过5米,但中间隔着水泥墙。这个很有可能。
第二点,我的无线网卡可能和client的网卡处在不同的工作模式中?我该怎么把网卡设置成与client一致的工作模式呢?
第三点,有些client不接收广播的断线消息,我需要直接向client发送。我指定-c参数应该就是指定了client吧?
第四点,client断线后可能很快的重新连接了。我可以通过捕捉到的数据包中的“重认证数据包”来确认是不是真让client断线了。这个数据我又该如何查看呢?