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