So is there actually an ethernet layer when an IEEE packet is transmitted?
Resposta curta: não
Resposta mais longa: o tráfego IEEE 802.11 não é o tráfego Ethernet IEEE 802.3. Ambos são protocolos L2 (e L1) no modelo OSI, mas não são os mesmos.
Embora tenham muitas semelhanças, também existem grandes diferenças. Por um lado, o 802.11 tem até quatro campos de endereço que podem ou não ser usados para diferentes propósitos, dependendo do tipo de quadro, enquanto o 802.3 tem dois.
No seu exemplo, a seção "IEEE 802.11" deve conter todas as suas informações de L2. Então não está faltando.
Or is it added to it by the driver before delivering to applications listening on the upper layers?
Muito pelo contrário. Os cabeçalhos da camada inferior são removidos antes de serem entregues às aplicações nas camadas superiores.
O exemplo que você fornece parece inteiramente normal para mim. Eu ficaria mais curioso sobre o tráfego 802.11 que contém um cabeçalho 802.3, pois isso poderia indicar algo mais acontecendo.
Nota lateral: a capacidade de descriptografar o 802.11 não afeta a capacidade de visualizar os cabeçalhos. A criptografia 802.11 é apenas na carga de dados, portanto, os cabeçalhos permanecem visíveis. Na verdade, ao solucionar problemas de conexão sem fio com capturas de pacotes, raramente é necessário descriptografar o 802.11 (se você estiver verificando protocolos de nível mais alto e precisar dos dados criptografados, normalmente é mais fácil capturar no lado com fio do ponto de acesso).