low-level DNS library