Страница 1 из 1

DNS-клиент не понимает короткие имена

Добавлено: 06 сен 2004, 16:43
Serj
Уважаемые господа, может кто подскажет чего бы сделать чтобы можно было юзать короткие имена компов домена (домен на Win server 2003). Дистр. Debian Woody c ядром 2.4 которое с ним идёт в поставке. Полное имя домена: ShortDomainName.local
Значит настроил так, что Ip адрес получает автоматом от вышеуказанного DHCP сервера домена. Файл resolv.conf при запуске интерфейса сетевухи переписывается сволочь (т.е. всё что туда вносится ручками переписывается нафиг) и содержит следующее:

search ShortDomainName.local\000
nameserver 192.168.0.235 #это сервак домена
nameserver 192.168.0.1 #это гейт в инет

Вот, значит по короткому имен не пингует даже сам себя (unknown host), а вот если

ping ShortHostName.ShortDomainName.local

то всё ок для любой тачки в домене включая самого себя.
Про такой формат search который в resolv.conf (...\000) в манах вроде нигде нифига не сказано.
Всё что делал это менял /etc/hostname с ShortHostName на ShortHostName.ShortDomainName.local - до фонаря, работает в обоих вариантах вроде как одинаково.
Чё бы ещё сделать?

Добавлено: 06 сен 2004, 17:06
Serj
А! Забыл добавить - с других хостов под 2000-ми виндозами по коротким именам всё пингуется без вопросов включая и хост под моим Линухом.

Добавлено: 06 сен 2004, 17:31
Llama
(...\000) это какой-то бред и явно лишнее...

Добавлено: 06 сен 2004, 17:37
Serj
Llama писал(а):(...\000) это какой-то бред и явно лишнее...
Блин, но какая-то ж прога вкатывает это в файл резольвера. :(

Добавлено: 06 сен 2004, 17:57
exe
Serj,

Как говорил один мой знакомый -
проблема в 99% сидит перед монитором.

Ручками удали нули и проверь в какой момент это вкатывается.
Почти наверняка сам где-то это внёс, может и не явно.
Ну не верю я что дистрибутив имеет такую багу (1%)

Или измени скрипт который поднимает интерфейс, чтобы он удалял
эту фигню и живи спокойно.

Добавлено: 06 сен 2004, 18:01
Serj
exe писал(а):Serj,

Как говорил один мой знакомый -
проблема в 99% сидит перед монитором.

Ручками удали нули и проверь в какой момент это вкатывается.
Почти наверняка сам где-то это внёс, может и не явно.
Ну не верю я что дистрибутив имеет такую багу (1%)
Возможно. Одно знаю точно нигде явно я этого не писал.
Теперь подскажите как проверить в какой момент и кем перезаписывается resolv.conf после запуска eth0.

Добавлено: 07 сен 2004, 17:55
exe
Есть lsof, надо ловить его вывод по этому файлу - довольно
геморройно. Попробуй то что я потом написал, т.е. добавь
в скрипт очитку этих дрянных нулей.

ps. Не обижайся, то что я написал про проблему перед монитором -
было мне сказано :-)

Добавлено: 08 сен 2004, 11:01
Serj
Ooops! А гугл как всегда рулит:
dhclient and "domainname\000"
http://lists.debian.org/debian-user/200 ... 01587.html
Только чел пишет что у него периодически это происходит (хотя это можно понимать по разному), а у меня на постое.

А вот ещё уже на SuSE:
http://lists.suse.com/archive/suse-linu ... /1225.html

А вот и решение проблемы:
First -- The problem:
You have a linux box getting its IP address from a Win2k DHCP server.

Your resolv.conf looks like this:

search xyz.com\000
nameserver 10.1.1.1
nameserver 10.1.2.1

The \000 at the end is screwing up name resolves.
Fix:
The problem's in /etc/dhclient-script.
Line 36:
echo search $new_domain_name >/etc/resolv.conf

Change this to:
echo -e search $new_domain_name >/etc/resolv.conf

А вот ещё, наверное более кулюторно:
echo search $new_domain_name | sed s/\\000//g >/etc/resolv.conf

И ещё судя по man dhclient-script мона перекрыть процедуру в которой
выполняется запись resolv.conf
Всем спасибо, всё работает, всё ок! :)
exe писал(а):ps. Не обижайся, то что я написал про проблему перед монитором - было мне сказано :)
Да я не обижаюсь. Мог чё нибудь и сам впороть, но судя по вышенаписанному мной - не я виноват :roll: