Я не эксперт по DNS в любом случае, но я думал, что DNS обычно использует UDP, а не TCP?
В любом случае, вот ссылка на страницу , которая описываетобщение с использованием меньшего количества слов, которые могут быть проще для понимания, чем сам RFC.
Кроме того, даже если вы не можете использовать саму библиотеку libresolve, вы не можете взглянуть на версию этой библиотеки с открытым исходным кодом и использоватькод от одного из них (при условии, что лицензия совместима с вашей работой).Вот один из Apple , который я нашел через Google.