URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 88297
[ Назад ]

Исходное сообщение
"hostname"

Отправлено hajnybr , 02-Мрт-10 07:56 
Здравствуйте!
Помогите мне, пожалуйста, разобраться в возможных вариантах имени компьютера.
Я не могу сориентироваться даже, где получить информацию на этот счёт.

Читал ханбук, маны hosts, lmhosts, hostname, gethostname, mamed.conf.

Пока я понял, что может быть netbios-имя (для windows-сетей) и dns-имя (для "вообще").
Что тогда задается директивой "hostname" в rc.conf? Просто имя? :-)
С dns всё более-менее понятно, но вот как всё происходит, когда службы dns в сети нет?
Может ли машина иметь два имени? Три? (Не dns-имена, их-то, понятно, может)
Есть ли в unix-сети (без dns) служба распределения имен, или только локальные копии hosts?
Можно ли по ip-адресу узнать имя машины (win, unix), (опросив её) в случае если dns сервер недоступен?

Так-то бы чёрт бы с ним, но mount_smbfs требует имя, чтобы настроить apache для локалки машине тоже нужно присвоить имя и т.д.

Порекомендуйте, пожалуйста, источник информации на этот счёт.


Содержание

Сообщения в этом обсуждении
"hostname"
Отправлено Ziggy Stardust , 02-Мрт-10 09:05 
>Пока я понял, что может быть netbios-имя (для windows-сетей) и dns-имя (для
>"вообще").

Правильно.

Нетбиос - имя для виндового сетевого окружения, оперируют им сервера WINS и мастер браузеры.

ДНС-имя это просто записи в прямой и обратной зоне соответствующих ДНС серверов.

>Что тогда задается директивой "hostname" в rc.conf? Просто имя? :-)

Я там обычно FQDN для основного ай-пи с основного сетевого интерфейса пишу.

Типа: hostname="server.domain.ru"

>С dns всё более-менее понятно, но вот как всё происходит, когда службы
>dns в сети нет?

Тогда вообще до лампочки чего там писать.

>Может ли машина иметь два имени? Три? (Не dns-имена, их-то, понятно, может)

Может.

>Есть ли в unix-сети (без dns) служба распределения имен, или только локальные
>копии hosts?

Есть еще NIS/NIS+, например. Но проще все же ДНС поднять. Если у вас есть виндовая сеть с актив директори, то ДНС у вас уже есть.

>Можно ли по ip-адресу узнать имя машины (win, unix), (опросив её) в
>случае если dns сервер недоступен?

При наличии в сети WINS сервера можно. Через броадкасты наверное тоже можно, но не уверен.

>Так-то бы чёрт бы с ним, но mount_smbfs требует имя, чтобы настроить
>apache для локалки машине тоже нужно присвоить имя и т.д.

mount_smbfs -I 192.168.1.1 //user@server/sharename /mnt


"hostname"
Отправлено lavr , 02-Мрт-10 09:31 
>[оверквотинг удален]
>
>Есть ли в unix-сети (без dns) служба распределения имен, или только локальные
>копии hosts?
>Можно ли по ip-адресу узнать имя машины (win, unix), (опросив её) в
>случае если dns сервер недоступен?
>
>Так-то бы чёрт бы с ним, но mount_smbfs требует имя, чтобы настроить
>apache для локалки машине тоже нужно присвоить имя и т.д.
>
>Порекомендуйте, пожалуйста, источник информации на этот счёт.

Чтобы разобраться в верхнем, следует читать НЕ man'ы и handbook'и, а книги или
лекции, например:
http://www.intuit.ru/department/network/baslocnet/
http://www.citforum.ru/nets/semenov/


"hostname"
Отправлено Amator , 02-Мрт-10 16:37 
сам, признаюсь, не до конца разобрался, но пару замечаний скажу - по крайней мере я так поступаю :)
Параметр hostname очень важен, можно сказать жизненно необходим. Мы задаём его в файле /etc/rc.conf в виде имени:

например:

hostname="gw.lan"

но имя нужно преобразовать в ip. Каким образом? -
1) Через систему доменных имён - но DNS-сервер может быть не доступен во время загрузки компьютера (и сразу вопрос: на каком этапе происходит преобразование hostname? - когда сетевые интерфейсы уже подняты? ...);
поэтому лучше 2) воспользоваться файлом /etc/hosts :

127.0.0.1               localhost localhost.lan. gw.lan.

Для перестраховки так сказать :)

Всё-равно для конкретных служб мы (ну или я) задаём ip-адрес, на котором служба будет работать:
типа
Listen 12.34.56.78:80


"hostname"
Отправлено Amator , 02-Мрт-10 17:08 
и ещё одно замечание - не меняйте hostname "на лету" !!!
если нужно сменить hostname - тогда внесите изменения в /etc/rc.conf:

hostname="new-name.lan"

и после этого перегрузите все службы - просто многие службы создают файл, в котором хранится pid-процесса, в виде `hostname -s`.pid и, следовательно, после смены hostname "на лету" через:

# hostname "new-name.lan"

не смогут найти файл `hostname -s`.pid (new-name.pid)

Но это не все программки - с грамотно написанными проблем не будет.