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

MSMQ на Win2008 R2 не будет получать сообщения от старых клиентов

Здесь я борюсь с действительно странной проблемой. У меня есть сервер Windows 2008 R2 с установленной очередью сообщений. На другом компьютере под управлением Windows 2003 есть служба, настроенная для отправки сообщений в общую очередь на сервере 2008 года. Однако сообщения никогда не появляются на сервере.

Я написал небольшое консольное приложение, которое просто отправляет сообщение «Hello World» в тестовую очередь на машине 2008 года. Запуск этого приложения в XP или 2003 ни к чему не приводит. Однако, когда я пытаюсь запустить приложение на своем компьютере с Windows 7, сообщение доставляется нормально.

Я прошел через всевозможные настройки безопасности, отключил брандмауэры на всех машинах и т. Д. Журнал событий не показывает ничего интересного, и никаких исключений для клиентов не возникает.

Запуск анализатора пакетов (WireShark) на сервере показывает лишь немногое. При попытке отправить сообщение из XP или 2003 я вижу только ICMP-ошибку «Порт недоступен» на порту 3527 (который, как я понял, является пакетом MQPing?). После этого тишина. Wireshark показывает небольшой поток пакетов, когда я пытаюсь использовать свой клиент Win7 (как и ожидалось - сообщения доставляются из Win7 без проблем).

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

Так что почему-то кажется, что сообщения незаметно отбрасываются где-то на пути от XP или 2003 до моего сервера 2008 года.

Есть ли у кого-нибудь подсказки относительно того, что могло быть причиной этого загадочного поведения?

- Джеспер

Вот Это Да! Сила Твиттера потрясающая. Человек по имени Джон Брейквелл (http://blogs.msdn.com/johnbreakwell/default.aspx) ответил на мои твиты по этому поводу и указал мне на одну из моих подсказок, а именно на ICMP «Port Unreachable».

Он направил меня к статья в технике в котором рассказывается, как повторно включить службу ping, работающую на порту 3527. Достаточно простого взлома реестра (и перезапуска MSMQ), и теперь мой сервер Win2008 с радостью принимает сообщения :-)

- Джеспер

Я решил аналогичную проблему (сообщения не отправлялись с 2005 по 2008 год). Пользователь «Все» имел право отправлять сообщения, но не пользователь «АНОНИМНЫЙ ВХОД».

Вам необходимо авторизовать пользователя «АНОНИМНЫЙ ВХОД» для отправки сообщений. Пользователь "Все" не включает анонимного.

http://i.imgur.com/n7TAc.png