Загадка была тут, и никто её не отгадал, хотя мысли в правильном направлении были.
Там действительно сломался керберос. Причём даже при включённом режиме диагностики (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Kerberos\Parameters\LogLevel=1) в логах не было ВООБЩЕ НИЧЕГО про ошибки кербероса. Были сообщения про наведённые ошибки, в частности, “The RPC protocol sequence is not supported”, вероятно, случалось из-за попытки выполнить какие-то действия, требующие аутентификации, после того, как сама эта аутентификация не сработала.
Вот по комбинации наведённых ошибок и была найдена статья с рекомендацией принудительно перевести керберос в режим TCP (HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\ Kerberos\Parameters\MaxPacketSize=1).
С какого бодуна оно перестало на одной конкретной машине работать по UDP — загадка великая есть.
С какого бодуна быдлокодеры из Майкрософта решили, что максимальный размер UDP-пакета – 2000 байт, я тоже не знаю, но там так написано: “By default, the maximum size of datagram packets for which Windows Server 2003 uses UDP is 1,465 bytes. For Windows XP and for Windows 2000, this maximum is 2,000 bytes. Transmission Control Protocol (TCP) is used for any datagrampacket that is larger than this maximum.”
Почему те же быдлокодеры ниасилили вывести в лог хоть что-нибудь про неработающий керберос? Видимо, потому что быдлокодеры.
И как можно было так скрестить NTLM authentication с керберосом, чтобы разделяемые ресурсы на сервере успешно подключались, но в них ничего не было видно — это уже вообще за гранью разума.
В общем, ещё один повод считать, что для сколько-нибудь серьёзных задач Windows использовать не следует. Иначе придётся танцевать с бубном, пытаясь _угадать_, что же там сломалось.
Оригинал этой записи. Комментировать можно тут или там.