Как использовать имена хостов, а не IP-адреса в домашней сети?

38

У меня есть небольшая домашняя сеть, и я смог настроить ssh. Может кто-нибудь сказать мне, что мне нужно сделать, чтобы ссылаться на один компьютер в сети с другого по имени хоста, а не по IP-адресу (что я сейчас и делаю)?

naftalimich
источник

Ответы:

40

Вы можете ссылаться на машины, прикрепив .local к имени хоста, например так:

ssh machinename.local

Ссылки:

Хорхе Кастро
источник
Я никогда не знал, что это будет работать на не-Mac, но я просто попробовал это на моей системе 11.10, и это сработало. Это может решить проблему для меня, когда использование маршрутизатора для назначения статических IP-адресов, проводных и беспроводных в одной системе, имеют разные IP-адреса. Используя ваше предложение, мне не нужно знать, какое соединение используется. Интересно, есть ли способ создать псевдоним, чтобы сделать его проще?
Марти Фрид
работал отлично, спасибо. Не могли бы вы прояснить магию? Насколько я понимаю, имя хоста было известно только этому конкретному хосту, если только вы не уведомили о сопоставлении с другими хостами, как сказал Марти выше. Что делает .local? Это инициирует какой-то сигнал вещания?
Нафталимич
1
Я нашел ответ! askubuntu.com/questions/4434/what-does-local-do?rq=1
нафталимич
10

Есть более сложные способы, но мой метод состоит в том, чтобы использовать статический IP-адрес, который я могу назначить с моего маршрутизатора, и ввести адреса в мой файл hosts.

Получив статический адрес из маршрутизатора или из диалогового окна «Сетевые подключения» (на вкладке IPv4 на вкладке «Проводной» или «Беспроводной»), вы редактируете /etc/hosts, используя sudo или gksu, в предпочитаемом вами текстовом редакторе, таком как gedit или vim, и добавьте строку для каждого хоста следующим образом:

192.168.1.100    ComputerName1
192.168.1.101    ComputerName2

Номера, которые я использую, являются общими, но ваша локальная сеть может отличаться. Имена - это то, что вы хотите называть удаленным компьютером, и они могут быть любыми (хотя, вероятно, лучше всего соответствовать реальному имени). Вы также можете создавать локальные веб-сайты по имени здесь, если у вас есть локальный веб-сервер.

Марти Фрид
источник
Вы можете добавить информацию об именах в свой маршрутизатор, и все машины в вашей локальной сети будут знать эти имена. По крайней мере, если они используют ваш маршрутизатор в качестве DNS-сервера.
Андерс
1
@ Андерс: Как бы я это сделал? У меня никогда не было маршрутизатора, в котором было бы место для их определения. В моем текущем маршрутизаторе (Netgear WNR3500L) есть место для статических IP-адресов и место для имени записи, но пинг этого имени у меня не работает. Но у него было имя компьютера в разделе «подключенные устройства», хотя пинг этого имени также не работает в моей системе; но должен быть способ прочитать имя машины, так как это делает маршрутизатор. Я просто использую файл hosts, но это не идеально.
Марти Фрид
В вызове dhcp компьютер может сказать, какое имя он хочет. Именно поэтому маршрутизатор получает имя компьютера. Хм, я вполне уверен, что я установил имя компьютера в маршрутизаторах, а затем смог найти это имя позже. Я делаю это на моем маршрутизаторе с прошивкой OpenWRT теперь так или иначе. Эта прошивка должна работать на вашем роутере. Отлично подходит для настройки туннеля IPv6. :)
Андерс