Я могу использовать TCP в качестве протокола запроса DNS на Mac OS?

Я использую Mac OS, Snow Leopard 10.6.2, и я страдаю от потери пакетов UDP во время запроса DNS. Таким образом, мой веб-браузер также не спешит Интернет перемещения приятно. Но это работало очень хорошо, когда я попробовал запрос DNS на использовании TCP, роют команду.

Однако я не могу найти, что некоторый переключатель управления изменяется для использования TCP во время запроса DNS. Существует ли способ изменить его в Mac OS?

Спасибо.

3
задан 19.05.2010, 16:28

1 ответ

Нет никакого пути (что я знаю о) вынудить стандартную библиотеку сопоставителя (см. man 3 res_query) использовать TCP для всех соединений, хотя отдельные приложения могут сделать это моя установка RES_USEVC отметьте, когда они запустят.

И при этом нет никакого способа настроить BIND, чтобы только отправить запросы по TCP.

Я полагаю, что Вы могли бы сделать это в теории путем выполнения Несвязанный локально, и установка "делает - udp" флаг ко лжи и затем помещение 127.0.0.1 в конфигурации DNS в панели Управления сетью.

Однако документация не является четкой, предотвращает ли это затем Несвязанный от ответа на запросы, полученные по UDP. Я протестирую это... Нет, это не работало. Я послал автору по электронной почте...

Тем не менее Вы действительно не должны делать этого - необходимо найти реальный отказ. Я твердо уверенным в требовании поддержки TCP в DNS (я записал draft-ietf-dnsext-dns-tcp-requirements-03), но это, как все еще только предполагается, используется в качестве нейтрализации, когда сообщения UDP являются слишком большими для согласований или в 512 байтах или в расширенном совместимом формате EDNS0.

4
ответ дан 08.12.2019, 00:36

Теги

Похожие вопросы