Условия реального мира
Посмотреть, куда ходит трафик приложения
Каждый DNS-запрос устройства, подмена имени на стейджинг, далёкие серверы и лишние соединения в маршрутах.
Зачем: медленный экран часто тормозит не из-за приложения, а из-за сети вокруг него: CDN на другом континенте, несуществующее имя, новое TLS-соединение на каждый запрос. А чтобы проверить приложение на стейджинге, не нужна отдельная сборка.
Что происходит
Заголовок раздела «Что происходит»- Вкладка DNS показывает каждое имя, которое ищет устройство, в реальном времени.
- Пометки выделяют главное: NXDOMAIN — имени не существует, far — все адреса на другом континенте, чем выход VPN, DoH blocked — шифрованный DNS, который обошёл бы журнал.
- Подробности строки показывают цепочку
CNAMEи каждый адрес со страной и сетью. - Rewrite this name отвечает на имя вашим адресом, блокирует его или делает несуществующим.
- Вкладка Routes ведёт соединения от устройства через VPN до каждого сервера, с пометками no reuse, far, bypass и HTTP.
- Flagged оставляет только подозрительные имена.
Примеры
Заголовок раздела «Примеры»- Боевое приложение на стейджинге. Подмените
api.example.comна IP стейджинга и перезапустите приложение. Выключите правило, чтобы вернуться обратно; с TTL 0 это срабатывает сразу. - Что, если аналитика лежит? Сделайте домен аналитики Doesn’t exist или Block и проверьте, что приложение открывается и не висит на спиннере.
- Почему картинки медленные в Казахстане? Переключите страну на Казахстан и ищите far в Routes: CDN без площадки рядом сразу будет виден.
- Слишком много хендшейков. no reuse на вашем API значит, что каждый запрос открывает новое TCP- и TLS-соединение. Отправьте список соединений из подробностей бэкенд-команде.
Полезно знать
Заголовок раздела «Полезно знать»- Обе вкладки есть в сессиях с VPN-локацией: её сайдкар видит DNS и соединения устройства.
- Подмены сбрасывают DNS-кэш Android, но WebView может держать имя до минуты. Перезапустите приложение, если подмена должна действовать везде.
- Набор подмен можно сохранить в Sets и загрузить в другой сессии.
- Записи сохраняют обе вкладки, так что по ссылке на запись видно ответы DNS и соединения в момент бага.
Если не работает
Заголовок раздела «Если не работает»- Нет вкладки DNS или Routes: у сессии нет VPN-локации. На физических телефонах есть Routes, но пока нет DNS.
- Подмена не действует: приложение зашило IP-адрес или резолвит имена через свой DNS over HTTPS.
- Нет стран: в этом Holtdroid не настроены базы геолокации.
Подробнее: DNS log and rewrites, Routes.