В следующий раз, когда эта проблема происходит, я предложил бы выполнить некоторые захваты пакетов на двух рассматриваемых хостах, определить, какой трафик ARP каждый из них наблюдает.
Ваша машина HAproxy будет, скорее всего, иметь некоторый аромат tcpdump установленным. Для машины Windows Вам или будет нужно приложение WinPCAP, как Wireshark или Microsoft Network Monitor.
На самом деле, думая об этом, поскольку проблема, кажется, с ARP а именно, Вы могли потенциально просто непрерывно записывать весь трафик ARP на машине HAproxy и рассматриваемой машине Windows с прокручивающимся файлом получения (для пользы аргумента) 10 МБ. Это должно быть достаточно большое таким образом, что к тому времени, когда Вы обнаружили отказ, файл получения будет все еще содержать трафик ARP до отказа. (Стоит экспериментировать путем выполнения получения в течение приблизительно одного часа, видеть, сколько данных это генерирует).
Синтаксис получения в качестве примера для Linux tcpdump (примечание, у меня нет поля Linux удобным для тестирования этого на; протестируйте поведение-C и-W перед использованием в производстве!):
tcpdump -C 10 -i eth1 -w /var/tmp/arp.cap -W 1 arp
Это должно, надо надеяться, дать Вам некоторый признак того, что точно перестало работать. Когда запись ARP истекает (и в соответствии с этой статьей, более новые версии Windows, кажется, стареют 'неактивные' записи очень настойчиво), я ожидал бы, что следующее произойдет:
Простой, поскольку это звучит, существует набор других вещей, которые могут вмешаться в этот процесс:
Вещи проверить, происходит ли это снова:
Это, скорее всего - полномочия или переменная среды. При использовании каких-либо переменных среды в перепроверке сценария, что они также установлены, когда выполнено через крон, как среда Вар часто является не тем же, как они для нормальной оболочки входа в систему.
Если не среда, только начните проверять полномочия дважды.