Služba Message Queuing nelze odesílat zprávy do cílové fronty po změně adresy IP

Důležité: Tento článek obsahuje informace o úpravě registru. Přesvědčte se, zda jste zálohovali registr před úpravami. Ujistěte se, že víte, jak registr obnovit v případě výskytu problému. Další informace o zálohování, obnovení a úpravě registru klepněte na následující číslo článku databáze Microsoft Knowledge Base:
322756 postup zálohování a obnovení registru v systému Windows

Příznaky

Microsoft Message Queuing (MSMQ) nelze úspěšně do fronty odesílat zprávy cílové Pokud jsou splněny obě následující podmínky:
  • Adresu IP v přijímajícím počítači byl změněn.
  • Jiný počítač převzal adresy IP, která byla dříve vlastněných přijímajícím počítači.

Příčina

K tomuto problému dochází, protože odesílatel neopakuje překlad.

Řešení

Microsoft Windows 2000

Informace o aktualizaci zabezpečení

Chcete-li vyřešit tento problém, použít aktualizaci zabezpečení, která je popsána v následujícím článku znalostní báze Microsoft Knowledge Base:
892944 MS05-017: Chyba zabezpečení služby MSMQ umožňuje spuštění kódu

Informace o registrech
Po instalaci této aktualizace zabezpečení, je třeba provést změny v registru. Další informace naleznete v části "Další informace".

Microsoft Windows XP

Informace o aktualizaci Service pack

Tento problém vyřešíte pomocí nejnovější aktualizace service pack pro systém Windows XP. Další informace získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
322389 jak získat nejnovější aktualizaci service pack pro systém Windows XP
Informace o registrech
Po instalaci této aktualizace service pack, je třeba provést změny v registru. Další informace naleznete v části "Další informace".

Informace o opravě hotfix

Společnost Microsoft má k dispozici podporovanou opravu hotfix. Tato oprava hotfix je však určena pouze problému popsanému v tomto článku. Použití této opravy hotfix pouze u systémů, ve kterých dochází k tomuto konkrétnímu problému. Tato oprava hotfix může být dále testována. Proto pokud nejste vážně ohrožen tímto problémem, doporučujeme počkat na další aktualizaci softwaru, která obsahuje tuto opravu hotfix.

Pokud je oprava hotfix k dispozici ke stažení, je v horní části tohoto článku znalostní báze Knowledge Base oddíl "Oprava Hotfix je dostupná ke stažení" . Pokud tato sekce není uvedena, obraťte se na Zákaznický servis a podporu společnosti Microsoft k získaní opravy hotfix.

Poznámka: Pokud nastanou další problémy nebo bude nutné další řešení potíží, bude možná třeba vytvořit další samostatný požadavek na služby. Běžná cena za technickou podporu se vztahuje k dodatečným otázkám podpory a k problémům, které se netýkají této konkrétní opravy hotfix. Úplný seznam telefonních čísel služeb zákazníkům společnosti Microsoft a podpoře nebo vytvořit zvláštní požadavek na službu naleznete na následujícím webu společnosti Microsoft:Poznámka: Ve formuláři „Oprava hotfix je dostupná ke stažení“ se zobrazují jazyky, pro které je oprava hotfix k dispozici. Pokud váš jazyk není zobrazen, to je protože oprava hotfix není k dispozici pro daný jazyk.
Předpoklady
Neexistují žádné požadavky.
Požadavek na restartování
Po instalaci této opravy hotfix musíte restartovat počítač.
Informace o registrech
Po instalaci této opravy hotfix, je třeba provést změny v registru. Další informace naleznete v části "Další informace".
Informace o souborech
Anglická verze této opravy hotfix má atributy (nebo pozdější atributy souborů) uvedené v následující tabulce. Kalendářní data a časy jednotlivých souborů jsou uvedeny v koordinovaném světovém čase (UTC). Při zobrazení informací o souboru je převeden na místní čas. Rozdíl mezi místním časem a časem UTC naleznete na kartě Časové pásmo v položce Datum a čas v okně Ovládací panely.
   Date         Time   Version     Size     File name   -------------------------------------------------------------------------------
15-Dec-2003 17:31 5.1.0.1041 67,456 Mqac.sys
15-Dec-2003 20:37 5.1.0.1041 130,048 Mqad.dll
15-Dec-2003 20:37 5.1.0.1041 14,848 Mqise.dll
15-Dec-2003 20:37 5.1.0.1041 608,256 Mqqm.dll
15-Dec-2003 20:37 5.1.0.1041 165,888 Mqrt.dll
15-Dec-2003 20:37 5.1.0.1041 88,576 Mqsec.dll
15-Dec-2003 17:31 5.1.0.1041 98,816 Mqtgsvc.exe
15-Dec-2003 20:37 5.1.0.1041 467,456 Mqutil.dll
15-Dec-2003 19:01 5.4.1.0 429,336 Windowsxp-kb833512-x86-enu-symbols.exe
15-Dec-2003 19:01 5.4.1.0 799,000 Windowsxp-kb833512-x86-enu.exe

Stav

Společnost Microsoft potvrdila, že se jedná o problém v produktech společnosti Microsoft, které jsou uvedeny v části "Platí pro".

Tento problém byl opraven v aktualizaci Windows XP Service Pack 2.


Tento problém byl opraven v systému Windows Server 2003 Service Pack 1.

Další informace

V tomto scénáři je jednoho odesílatele a dva přijímače (přijímače A a B přijímač). Příjemce A připojí k síti pomocí připojení virtuální privátní sítě (VPN). Odesílatel odesílá zprávy úspěšně. Přijímač A odpojí od sítě. B příjemce připojí k síti a získává adresu IP, která byla dříve použita přijímač A. Přijímač A může také znovu a získat novou adresu IP. Odesílatel i nadále odesílat zprávy, které jsou určeny pro příjemce A na adresu IP, která je nyní používána přijímač B. Odesílatel neopakuje překlad, protože předchozí výsledek byla uložena do mezipaměti. Přijímač B odmítne zprávy, ale odesílatel stále odesílat zprávy příjemci b. Po restartování služby Řízení front zpráv v počítači odesílatele k vyřešení problému.

Změny v registru

Upozornění: Při nesprávné úpravě registru pomocí Editoru registru nebo jiným způsobem může dojít k vážným problémům. Tyto problémy mohou vyžadovat přeinstalaci operačního systému. Společnost Microsoft nemůže zaručit, že tyto problémy bude možné vyřešit. Úpravy registru provádíte na vlastní nebezpečí.

Kromě použití příslušné aktualizace, je nutné nastavit parametry registru na příjemce a odesílatele. Následující změna v registru je vyžadován na straně příjemce tak, aby příjemce vydá relaci, pokud obdrží zprávu pro jiné místní fronty. Tato změna znamená, že příjemce nevrátí že potvrzení relace a odesílatel bude ukončena relace a krátkou dobu později. Je standardní na straně odesílatele potvrzení není přijat v určeném časovém limitu zavřít relaci. Odesílatel se poté pokusí obnovit relaci. Postupujte podle následujících kroků a potom Editor registru ukončete:
  1. Klepněte na tlačítko Start, klepněte na příkaz Spustit, zadejte příkaz regedita klepněte na tlačítko OK.
  2. Vyhledejte a klepněte na následující klíč registru:
    HKEY_LOCAL_MACHINE\Software\Microsoft\MSMQ\Parameters
  3. V nabídce Úpravy přejděte na příkaz Novýa potom klepněte na tlačítko REG_DWORD.
  4. Zadejte CloseSessionOnNonLocala stiskněte klávesu ENTER.
  5. V nabídce Úpravy klepněte na příkaz změnit.
  6. Zadejte 1a potom klepněte na tlačítko OK.
Je třeba provést v registru následující změnu vynutit odesílatele Ignorovat adresy mezipaměti a vždy provést překlad názvů předtím, než se vytvoří relaci. Postupujte podle následujících kroků a potom Editor registru ukončete:
  1. Klepněte na tlačítko Start, klepněte na příkaz Spustit, zadejte příkaz regedita klepněte na tlačítko OK.
  2. Vyhledejte a klepněte na následující klíč registru:
    HKEY_LOCAL_MACHINE\Software\Microsoft\MSMQ\Parameters
  3. V nabídce Úpravy přejděte na příkaz Novýa potom klepněte na tlačítko REG_DWORD.
  4. Zadejte ForceNameResolutionDirecta stiskněte klávesu ENTER.
  5. V nabídce Úpravy klepněte na příkaz změnit.
  6. Zadejte 1a potom klepněte na tlačítko OK.
Tato oprava také přidá protokolování pro kód rozlišení názvu. Tuto změnu lze povolit přidáním následující hodnotu registru. Postupujte podle následujících kroků a potom Editor registru ukončete:
  1. Klepněte na tlačítko Start, klepněte na příkaz Spustit, zadejte příkaz regedita klepněte na tlačítko OK.
  2. Vyhledejte a klepněte na následující klíč registru:
    HKEY_LOCAL_MACHINE\Software\Microsoft\MSMQ\Parameters\Debug
  3. V nabídce Úpravy přejděte na příkaz Novýa potom klepněte na tlačítko REG_DWORD.
  4. Zadejte QMLogginga stiskněte klávesu ENTER.
  5. V nabídce Úpravy klepněte na příkaz změnit.
  6. Zadejte 0x20a klepněte na tlačítko OK.
Poznámka: QMLogging hodnota je specifické pro systém Windows 2000. Hodnoty CloseSessionOnNonLocal a ForceNameResolutionDirect jsou pro systém Windows 2000 a Windows Server 2003.

Navíc je třeba vyprázdnit DNS následující parametry registru a ukládá do mezipaměti názvů NetBIOS. Adresu IP v mezipaměti jinak může být vlastněn do jiného počítače:
  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Netbt\Parameters\CacheTimeout = (DWORD) 0
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters\MaxCacheEntryTtlLimit = (DWORD) 1
Poznámka: Klíč registru MaxCacheEntryTtlLimit je specifické pro systém Windows 2000. Tento klíč registru v systému Windows Server 2003, nazývá MaxCacheTtl. Další informace o klíči registru MaxCacheTtl získáte v následujícím článku znalostní báze Microsoft Knowledge Base:

318803 jak zakázat používání mezipaměti služby DNS klienta v systému Windows XP a Windows Server 2003

Pro další informace o terminologii používané v aktualizacích softwaru, klepněte na následující číslo článku k zobrazení článku v databázi Microsoft Knowledge Base:

824684 Popis standardní terminologie používané při popisu aktualizací softwaru společnosti Microsoft

Vlastnosti

ID článku: 833512 - Poslední kontrola: 16. 1. 2017 - Revize: 2

Váš názor