O app da sua impressora mostra uma lista vazia, o app de câmera informa que nenhum dispositivo foi encontrado e o botão de transmissão de um app de vídeo gira até desistir. O ícone de VPN está na barra de status, o telefone tem sinal cheio e o Safari carrega páginas sem problema, então nada da conexão parece quebrado. Depois você abre as configurações do próprio app e não encontra nada para alternar.

Bati exatamente nessa parede com uma impressora de etiquetas em uma rede doméstica: o app nunca tinha recebido acesso à rede local, e o perfil que eu estava testando era um túnel completo que engolia todo pacote endereçado a 192.168.1.0/24. Dois portões independentes estavam fechados, e abrir um não teria eliminado o sintoma.

Dois portões entre um app e uma impressora

O primeiro portão é uma decisão de privacidade que pertence ao sistema operacional e não ao app. O iOS decide se um app pode enviar tráfego para endereços da rede local, e pergunta ao usuário na primeira vez que o app tenta. O segundo portão é a tabela de rotas. Um pacote destinado a 192.168.1.50 ou sai pelo Wi-Fi em direção à impressora, ou entra no túnel, e essa escolha está escrita no perfil de VPN.

Os dois portões falham de formas diferentes, e é isso que torna o diagnóstico possível. Uma permissão negada faz a própria chamada de socket do app falhar, então o app não tem nada a relatar e cai em um estado vazio genérico. Um problema de roteamento parece um timeout, porque os pacotes saíram do telefone e morreram em algum lugar do outro lado. Mesma tela em branco, reparo diferente.

Leia o estado da permissão antes de mexer na VPN

Abra Ajustes, depois Privacidade e Segurança, depois Rede Local. Todo app que pediu acesso aparece ali com um interruptor. A Apple moveu e renomeou partes dessa tela entre o iOS 14 e o iOS 18, então se a entrada não estiver onde você espera, digite Rede Local no campo de busca dos Ajustes em vez de vasculhar a árvore.

O que pega as pessoas é o aviso único. O iOS pergunta quando um app toca a rede local pela primeira vez, e só nesse momento. Toque em Não Permitir e o aviso não volta na próxima abertura; o interruptor é o único caminho de volta, e começa desligado. Reinstalar o app reinicia a decisão, e é por isso que alguns tópicos de solução de problemas afirmam que uma reinstalação consertou a descoberta. Consertou, ao apagar a negação.

Em um iPhone supervisionado ou gerenciado o interruptor às vezes fica cinza. Um payload de preferências de privacidade enviado pelo MDM pode predefinir ou bloquear o acesso à rede local, e um interruptor bloqueado que está desligado significa que o reparo é uma mudança de política e não uma mudança no telefone. A Apple documenta o aviso e o interruptor por app aqui: support.apple.com/en-us/102229.

Verifique o que o túnel realmente roteia

Um túnel completo assume 0.0.0.0/0 e, com ele, todas as faixas privadas. Pacotes para 10.x, 172.16.0.0/12 e 192.168.x.x viajam até o servidor, que geralmente os descarta ou os traduz para a própria sub-rede, então a impressora fica inalcançável mesmo depois de você conceder a permissão. Um túnel dividido faz o contrário, mas apenas para as faixas que o perfil lista.

Perfis IKEv2 criados com o Apple Configurator ou distribuídos como .mobileconfig expressam isso como uma configuração de enviar todo o tráfego mais, no modo dividido, uma lista explícita de redes locais a excluir. Apps cliente baseados em NEPacketTunnelProvider expressam a mesma decisão por meio de includedRoutes. Nenhum dos dois é visível na barra de status, e ambos sobrepõem o que o app espera ver.

Este é o teste que eu uso. Com a VPN conectada, abra a página de administração do roteador pelo endereço LAN dele no Safari. Se os sites públicos carregarem enquanto essa página dá timeout, sua faixa privada está dentro do túnel. Se a página carregar, o tráfego local ainda está saindo pelo Wi-Fi e o bloqueio está em outro lugar.

Mapeie o sintoma para o portão

Dois apps no mesmo telefone podem discordar, porque a permissão é dada por app enquanto as rotas são dadas por perfil. Compare o que falha antes de mudar qualquer coisa: o padrão costuma nomear o portão sozinho.

What you seeGateNext step
Device list stays empty, Local Network switch is offPermissionEnable the switch, force-quit the app, reopen it
Switch is on, router page times out, public sites loadRoutingExclude the local range in the profile, or move to a split tunnel
Both pass, direct IP works, discovery stays emptyLink-local multicastEnter the device address by hand, or check profile discovery support
Works by IP address, never by name such as printer.localName resolutionFix mDNS reachability or use the numeric address
Everything fails with the VPN off, on hotel Wi-FiClient isolationChange network, do not change permissions

A linha de mDNS merece uma nota. O tráfego de descoberta do Bonjour e da maioria dos protocolos de transmissão vai por multicast para 224.0.0.251 e ff02::fb com escopo de link local, e um túnel roteado não o transporta. É por isso que um dispositivo pode responder a uma conexão direta sem nunca aparecer em uma lista.

Teste a operação, não o ícone

Depois de virar o interruptor de Rede Local, force o encerramento do app pelo seletor de apps e abra de novo. Um processo em execução pode manter o estado negado de antes da mudança, e um app que continua devolvendo uma lista vazia parece igual tanto se a permissão funcionou quanto se não. Em seguida, execute uma ação concreta, como imprimir uma página de teste ou iniciar um vídeo, em vez de esperar uma lista de dispositivos se preencher.

Mantenha o perfil de VPN fixo durante a comparação. Se a descoberta só começar a funcionar depois que você desconectar, você aprendeu que o culpado é o túnel e não a permissão. Mude uma variável por tentativa, senão a próxima rodada não lhe diz nada.

Conserte nesta ordem

A sequência abaixo é a que eu sigo agora, porque nunca deixa um telefone em um estado meio alterado onde o próximo teste fica ilegível.

  1. Confirme que o app está listado em Privacidade e Segurança, Rede Local, e que o interruptor dele está ligado.
  2. Force o encerramento, reabra o app e repita a operação real uma vez.
  3. Abra a página do roteador pelo endereço LAN enquanto estiver conectado para provar se a faixa privada está no túnel.
  4. Se estiver no túnel, edite o perfil para excluir as redes locais, ou peça a quem é dono do perfil que faça isso.
  5. Se o interruptor estiver cinza, trate o dispositivo como gerenciado e encaminhe o pedido ao administrador.

Normalmente só uma delas se aplica. Se nenhuma mudar o resultado, os suspeitos restantes são a própria rede, como isolamento de ponto de acesso ou uma lista de clientes permitidos vinculada a endereços Wi-Fi, e a tabela de correspondência acima aponta qual.

Artigos relacionados