![Пакет хранения ядра Linux?](https://rvso.com/image/168796/%D0%9F%D0%B0%D0%BA%D0%B5%D1%82%20%D1%85%D1%80%D0%B0%D0%BD%D0%B5%D0%BD%D0%B8%D1%8F%20%D1%8F%D0%B4%D1%80%D0%B0%20Linux%3F.png)
Я рассматривал стороннюю программу для разрешения DNS (во встроенном решении), и в коде для отправки DNS-запроса на вышестоящий сервер она будет выполнять connect(), а затем send().
send() возвращает количество байт, которое ему было передано (т.е. не -1 или не установлен errno), но я никогда не вижу DNS-запрос в Wireshark. Поэтому DNS-программа думает, что пакет был отправлен, но не получает на него ответа и засекает время ожидания этого пакета. Однако последующие DNS-запросы проходят без проблем.
Удерживает ли ядро пакет и если да, как узнать, ПОЧЕМУ оно это делает? Нет никаких правил, блокирующих исходящий пакет.
Я слышал, что ядро может задержать пакет, если считает, что маршрут к удаленному пункту назначения недоступен. Происходит ли это, и если да, как мне узнать об этом больше?