С тех пор, как я обновил свой iMac 2009 года до Mavericks, я часто получаю сообщение о том, что «Имя вашего компьютера« Foo »уже используется в этой сети. Имя было изменено на «Foo (2)». '. Число в конце будет постепенно увеличиваться с течением времени, так как продолжает происходить одна и та же ошибка.
Переименовать компьютер достаточно просто, но есть ли способ предотвратить это в будущем? У меня был старый Macbook Pro (под управлением Mountain Lion), у которого была такая же проблема, но моя ранняя версия MBP 2013 года с Mavericks, похоже, не страдает от этой проблемы.
scutil --get ComputerName
иhostname
в Терминале. (Вы, вероятно, также должны отслеживать свой IP-адрес, чтобы увидеть, если он изменится) Я действительно думаю, что это что-то с вашим маршрутизатором или DHCP, и имена NetBIOS могут быть кэшированы слишком долго.Ответы:
Временное решение
Как и другие пользователи, я страдаю от этого раздражения, но нашел полуудовлетворительный обходной путь:
my_hostname='your-hostname-here'; for key in LocalHostName ComputerName HostName ; do sudo scutil --set $key $my_hostname; done
После выполнения этой команды вы можете проверить, что все места, где они хранят имя хоста, одинаковы с этой строкой:
for key in LocalHostName ComputerName HostName ; do sudo scutil --get $key; done
Если Macbook продолжает немедленно переименовывать
ComputerName
с суффиксом, вы можете остановить его, выключивWake for Network Access
.System Preferences→Energy Saver→Wake for Wi-Fi network access → Unchecked
После выключения переименуйте свою машину, используя команды выше, чтобы закончить. Вы также можете попытаться принудительно
ComputerName
вернуться назад, используяSystem Preferences→Sharing→Computer Name
настройки текстового поля.Если это не помогло, попробуйте очистить кэш mDNS :
После очистки mDNS-кэша повторите попытку переименования компьютера с помощью приведенных выше команд.
Если это все еще не работает, попробуйте убить
mDNSResponder
службу:Затем повторите попытку, чтобы сбросить имя компьютера с помощью приведенных выше
scutil
команд.Если вы обнаружите, что ничего из этого не приносит никакой пользы, есть и другие решения, о которых сообщалось :
Выключите Bonjour и снова включите
Выключите и перезагрузите ВСЕ сетевое оборудование
Обсуждение проблемы
По моему опыту, установка имени хоста таким образом или через стандарт
System Preferences→Sharing→Computer Name
длится недолгое время. Обычно это <24 часа, но иногдаComputerName
четные значения немедленно изменяются, чтобы иметь суффикс в скобках(N)
. Я заметил, что это число сразу же устанавливается на одно(4)
или(5)
недавно после использованияscutil --set
команд выше.Причиной такого поведения является некоторый код демона, работающий в Mac OS, который пытается добавить пронумерованный суффикс
(N)
каждый раз, когда в сети обнаруживается одно и то же имя хоста. Во всех моих тестах имена хостов, которые я выбрал, НИКОГДА не использовались ранее в сети и, кроме того, НИКОГДА не использовались также для любых устройств Bluetooth.Истинная причина «триггера» этого поведения неизвестна и не проверена. То есть: в ходе всех моих онлайн-исследований и испытаний я не смог окончательно определить, почему Mac OS решает, что имя уже используется, когда оно явно НЕ и никогда не было.
Моя теория состоит в том, что каким - то образом ,
mDNS
также известный какBonjour
(Avahi
для пользователей Linux, или вZero-conf
сети для пользователей Windows) могут быть частично виноваты. Каким-то образом прежнее имя хоста устройства Macbook или Apple сохраняется где-то вmDNS
или, возможно, в некоторой форме информацииARP
таблицы + имени хоста, которая обнаруживается и сохраняется устройством Macbook или Apple. Это может быть какое-то состояние гонки. Каким-то образом запись рассматривается как дубликат и вызывает поведение переименования суффикса Mac OS.Числа с суффиксными именами узлов отображаются при использовании служебной программы обнаружения служб DNS, предоставленной Apple
dns-sd
:Например, используя имя хоста
my-mbp-hostname
, оно может отображаться как следующие записиТеория истинной причины не подтверждена, так как трудно найти и наблюдать за тем, что происходит на самом деле, без доступа к внутреннему состоянию Mac OS и средствам отладки Apple OS низкого уровня. Взаимодействия
mdnsd
,mDNSResponder
иmDNSResponderHelper
с другими службами , Mac OS или даже другими демонами Avahi в сети не очень хорошо документированы и легко наблюдаемые. Текущее состояние некоторых форм обнаружения сети может быть просмотреноdns-sd
и /arp -a
или возможноarp -a -n
. Другие теории или потенциальные места, где может храниться информация об этом имени хоста:smbd
(/System/Library/LaunchDaemons/com.apple.smbd.plist
)smbd
?)mDNS
/Avahi
отражатель (или другой тип ретрансляции пакетов Bonjour / zero-conf по сети маршрутизатором или другим устройством)?mDNSResponder
илиmdnsd
(/System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
)Решение (заполнитель)
По состоянию на 6 октября 2017 года от Apple до сих пор нет полного решения или средства, чтобы предотвратить повторение этой проблемы. Я рекомендую подать в Apple отчет об ошибке, описывающий эту проблему. Вы также можете обратиться в службу поддержки Apple .
Чем больше людей будут шуметь по поводу этой надоедливой проблемы, тем быстрее менеджеры по продуктам Apple будут расставлять приоритеты, чтобы инженеры могли ее исправить.
Отладка / Будущие линии исследования
Это обсуждение на форуме MacRumors содержит некоторую полезную информацию, а также добавление теории о том, что
Wake for Wi-Fi Network Access
устройство Wake / Sleep как-то связано с этой проблемой. Другие представленные теории касаются использования нескольких сетевых адаптеров (например, WiFi + Thunderbolt Ethernet), маршрутизаторов с несколькими точками доступа, объявленных в нескольких диапазонах, таких как802.11 b/g/n
(2,4 ГГц) или802.11 a/ac
(5 ГГц ). Эти комбинации могут вызвать временное появление в сети «призрачной» версии устройства Apple, что приведет к переименованию.Там не было никаких полезных линий журнала в
/var/log/system.log
том , что , казалось , связанные с этим поведение переименованием быть вызвано. ПредположительноmDNSResponder
может быть настроен для более высоких уровней журнала:Как установить эти уровни отладки, кроме, возможно, через несуществующий файл,
/Library/Preferences/com.apple.mDNSResponder.plist
было не ясно. У меня не было конфигурационного примера plist для использования, поэтому я не смог получить дополнительную информацию о регистрацииmDNSResponder
.Такие инструменты, как Wireshark, могут быть полезны для отображения
mDNS
пакетов, передаваемых по сети, наряду с другой потенциально важной информацией о пакетах ARP среди другого трафика.В Mac OS могут использоваться другие инструменты, например,
dscacheutil
для просмотра этой информации. Недостаточно задокументировано или не ясно, как просмотреть определенный кэш этой информации, который используется кодом переименования имени хоста. Когда я тестировал эту утилиту, она не выдает никаких полезных выходных данных, кроме случаев использования режима запроса для точного имени хоста (IP-адреса очищаются для конфиденциальности):источник
System Preferences→Energy Saver→Wake for Wi-Fi network access → Unchecked
. Я думаю, что мне нужно перезагрузить систему снова и дать ей поработать некоторое время, чтобы полностью убедить меня ... но у нас может быть решение!Wake for Wi-Fi network access
настройки мне грустно сообщить, что мой macbook снова сменил имя! Похоже, что поведение определенно как-то связано с Bonjour и AirPlay. В течение 26 дней я не обращался ко многим приложениям, использующим Bonjour, за исключением, может быть,*.local
поиска DNS по имени хоста из утилит командной строки. Сегодня я открылAirFoil
иAirFoil Sattelite
приложения и сразу заметил, что мое имя хоста изменилось с суффиксом(2)
. Эти приложения могут предоставить контрольный пример воспроизведения для ошибкиИспользуете ли вы два сетевых устройства, которые находятся в одной локальной сети? Например, Wi-Fi и проводной Ethernet? Попробуйте отключить один из них. Я имел обыкновение иметь эту проблему и исправил это таким образом.
источник
Та же проблема здесь. Но похоже, что имя foo (2) принимается машиной времени, и оно все еще выполняет резервное копирование в то же место (похоже, оно не восстанавливает всю резервную копию, оно продолжается). Так что без вреда, без фола. Я думаю, что это связано с несколькими активными интерфейсами, я открыл Ethernet для ускорения резервного копирования.
источник
Нет хорошего способа остановить это. Apple придется заменить код имени хоста, чтобы пользователи (люди и программы) всегда были представлены с именем хоста, которое установлено,
scutil
и делали все переименование / перевод под капотом.Поскольку это происходит во всех линейках продуктов Apple (Apple TV, iPhone, Mac и, возможно, даже в Apple Watch), по крайней мере с 2012 года, неясно, что Apple рассматривает эту проблему как проблему, которую необходимо решить.
источник
Это, вероятно, связано с пользователем, который активен, когда вы подключаетесь к сети и настраиваете машину в первый раз. Вполне вероятно, что когда вы создаете эти машины, вы всегда делаете это как один и тот же пользователь
Если вы создаете пользователя, например, dave на, например, MacBook Pro, аппарат автоматически настроит именование следующим образом:
Имя компьютера: MacBook Pro Дэйва
локальное имя хоста: daves-MacBook-Pro.local
а в терминале имя хоста будет отображаться как: daves-mbp
Предполагая, что следующая машина, в которую вы войдете как «dave», также MacBook Pro, он будет точно такой же, как вы: вы подключитесь к сети и получите сообщение о повторении имени.
Там, где я работаю, мы меняем имя в Sharing, затем открываем терминал и запускаем следующую команду: sudo scutil –-set HostName new_hostname
(где new_hostname - ваше выбранное имя)
Затем выйдите и перезапустите терминал, и вы увидите новое имя хоста.
Эта проблема также возникает при переносе пользователей на новые машины - помощник по миграции / машина времени переименует новую машину
некоторая обычно слабая информация об именах - http://support.apple.com/kb/PH13790
источник
Это происходит при запуске двух перекрывающихся DHCP-серверов. Если вы используете более одного маршрутизатора (режим моста), убедитесь, что только один из них использует DHCP без статического IP-адреса.
источник