Настройка разрешения имен
Сетевое имя машины, работающей под управлением GNU/Linux, может быть получено и установлено с помощью команды hostname (пример 20.12).
Пример 20.12. Установка имени хоста |
$ hostname newnote.class.edu
Эта команда выполняется на стадии инициализации системы, а строка имени машины находится в одном из файлов в /etc. Для RH-подобных систем этот файл — /etc/sysconfig/network, в SUSE — /etc/HOSTNAME.
Различают короткие и полные имена узлов (FQDN, Fully Qualified Domain Name). Короткие имена состоят из строк, в которых отсутствуют символы точек. В данном примере короткое имя узла — newnote. Полное имя образу- ется из короткого с помощью добавления доменной части — имени DNS до- мена, которому принадлежит данный компьютер. В этом примере узел newnote принадлежит домену class.edu. Поэтому newnote.class.edu — это полное имя узла.
Имена узлов используются для более понятного указания их в сети. Для че- ловека гораздо более удобно использовать имена компьютеров вместо их IP- адресов. Таким образом, требуется специальная служба для разрешения имен узлов, т. е. преобразования имени узла в его IP-адрес. Часто требуется также осуществить обратное преобразование: из IP-адреса в имя узла. Преобразова- ние осуществляется с помощью специальной библиотеки resolver.
Существуют следующие способы преобразования:
r с помощью файла /etc/hosts. Этот способ подходит для небольших сетей;
r с помощью обращения к службе DNS (Domain Name Service);
r с помощью обращения к службам NIS, NIS+, LDAP и прочим.
Создание статичного списка соответствий IP-адресов именам узлов сети —
наиболее простой способ получения разрешения имен. Он годится для
небольших сетей, т. к. на каждом узле сети должны быть копии файла
/etc/hosts. В каждой строке этого файла указывают IP-адрес и имена узла
(пример 20.13).
Пример 20.13. Файл /etc/hosts |
$ cat /etc/hosts
127.0.0.1 localhost
192.168.1.1 mycomp.mynet.net mycomp
Если имена узлов и их IP-адреса указаны верно, то в этом случае resolver
обеспечит преобразование имен узлов в их адреса (пример 20.14).
Пример 20.14. Автоматическое преобразование имен в IPv4-адреса |
$ ping –c2 mycomp
PING mycomp (192.168.1.1) 56(84) bytes of data.
64 bytes from mycomp (192.168.1.1): icmp_seq=1 ttl=64 time=0.245 ms
64 bytes from mycomp (192.168.1.1): icmp_seq=2 ttl=64 time=0.091 ms
--- 192.168.1.1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1998ms rtt min/avg/max/mdev = 0.088/0.141/0.245/0.073 ms
Настройки resolver хранятся в файле /etc/resolver.conf (пример 20.15).
Пример 20.15. Файл /etc/resolv.conf |
$ cat /etc/resolv.conf nameserver 192.168.1.254 search mydom.com, mydom.net
Директива nameserver задает IP-адрес DNS-сервера, обслуживающего дан- ный компьютер. С помощью последней директивы — search — задают спи- сок доменов, имена которых будут автоматически подставляться к именам узлов при их поиске.
Таким образом, в большинстве случаев для преобразования имени узла в его IP-адрес требуется либо указать его адрес и имя в /etc/hosts, либо настроить доступ к DNS-серверу, указав его IP-адрес в файле /etc/resolv.conf.
Имеются еще два конфигурационных файла, настройки которых влияют на поведение библиотеки resolver — /etc/host.conf и /etc/nsswitch.conf.
Для resolver они важны с точки зрения порядка разрешения имен: будет ли сначала произведено обращение к файлу /etc/hosts или же к DNS (при- мер 20.16).
Пример 20.16. Файл /etc/host.conf |
order host, bind multi on
Здесь задан следующий порядок работы resolver: при разрешении имени узла сначала осуществляется просмотр записей в файле /etc/hosts, а затем — обращение к DNS. Директива multi on заставляет resolver выводить все адреса узлов, имеющих несколько IP-адресов. Файл /etc/nsswitch.conf (Name Service Switch) предназначен для сообщения библиотеке resolver и другим сис- темным вызовам, где искать требуемую информацию. Файл /etc/nsswitch.conf содержит централизованную конфигурационную информацию о доменах и связанных с ними базах данных:
r aliases — почтовые псевдонимы почтового транспортного агента;
r ethers — источник информации о MAC-адресах;
r group — источник информации о группах пользователей;
r hosts — порядок разрешения имен узлов;
r netgroup — список пользователей каждого хоста для службы NIS;
r network — источник информации об именах и адресах сетей;
r passwd — список поиска источников паролей пользователей;
r protocols — список поиска протоколов, используемых в сети;
r publickey — местоположение ключей шифрования;
r rpc — список поиска имен и номеров вызываемых удаленных процедур;
r services — список поиска сетевых служб;
r shadow — список поиска шифрованных паролей.
При использовании DNS и /etc/hosts в файле /etc/nsswitch.conf должны со- держаться строки, представленные в примере 20.17.
Пример 20.17. Настройка разрешения имен |
hosts: files dns networks: files dns
Первая настройка задает порядок разрешения имен узлов: сначала будет про- изведено обращение к /etc/hosts, а далее — к DNS. Вторая настройка задает аналогичный порядок для сетей: сначала к /etc/networks, а затем к DNS.
Дата добавления: 2015-06-12; просмотров: 863;