Пакет хранения ядра Linux?

Пакет хранения ядра Linux?

Я рассматривал стороннюю программу для разрешения DNS (во встроенном решении), и в коде для отправки DNS-запроса на вышестоящий сервер она будет выполнять connect(), а затем send().

send() возвращает количество байт, которое ему было передано (т.е. не -1 или не установлен errno), но я никогда не вижу DNS-запрос в Wireshark. Поэтому DNS-программа думает, что пакет был отправлен, но не получает на него ответа и засекает время ожидания этого пакета. Однако последующие DNS-запросы проходят без проблем.

Удерживает ли ядро ​​пакет и если да, как узнать, ПОЧЕМУ оно это делает? Нет никаких правил, блокирующих исходящий пакет.

Я слышал, что ядро ​​может задержать пакет, если считает, что маршрут к удаленному пункту назначения недоступен. Происходит ли это, и если да, как мне узнать об этом больше?

Связанный контент