- 12/06/2018
- 7 perc olvasni
-
- D
- d
- n
- V
- g
-
+1
lehet, Hogy találkozik egy RPC-kiszolgáló nem érhető el a hibát, amikor csatlakozik a Windows Management Instrumentation (WMI), SQL Server, közben egy távoli kapcsolat, vagy egy Microsoft Management Console (MMC) beépülő modulokat., A következő kép egy példa egy RPC hibára.
Ez egy gyakran előforduló Hibaüzenet a hálózati világban, és nagyon gyorsan elveszítheti a reményt anélkül, hogy sokat megértene, hogy mi történik a “motorháztető alatt”.
mielőtt belépne a *RPC kiszolgáló hibaelhárításába-hiba, először értsük meg a hiba alapjait. Van néhány fontos fogalmakat megérteni, hogy:
- végpontleképező – szolgáltatás figyel a szerver, amely útmutatók kliens alkalmazások szerver alkalmazások által port UUID.,
- Tower-leírja az RPC protokollt, hogy az ügyfél és a kiszolgáló tárgyalhasson egy kapcsolatról.
- Floor-A tartalom egy torony konkrét adatok, mint a portok, IP-címek, azonosítók.
- UUID-egy jól ismert GUID, amely azonosítja az RPC alkalmazást. Az UUID az, amit használ, hogy egy adott fajta RPC alkalmazás beszélgetés,mivel valószínűleg sok.
- Opnum-annak a függvénynek az azonosítója, amelyet az ügyfél a kiszolgáló végrehajtására kíván. Ez csak egy hexadecimális szám, de egy jó hálózati elemző lefordítja a funkciót az Ön számára., Ha egyikük sem tudja, az alkalmazás eladójának el kell mondania.
- Port-a kliens és szerver alkalmazások kommunikációs végpontjai.
- csonk adatok – az ügyfél és a szerver között cserélt funkciókra és adatokra adott információk. Ez a hasznos teher, a fontos rész.
Megjegyzés
a fenti információk nagy részét a hibaelhárítás során használják, a legfontosabb a dinamikus RPC portszám, amelyet az EPM-hez való beszélgetés során kap.,
hogyan működik a kapcsolat
Az a kliens bizonyos funkciókat kíván végrehajtani, vagy a távoli kiszolgálón futó szolgáltatást kívánja igénybe venni, először háromirányú kézfogással hozza létre a kapcsolatot a távoli kiszolgálóval.
RPC portok adott tartományból is adhatók.,
RPC dinamikus port allokáció konfigurálása
Remote Procedure Call (RPC) a dinamikus port allokációt kiszolgáló alkalmazások és távoli adminisztrációs alkalmazások használják, mint például a Dynamic Host Configuration Protocol (DHCP) Manager, A Windows Internet Name Service (WINS) Manager stb. RPC dynamic port allocation utasítja az RPC programot, hogy egy adott véletlen port a tartományban konfigurált TCP és UDP, végrehajtása alapján a használt operációs rendszer.,
a tűzfalakat használó ügyfelek ellenőrizni akarják, hogy mely portokat használja az RPC, így a tűzfal útválasztója konfigurálható úgy, hogy csak ezeket az átviteli vezérlő protokoll (UDP és TCP) portokat továbbítsa. A Windows számos RPC-kiszolgálója lehetővé teszi a kiszolgáló portjának megadását az egyéni konfigurációs elemekben, például a rendszerleíró adatbázis-bejegyzésekben. Ha meg tud adni egy dedikált szerverportot, akkor tudja, hogy milyen forgalom folyik a házigazdák között a tűzfalon keresztül, és meg tudja határozni, hogy milyen forgalom engedélyezett egy irányított módon.
kiszolgálóportként válasszon ki egy portot az alább megadandó tartományon kívül., Megtalálható egy átfogó listát a szerver portok, hogy használják a Windows és a nagyobb Microsoft termékek a cikk szolgáltatás áttekintése és hálózati port követelmények Windows.A cikk felsorolja azokat az RPC szervereket is, amelyek RPC szerverei konfigurálhatók úgy, hogy az RPC runtime kínálatain túl egyedi szerverportokat használjanak.
egyes tűzfalak lehetővé teszik az UUID szűrést is, ahol az RPC végpont-Mapper kéréséből tanul egy RPC interfész UUID-hez. A válasz a szerver port számát, majd egy későbbi RPC Bind ezen a porton ezután hagyjuk, hogy adja át.,
a Registry Editor segítségével módosíthatja az RPC következő paramétereit. Az RPC-Portot kulcs tárgyalt értékeket az alábbiakban az összes szálloda a következő beállításkulcshoz:
HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\Internet\ Bejegyzés neve adattípus
Portok REG_MULTI_SZ
- Megadja, hogy egy meghatározott IP port tartomány, amely vagy csak a port elérhető az Interneten vagy a port nem érhető el az Interneten. Minden karakterlánc egyetlen portot vagy inkluzív portkészletet jelent., Egy kikötőt például 5984, egy kikötőkészletet pedig 5000-5100 képviselhet. Ha bármely bejegyzés a 0-tól 65535-ig terjedő tartományon kívül esik, vagy ha Bármely karakterlánc nem értelmezhető, az RPC runtime érvénytelennek tekinti a teljes konfigurációt.
PortsInternetAvailable REG_SZ Y vagy n (nem ESET-érzékeny)
- if Y, a portok kulcsban felsorolt portok az összes Internet-elérhető port a számítógépen. Ha N, A portok kulcsban felsorolt portok azok a portok, amelyek nem állnak rendelkezésre Interneten.,
USEINTERNETPORTS REG_SZ) Y vagy N (nem ESET-érzékeny)
- meghatározza a rendszer alapértelmezett házirendjét.
- Ha Y, Az alapértelmezett folyamatokat az Internet-elérhető portok készletéből rendelik, a korábban meghatározottak szerint.
- Ha N, akkor az alapértelmezettet használó folyamatok az intranetes portok készletéből lesznek hozzárendelve.
példa:
ebben a példában az 5000-6000 inclusive portokat önkényesen választották ki annak illusztrálására, hogy az új rendszerleíró kulcs hogyan konfigurálható., Ez nem egy ajánlás egy adott rendszerhez szükséges minimális számú portról.
meg kell nyitnia egy sor portot az 5000-es port felett. Előfordulhat, hogy az 5000 alatti portszámokat más alkalmazások már használják, és ütközést okozhat a DCOM Alkalmazás(OK) val. Ezenkívül a korábbi tapasztalatok azt mutatják, hogy legalább 100 portot kell megnyitni, mivel számos rendszerszolgáltatás támaszkodik ezekre az RPC portokra, hogy kommunikáljanak egymással.
Megjegyzés
a szükséges portok minimális száma számítógépenként eltérhet., A nagyobb forgalmú számítógépek port kimerülési helyzetbe kerülhetnek, ha az RPC dinamikus portjai korlátozottak. Ezt vegye figyelembe a port tartomány korlátozásakor.
Warning
Ha hiba van a portkonfigurációban, vagy nincs elegendő port a medencében, a végpont Mapper szolgáltatás nem tudja regisztrálni az RPC szervereket dinamikus végpontokkal. Konfigurációs hiba esetén a hibakód 87 (0x57) ERROR_INVALID_PARAMETER lesz. Ez hatással lehet A Windows RPC szerverekre is, mint például a Netlogon., Ebben az esetben az 5820-as eseményt naplózza:
Log Name: SystemSource: NETLOGONEvent ID: 5820Level: ErrorKeywords: ClassicDescription:a Netlogon szolgáltatás nem tudta hozzáadni az AuthZ RPC interfészt. A szolgáltatás megszűnt. A következő hiba történt: “a paraméter helytelen.’
ha mély merülést szeretne végezni arról, hogyan működik, olvassa el az RPC over IT/Pro című részt.
hibaelhárítás RPC hiba
PortQuery
a legjobb dolog, hogy mindig hibaelhárítás RPC problémák, mielőtt még bekerülni a nyomok segítségével eszközök, mint a PortQry., Gyorsan meghatározhatja, hogy képes – e kapcsolatot létesíteni a következő parancs futtatásával:
Portqry.exe -n <ServerIP> -e 135
Ez sok kimenetet fog keresni, de keresnie kell *ip_tcp-t-és a zárójelben lévő portszámot, amely megmondja, hogy sikeresen sikerült-e dinamikus portot szerezni az EPM-től, és kapcsolatot létesíteni vele. Ha a fentiek kudarcot vallanak, akkor általában elkezdheti az egyidejű hálózati nyomok gyűjtését., Valami ilyesmi a “PortQry”kimenetéből:
Portqry.exe -n 169.254.0.2 -e 135
részleges kimenet alább:
a félkövér az a rövid távú portszám, amelyhez sikeresen kapcsolódott.
Netsh
az alábbi parancsokat futtathatja a Windows beépített netsh rögzítéseinek kihasználásához, egyidejű nyomkövetés gyűjtéséhez. Ne felejtse el végrehajtani az alábbiakat egy “Admin CMD” – en, magasságot igényel.,
-
a kliens
Netsh trace start scenario=netconnection capture=yes tracefile=c:\client_nettrace.etl maxsize=512 overwrite=yes report=yes
-
a Server
Netsh trace start scenario=netconnection capture=yes tracefile=c:\server_nettrace.etl maxsize=512 overwrite=yes report=yes
Most próbálja meg reprodukálni a problémát az ügyfél gépet, amint úgy érzi, a kérdés már reprodukálni, rajta, ne a nyomok parancs segítségével
Netsh trace stop
Nyissa meg a nyomok a Microsoft Network Monitor 3.4 vagy Üzenet Elemző, majd szűrjük a nyom a
-
Ipv4.address==<client-ip>
vagyipv4.address==<server-ip>
vagytcp.port==135
vagytcp.port==135
kellene segíteni., -
keresse meg az” EPM “protokollt a” protokoll ” oszlopban.
-
most ellenőrizze, hogy kap-e választ a szerverről. Ha választ kap, jegyezze fel a használni kívánt dinamikus portszámot.
-
ellenőrizze, hogy sikeresen csatlakozunk-e ehhez a dinamikus porthoz.,
-
a szűrőnek valami hasonlónak kell lennie:
tcp.port==<dynamic-port-allocated>
ésipv4.address==<server-ip>
Ez segít ellenőrizni a kapcsolatot, és elkülöníteni, ha bármilyen hálózati probléma merül fel látják.
Port nem elérhető
a leggyakoribb ok, amiért azt látjuk, hogy az RPC szerver nem érhető el, amikor a dinamikus port, amelyet az ügyfél megpróbál csatlakozni, nem érhető el. A kliens oldali nyomkövetés ezután megmutatja a dinamikus port TCP SYN újraküldését.,
a port a következő okok miatt nem érhető el:
- a dinamikus porttartomány le van tiltva a tűzfalon a környezetben.
- egy középső eszköz eldobja a csomagokat.
- a célszerver eldobja a csomagokat (WFP drop / NIC drop/ Filter driver stb.).
Leave a Reply