Привет, меня попросили проверить IP-адрес по имени хоста (или псевдониму) на серверах Redhat. В некоторых сценариях sh есть код открытия соединения lftp с внешними серверами ftp. Первое соединение lftp использует host1. ping host1 показывает host1.domain.com. Другой ping host2 показывает неизвестный хост. Как я могу проверить привязку IP-адреса к host2 в Redhat? Я пытался проверить файл хоста, для него нет записи. Есть ли другое место для сопоставления хоста / псевдонима с реальным IP?
и т.д. / nsswitch.conf:
# # /etc/nsswitch.conf # # An example Name Service Switch config file. This file should be # sorted with the most-used services at the beginning. # # The entry '[NOTFOUND=return]' means that the search for an # entry should stop if the search in the previous entry turned # up nothing. Note that if the search failed due to some other reason # (like no NIS server responding) then the search continues with the # next entry. # # Legal entries are: # # nisplus or nis+ Use NIS+ (NIS version 3) # nis or yp Use NIS (NIS version 2), also called YP # dns Use DNS (Domain Name Service) # files Use the local files # db Use the local database (.db) files # compat Use NIS on compat mode # hesiod Use Hesiod for user lookups # [NOTFOUND=return] Stop searching if not found so far # # To use db, put the "db" in front of "files" for entries you want to be # looked up first in the databases # # Example: #passwd: db files nisplus nis #shadow: db files nisplus nis #group: db files nisplus nis passwd: files shadow: files group: files #hosts: db files nisplus nis dns hosts: files dns # Example - obey only what nisplus tells us... #services: nisplus [NOTFOUND=return] files #networks: nisplus [NOTFOUND=return] files #protocols: nisplus [NOTFOUND=return] files #rpc: nisplus [NOTFOUND=return] files #ethers: nisplus [NOTFOUND=return] files #netmasks: nisplus [NOTFOUND=return] files bootparams: nisplus [NOTFOUND=return] files ethers: files netmasks: files networks: files protocols: files rpc: files services: files
Спасибо.
Обычно любой хост пытается разрешить имя с помощью файла hosts. Если это не удается, он попытается запросить настроенный DNS-сервер для разрешения имени.
Имеется файл конфигурации с именем /etc/nsswitch.conf
который определяет порядок процесса разрешения имен.
Если вы найдете такую строку:
hosts: files dns
Это означает сначала запросить файл hosts, а затем DNS-сервер. DNS-серверы можно настроить в /etc/resolv.conf
.
Вы можете использовать следующую команду, чтобы запросить DNS-сервер для разрешения имен:
$ dig host1.example.com
nslookup
может сделать аналогичную работу.
Домен, который используется для определения неквалифицированных имен хостов, может быть установлен в вашем /etc/resolv.conf
файл. Если host2
не существует в домене, указанном в вашем resolv.conf
файл, имя не может быть разрешено, поэтому вы получаете сообщение об ошибке.