Win2008 R2上的MSMQ将不会收到来自旧客户端的消息 [英] MSMQ on Win2008 R2 won’t receive messages from older clients

查看:108
本文介绍了Win2008 R2上的MSMQ将不会收到来自旧客户端的消息的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在与一个非常奇怪的问题作斗争.我有一台装有消息队列的Windows 2008 R2服务器.在另一台计算机上,运行Windows 2003的服务被设置为将消息发送到2008服务器上的公共队列.但是,消息永远不会显示在服务器上.

I'm battling a really weird problem here. I have a Windows 2008 R2 server with Message Queueing installed. On another machine, running Windows 2003 is a service that is set up to send messages to a public queue on the 2008 server. However, messages never show up on the server.

我编写了一个小型控制台应用程序,该应用程序仅向"2008机器"上的测试队列发送"Hello World"消息.在XP或2003上运行此应用程序绝对不会产生任何结果.但是,当我尝试在Windows 7计算机上运行该应用程序时,会传递一条消息.

I've written a small console app that just sends a "Hello World" message to a test queue on the 2008 machine. Running this app on XP or 2003 results in absolutely nothing. However, when I try running the app on my Windows 7 machine, a message is delivered just fine.

我经历过各种安全设置,在所有计算机上禁用了防火墙等.事件日志没有显示任何有趣的内容,并且客户端上没有抛出异常.

I've been through all sorts of security settings, disabled firewalls on all machines etc. The event log shows nothing of interest, and no exceptions are being thrown on the clients.

在服务器上运行数据包嗅探器(WireShark)仅显示少量内容.尝试从XP或2003发送消息时,我仅在端口3527上看到ICMP错误端口不可达"(我收集的是MQPing数据包?).之后,保持沉默.当我从Win7客户端尝试时,Wireshark会显示少量的数据包流(如预期的那样-从Win7可以很好地传递消息).

Running a packet sniffer (WireShark) on the server reveals only a little. When trying to send a message from XP or 2003 I only see an ICMP error "Port Unreachable" on port 3527 (which I gather is an MQPing packet?). After that, silence. Wireshark shows a nice little stream of packets when I try from my Win7 client (as expected - messages get delivered just fine from Win7).

我已经在服务器上启用了MSMQ End2End日志记录,但是日志中仅显示了从Win7计算机发送的消息中的条目.

I've enabled MSMQ End2End logging on the server, but only entries from the messages sent from my Win7 machine are appearing in the log.

因此,从XP或2003到我的2008服务器的路由中,消息似乎被默默地丢弃了.

So somehow it seems that messages are being dropped silently somewhere along the route from XP or 2003 to my 2008 server.

有人对导致这种神秘行为的原因有任何线索吗?

Does anyone have any clues as to what might be causing this mysterious behaviour?

推荐答案

一个名叫约翰·布雷克威尔(John Breakwell)的人( http://blogs.msdn.com/johnbreakwell/default.aspx )回答了我对此的推文,并指出了我自己的一条线索,即ICMP端口无法到达"的线索.

A fellow named John Breakwell (http://blogs.msdn.com/johnbreakwell/default.aspx) answered to my tweets on this and pointed me to one of my own clues, namely the ICMP "Port Unreachable" one.

他向我推荐了 technet文章告诉您如何重新启用在端口3527上运行的ping服务.这只不过是完成了一个简单的注册表黑客操作(并重新启动了MSMQ),现在我的Win2008服务器很高兴收到消息:-)

He referred me to a technet article that tells you how to re-enable the ping service running on port 3527. A simple registry hack was all it took (and a restart of MSMQ) and now my Win2008 server is happily receiving messages :-)

这篇关于Win2008 R2上的MSMQ将不会收到来自旧客户端的消息的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆