Как добраться до хоста в той же сети по имени хоста?
У меня есть сеть, которая соединяет пару хостов. Я хотел бы иметь возможность получить доступ к другим хостам с одного из них, используя имя хоста. Я только что обнаружил домен.local, который доступен через avahi
а также /etc/nsswitch.conf
, Но это не настроено таким образом на моих серверах. И я не хочу создавать запись на моем DNS-сервере. Есть ли другой способ сделать это?
5 ответов
Ваш /etc/nsswitch.conf должен уже иметь это для mDNS (avahi):
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
Просто установите avahi-daemon
на машинах, с которыми вы хотите общаться друг с другом, и вы должны использовать HOSTNAME.local следующим образом:
ssh yourmachine.local
Альтернативой является добавление записи в ваш /etc/hosts
файл:
gksudo gedit /etc/hosts
Запись принимает форму 123.123.123.123 host.domain
или просто 123.123.123.123 host
,
Если вы сделаете это, теперь вы можете, например, ssh host
и он подключится к 123.123.123.123
Вы можете позволить динамическому DHCP добавлять запись в DNS вместо себя.
Я нашел другое решение. Используя файл, /etc/dhccp3/dhcient.conf
Есть строка, начинающаяся как это, send host-name
Это может быть изменено для отправки имени хоста 'server1'
Это решение выглядит хорошо, но я не знаю, увидят ли все машины, которые используют тот же DNS, мое имя хоста "server1".
Еще одна плохая сторона этого решения, мне нужно указать имя хоста здесь и в /etc/hosts
Я просто знаю, что это файл (/etc/dhcp3/dhclient.conf
) не является скриптом, поэтому я не могу использовать переменную окружения, чтобы правильно заполнить эту строку.
При использовании avahi-daemon может потребоваться скопировать ssh.services в /etc/avahi/services. По моему,
sudo cp /usr/share/doc/avahi-daemon/examples/ssh.service /etc/avahi/services/