DHCP Event Log

A hosszas Active Directory szívásomnak (aminek még mindig nem látom, hogy megnyugtatóan vége lenne) volt egy áldozata. Az egyik résztvevő DC-n lévő DHCP szolgáltatás logolása megadta magát.
A gép épp a szokásos replikációs cirkuszát művelte, amikor újraindítás után kaptam valami ronda TCP hibát. Erre az utóbbira az lett a megoldás, hogy a telepített, de még be nem üzemelt RIS-t leszedtem. Erre válaszul a DHCP Event Log üzenetek szövege eltűnt és helyettük az ismerős /AUXSOURCE -os szövegek jelentek meg.
Keresgéltem a neten de nem találtam semmit róla.
Miután korábban egy kicsit belekontárkodtam az Event Logba fejlesztői oldalról ezért megpróbáltam más oldalról megközelíteni a problémát. Az Event Log nem olyan egyszerűen működik mint azt sokan gondolják. Az általános vélekedés szerint fogjuk a szöveget, az azonosítót és a log forrást és ezekkel meghívunk valami API-t és kész is vagyunk. A történet nem egészen így működik (bizonyos programozói környezetekben pl. .NET 1.1, WSH ennyire leegyszerűsítették).
Egyszerűen fogalmazva minden Event Log forráshoz tartozik egy vagy több erőforrás DLL amiben megtalálható az adott forráshoz tartozó összes lehetséges log bejegyzés szöveges váza. Amikor az alkalmazás logol akkor a DLL-ben található szöveg azonosítóját adja meg valamint azokat a paramétereket (InsertionStrings) amiket a szöveg vázba be kell helyettesíteni.
Ennek a technológiának a következményei:
– A rendszer könnyen lokalizálható, mert csak az erőforrás DLL-t kell nyelvi verzióra cserélni. Sőt, ha egy más nyelvi verziójú gépről nézzük a logot, akkor más nyelvűek lesznek a bejegyzések, mert az Event Log viewer a helyi gép lokalizált erőforrás DLL-eit használja

– Az Event Log bejegyzések könnyen feldolgozhatók, mert nem kell foglalkoznunk az alap szöveggel, csak az InsertionStrings tartalmával és az azonosítókkal

– Ennek megvannak a maga hátrányai is. Időnként a rendszer nem találja meg ezt a DLL-t (nincs meg a regisztráció, vagy azon a gépen ahol nézzük a logot nincs egyáltalán telepítve a szükséges DLL)
A fentiek ismeretében már egyszerűen megállapítható, hogy mi az eredeti probléma oka. A RIS leszedése kiszedte a DHCP szerver erőforrás DLL bejegyzéseit a registry-ből.
Tehát fogok egy szervert, amin jól működik a DHCP. Kiexportálom a HKLM\SYSTEM\CurrentControlSet\Services\Eventlog\System\DHCPServer registry kulcsot. Beimportálom a hibás gépen és meg is vagyok.
Már csak egy dolgot kell kiderítenem. Ez csak az adott esetben előforduló probléma volt, vagy hiba a rendszerben. Ha lesz időm, egy virtuális vason kipróbálom.
 
Kategória: Computers and Internet | Közvetlen link a könyvjelzőhöz.

8 hozzászólás a(z) DHCP Event Log bejegyzéshez

  1. Tamas szerint:

    csak a pontossag kedveert: kimaradt egy "Services" a registry path-bol.es amugy az ugyancsak itt levo TypesSupported nem zavar be a masik gepen? vagy mindig 7 lehet a dhcp servereknel? az msdn szerint persze nincs is 7-es ertek🙂

  2. Zoltan szerint:

    Köszi, javítottam a hibát.A TypesSupported 7-es értéke teljesen normális. Az MSDN szerint:TypesSupported (REG_DWORD) A bitmask of the possible severity levels that can be logged. Drivers typically set this to 7 to indicate they may log all severity levels. Idézet innen:http://msdn.microsoft.com/library/default.asp?url=/library/en-us/Kernel_d/hh/Kernel_d/Other_fd55c784-3f8f-48ac-b162-74e6078ed604.xml.asp

Vélemény, hozzászólás?

Adatok megadása vagy bejelentkezés valamelyik ikonnal:

WordPress.com Logo

Hozzászólhat a WordPress.com felhasználói fiók használatával. Kilépés / Módosítás )

Twitter kép

Hozzászólhat a Twitter felhasználói fiók használatával. Kilépés / Módosítás )

Facebook kép

Hozzászólhat a Facebook felhasználói fiók használatával. Kilépés / Módosítás )

Google+ kép

Hozzászólhat a Google+ felhasználói fiók használatával. Kilépés / Módosítás )

Kapcsolódás: %s