Добрый день.
Пытаюсь использовать в коде функцию gethostbyname, но она выдаёт ошибку Unknown host, на точно существующее имя (напр. server.int).
DNS настроено и вроде нормально работает,
dig server.int - проходит на ура.
Что бы это могло быть?
Спасибо.
>Что бы это могло быть?ХЗ, даже представить сложно. Начни отсюда:
/etc/host.conf
/etc/resolv.conf
/etc/nsswitch.confещё глянь через strace, что твоя программа делает.
>Добрый день.
>Пытаюсь использовать в коде функцию gethostbyname, но она выдаёт ошибку Unknown host,
>на точно существующее имя (напр. server.int).
>DNS настроено и вроде нормально работает,
>dig server.int - проходит на ура.
>Что бы это могло быть?
>Спасибо.А кусочек кода Вы не продемонстрируете ?
/etc/host.conforder hosts,bind
multi on/etc/resolve.conf
domain vekone.int
nameserver 192.168.0.1/etc/nsswitch.conf
Файл достаточно большой, но я ничего там не менял, так как не знаю зачем он нужен..
Соббсно код такой:
void Connect (char* Addr)
{
if((Host = gethostbyname(Addr)) == NULL)
{
throw TDNSocketException (SocketInvalidAddressError, (char*)hstrerror(h_errno));
}......
Ну тут далее преобразование адреса и вызов функции connect.
До сюда всё равно не доходим
.......
}
Даже если Addr точно известное имя, я ловлю exception, с описанием ошибки Unkniwn host..