Назад | Перейти на главную страницу

Клиенты Windows 7, подключающиеся к MSMQ в Windows XP, не работают - похоже, это сбой RPC

У меня есть коробка XP, на которой запущено несколько публичных очередей MSMQ. Клиенты Windows 7 не могут подключиться к ним, но клиенты Windows XP могут. При подключении из моего клиента Windows 7 с программой MSMQ Queue Explorer я получаю следующее сообщение об ошибке:

При настройке нового ящика XP, регистрации его в домене, установке проводника очереди все работает фантастически. Я также должен отметить, что мой компьютер с Windows 7 не имеет проблем с подключением к ДРУГИМ компьютерам с XP, работающим с MSMQ, только некоторые из них (все с последними пакетами обновлений).

После БОЛЬШОЙ отладки я, кажется, изолировал проблему до выполняемых вызовов RPC. Я вижу следующую проблему как при использовании Queue Explorer, так и при rpcping. В приведенном ниже примере используется rpcping со следующей командой:

rpcping -s xp-host-1 -a integrity -u 9 && rpcping -s xp-host-2 -a integrity -u 9

xp-host 1 имеет проблему, xp-host-2 - это новая установка без проблем. Это представление можно получить при просмотре данных из wirehark. Очевидно, что последние выполненные вызовы RPC завершились успешно, поскольку вы увидите два дополнительных вызова, выполняемых на второй хост.

Проверка пакетов не выявляет явных различий, однако при использовании Queue Explorer на двух разных серверах (оба XP) мы видим разницу. Кажется, это как-то связано с аутентификацией / вызовом / ответом или чем-то еще, но я изо всех сил пытаюсь выяснить, что.

Кто-нибудь знает, как я могу попробовать решить эту проблему? Я попытался отключить различные типы аутентификации на своем клиенте, но безрезультатно. Пробовал только lanman, ntlm v1, ntlm v2 и так далее.

Еще несколько фактов:

ИЗМЕНИТЬ еще одно изображение:

Похоже, что проблема возникает из-за запроса rpc__mgmt_inq_princ_name. В левой части изображения я пытаюсь подключиться к хосту, который не работает, в правой части я подключаюсь к той же ОС, которая работает.

Проблема была решена при настройке службы MSMQ для работы в качестве локальной учетной записи службы. Предыдущий пользователь был учетной записью администратора домена.