4

我在這裏與一個非常奇怪的問題作鬥爭。我有安裝了消息隊列的Windows 2008 R2服務器。在另一臺機器上,運行Windows 2003是一種服務,它設置爲將消息發送到2008服務器上的公用隊列。但是,消息永遠不會顯示在服務器上。Win2008 R2上的MSMQ將不會收到來自舊客戶端的消息

我寫了一個小的控制檯應用程序,它只是向2008年的機器上的測試隊列發送「Hello World」消息。在XP或2003上運行這個應用程序絕對沒有結果。但是,當我嘗試在Windows 7計算機上運行應用程序時,消息傳遞得很好。

我已經通過各種安全設置,在所有機器上禁用了防火牆等。事件日誌顯示沒有任何興趣,並且沒有任何例外情況正在拋出客戶端。

在服務器上運行數據包嗅探器(WireShark)只顯示一點點。當試圖從XP或2003發送消息時,我只能看到端口3527上的ICMP錯誤「Port Unreachable」(我收集的是一個MQPing數據包?)。之後,沉默。當我從我的Win7客戶端嘗試時,Wireshark顯示了一個很好的數據包流(正如預期的那樣 - 消息從Win7傳遞得很好)。

我已經在服務器上啓用了MSMQ End2End日誌記錄,但是隻有從我的Win7機器發送的消息中的條目出現在日誌中。

因此,不知何故似乎郵件正悄悄地被丟棄在從XP或2003到我的2008服務器的路徑中。

有沒有人有任何線索可能會導致這種神祕的行爲?

回答

2

一位名叫John Breakwell的夥計(http://blogs.msdn.com/johnbreakwell/default.aspx)在我的微博上回答了這個問題,並指出我有一個我自己的線索,即ICMP「端口無法訪問」之一。

他轉介我一個technet article,告訴你如何重新啓用運行在端口3527上的ping服務。一個簡單的註冊表攻擊只需要(並重新啓動MSMQ),現在我的Win2008服務器正在愉快地接收消息:-)

相關問題