Написание файлов hosts и networks


Даже если Вы хотите использовать DNS или NIS, можно иметь некоторое подмножество имен и в /etc/hosts. Например, если Вы хотите иметь некоторый вид поиска по имени даже, когда сетевые интерфейсы не запущены, например, во время загрузки. Это не только вопрос удобства, но также позволяет Вам использовать символические имена хостов в скриптах rc. Таким образом, при изменении IP-адресов, Вы должны будете только копировать обновленный файл hosts на все машины вместо того, чтобы редактировать большое количество файлов rc. Обычно Вы будете помещать все локальные имена и адреса в hosts добавлением их на любой gateway и NIS-сервер, если они используются.

Также при проверке Вы должны удостовериться, что сервер имен использует информацию только из файла hosts. Программное обеспечение DNS или NIS может иметь файлы примеров, которые могут дать странные результаты при их использовании. Чтобы заставить все приложения использовать исключительно /etc/hosts при поиске IP-адреса хоста, Вы должны отредактировать файл /etc/host.conf. Закомментируйте все строки, начинающиеся с ключевого слова order и вставьте строку:

order hosts

Конфигурация библиотеки сервера имен будет подробно описана в главе 6.

Файл hosts содержит по одной записи на строку, состоящую из IP-адреса, имени хоста и необязательного списка псевдонимов. Поля отделяются пробелами или табуляцией, поле адреса должно начинаться в первой колонке. Все, что следует после символа #, расценивается как комментарий и игнорируется.

Имя хоста может быть полностью квалифицированным или заданным относительно локального домена. Для vale Вы ввели бы в hosts полностью квалифицированное имя, vale.vbrew.com, а также vale само по себе так, чтобы было известно и официальное имя и более короткое локальное.

Пример файла hosts для Virtual Brewery дан ниже. Два специальных имени, vlager-if1 и vlager-if2, задают адреса для обоих интерфейсов, используемых на vlager:

# # Hosts file for Virtual Brewery/Virtual Winery # # IP FQDN aliases # 127.0.0.1 localhost # 172.16.1.1 vlager.vbrew.com vlager vlager-if1 172.16.1.2 vstout.vbrew.com vstout 172.16.1.3 vale.vbrew.com vale # 172.16.2.1 vlager-if2 172.16.2.2 vbeaujolais.vbrew.com vbeaujolais 172.16.2.3 vbardolino.vbrew.com vbardolino 172.16.2.4 vchianti.vbrew.com vchianti

Точно так же, как с IP-адресами хостов, можно дать символическое имя сетевым адресам. Поэтому файл hosts имеет компаньона /etc/networks, который отображает имя сети на сетевой адрес и наоборот. В Virtual Brewery мы могли бы устанавливать файл networks подобно этому:

# /etc/networks for the Virtual Brewery brew-net 172.16.1.0 wine-net 172.16.2.0



Содержание раздела