У меня две машины OSX в локальной подсети. Пинги от машины A к машине B постоянно истекают по таймауту до тех пор, пока машина B не пингует машину A. После того, как B пингует A, A может успешно пинговать B, но этот успех временный; если нет связи между двумя машинами в течение получаса или около того, эхо-запросы от A до B снова начинают отсчет времени ожидания (пока B снова не пингует A).
Как я могу гарантировать, что B всегда доступен из A, без необходимости "кикстарта" соединения, сначала отправив эхо-запрос A из B?
Когда вы говорите об одной и той же подсети, ясно ли вам, какое отраслевое определение подсети используется, потому что это термин, который часто используют неправильно.
Я хочу уточнить, что вы говорите, что два блока OSx не разделены маршрутизатором (брандмауэры - это маршрутизаторы с определенным отношением), связывающим две схемы адресов, в которых находятся эти блоки.
То, что вы описываете, является точным сигналом для устаревших записей ARP, которые пропускаются либо с несуществующими, либо с неверно настроенными План обрезки ARP. ARP - это метод адресации Ethernet, при котором адреса TCP / IP зависят от правильной работы.
Вы детализируете, что одна система не может найти другую, пока она не будет достигнута первым тем же компьютером, который она просто не смогла найти, пока она не будет сначала обновлена отсутствующим компьютером.
Если это проблема с сокращением ARP, отсутствующий компьютер, который должен выполнить эхо-запрос вторым, обновляет ваш первый и ошибочный компьютер с помощью новой комбинации ARP / IP, если они оба находятся в разных подсетях, коммутатор промышленного уровня, такой как Cisco или NetGear профессиональное устройство могло бы легко управлять этими записями и предотвратить частое повторение подобных ситуаций по сравнению с сетью, не оснащенной таким оборудованием.
Хороший вопрос: оснащена ли машина B более агрессивной политикой управления питанием или используется реже, и ей разрешено приостанавливать / переходить в спящий режим? Потому что это не идеальное мероприятие, и у сообщества Windows есть эта проблема в сетях крупных небольших компаний, которые пытаются сэкономить на электроэнергии, но не обновляют свою сетевую инфраструктуру. Таким образом, ПК отключен, их IP-адреса передаются в аренду кому-то другому или возвращаются в пул адресов и остаются неназначенными. Ваш компьютер A продолжает настаивать на том, что компьютер B должен находиться на этом конкретном IP-адресе, когда он был давно выселен с этого адреса.
Подтвердите это, запретив обеим машинам приостанавливать работу или отключать свои сетевые адаптеры для экономии энергии. Сетевые адаптеры WiFi обычно потребляют больше энергии и управляются более агрессивно, поэтому, если это устройства Wi-Fi, проверьте все настройки управления питанием на обеих машинах, чтобы убедиться, что они остаются работоспособными и запитанными.
Команды TCP / IP имеют больше общих частей, чем другие команды, используемые в Mac / Windows, на стороне Win мы используем arp -a
чтобы выгрузить список IP-адресов и ARP, в следующий раз, когда ваш B-ящик станет недоступен и, если вы сможете до него добраться, сначала посетите его и пока ничего не пингуйте, чтобы ничего не пробудить, пока вы не определите его текущий IP-адрес.
Затем из машины A подтвердите, что она не может снова найти машину B, и выполните эквивалентную arp -a
сравните IP-машину A (блок, который не может B, пока B не объявит о себе), если IP-адреса отличаются от кеша A и физического осмотра B ... у вас возникла проблема с сокращением ARP, и вы должны мне полностью за это подробный ответ.
Проверьте наличие повторяющегося MAC-адреса в вашей локальной сети.
Это очень похоже на проблему с сетью, которая возникла у меня некоторое время назад.