Як дістатися до хоста в одній мережі за іменем хоста?


11

У мене є мережа, яка з'єднує пару хостів. Я хотів би мати можливість зв’язатися з іншими хостами від одного з них, використовуючи ім'я хоста. Я щойно відкрив домен ".local", який доступний через avahiта /etc/nsswitch.conf. Але це не налаштовано таким чином на моїх серверах. І я не хочу створювати записи на своєму сервері dns. Чи є інший спосіб зробити це?


Avahi mDNS досить добре підходить для ваших потреб. Див. Відповідь про /etc/nsswitch.confте, як його налаштувати.
ulidtko

Відповіді:


10

Ваш /etc/nsswitch.conf вже повинен мати це для mDNS (avahi):

hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4

Просто встановіть avahi-daemonна машини, з якими ви хочете поговорити з іншими, і вам слід налаштувати використання HOSTNAME.local, як це:

ssh yourmachine.local

2
Це відповідь, яку я хотів би подякувати двічі.
ulidtko

2

Альтернативно - додати запис у свій /etc/hostsфайл:

gksudo gedit /etc/hosts

Запис приймає форму 123.123.123.123 host.domainабо просто 123.123.123.123 host.

Якщо ви зробите це, ви можете, наприклад, зараз, ssh hostі він підключиться до123.123.123.123


Вибачте, я забуваю зазначити, що я не хочу робити це з двох причин. По-перше, з міркувань безпеки ці машини є сервером. І я думаю, це може бути проблемою. По-друге, я знаю, що незабаром мій хост зміниться ip adresse. І я не хочу щоразу оновлювати цю конфіденційність. редагувати: третя причина, я використовую dhcp, тому менеджер мережі часто генерує новий. Але я знаю, що є хитрість зробити це, нехай це зробить.
benzen

1

Я знайшов інше рішення. Використовуючи файл, /etc/dhccp3/dhcient.conf існує такий рядок, який починається таким чином. send host-name Це може бути змінено для надсилання імені хоста 'server1'

Це рішення виглядає добре, але я не знаю, чи кожна машина, яка використовує однакові dns, побачить моє ім'я хоста "server1".

Ще одна погана сторона цього рішення, мені потрібно вказати ім'я хоста тут і в /etc/hosts

Я просто знаю, що цей файл ( /etc/dhcp3/dhclient.conf) не є сценарієм, тому я не можу використовувати змінну оточення, щоб правильно заповнити цей рядок.


1

Ви можете дозволити динамічному DHCP додати запис у DNS замість себе.


1
Але я не хочу, щоб їх виставляли на весь Інтернет. Просто потрібно знайти їх у моїй локальній мережі
benzen

0

якщо ви використовуєте avahi-daemon, вам може знадобитися скопіювати ssh.services в / etc / avahi / services. На моєму,

sudo cp /usr/share/doc/avahi-daemon/examples/ssh.service /etc/avahi/services/

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.