Я хочу обновить сервер имен программно.В этом вопросе было упомянуто программно установленный dns-nameserver-on-linux для манипулирования _res.nsaddr_list
- так я и сделал.
void setNameServer(const std::string& rstr_addr)
{
struct sockaddr_in x_addr;
inet_pton(AF_INET,rstr_addr.c_str(),&x_addr.sin_addr);
res_init();
_res.nsaddr_list[0] = x_addr;
}
Это не работает. getaddrinfo
теперь возвращается с ошибкой: «Имя или служба неизвестна»
Итак, в основном два вопроса:
Какой правильный способустановить ip сервера имен программно
Как правильно установить его постоянно (ATM, я просто пишу его в /etc/resolv.conf
самостоятельно)