Мой маршрутизатор - это Airport Extreme. Я могу легко использовать ssh для других компьютеров OS X через hostname.local (example1.local, exmaple2.local и т. Д.), Как только он будет установлен в настройках.
Но, несмотря на то, что моя машина Ubuntu подключена, ее имя хоста, похоже, не видно другим машинам в моей локальной сети. Могу подключиться через LAN ip. Я также могу добавить его вручную в свой файл / etc / hosts, и он отлично работает. но как мне заставить его динамически транслировать свое имя хоста, как это делают мои машины OS X?
Я действительно не понимаю, как мои машины OS X распознают имена хостов .local друг друга, предоставляет ли маршрутизатор DNS?
Маршрутизатор не предоставляет DNS. Все ваши Mac могут видеть друг друга, потому что они используют mDNS (Bonjour) для локального разрешения имен.
Вы можете установить и настроить Ahavi на своем компьютере с Ubuntu, если хотите, чтобы он работал таким же образом или вы можете настроить реальный DNS-сервер.
Вам не нужно регистрировать имя вашего хоста в Airport Extreme, чтобы его имя распознавалось в домене .local
. Вам просто нужно запустить стек zeroconf на вашем компьютере. В частности, для Ubuntu, просто убедитесь, что пакет «avahi-daemon» установлен и Avahi запущен (что будет по умолчанию, если пакет установлен).