Я бы хотел, чтобы Linux сделал только один запрос к DNS-серверу, дождался тайм-аута 5 секунд и затем прервал поиск, если нет ответа.
Для этого я установил следующие параметры в /etc/resolv.conf
при условии, что attempts
элемент в options
означает точное количество DNS-запросов:
nameserver 'DNS Server IP address'
domain 'Domain Name'
options attempts:1 timeout:5
Но система ведет себя неожиданно. Фактически для этих настроек я наблюдаю:
DNS request
Wait for a 5 sec timeout
DNS request repeat
Wait for a 5 sec timeout
Если я выставлю попытки: 2, будет 4 запроса.
Правильно ли я понимаю, что «1 попытка» на самом деле означает «сделать запрос, а затем повторно запросить его по истечении тайм-аута»?
Есть ли способ изменить это поведение, чтобы система отправляла только один DNS-запрос за 1 попытку?
Спасибо
Ваша интерпретация мне кажется правильной.
Вы проверили, что это за два запроса? Может, первый для AAAA
запись, а вторая - для A
запись, что является нормальным поведением. Если да, попробуйте добавить inet6:off
в options
Тоже, наверное, тривиально, но проверьте количество nameserver
предметы, которые у вас есть. Таймаут для каждого из них последовательно.