Назад | Перейти на главную страницу

Как найти IP-адрес по имени хоста (или псевдониму)?

Привет, меня попросили проверить 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 файл, имя не может быть разрешено, поэтому вы получаете сообщение об ошибке.