A következő furcsaságot találtam: Dógozgatok az itthoni Oracle szervereimmel (11gR1, 11gR2), ki-be lépkedek az sqlplusba, indítgatom a programjaimat, a connect villámgyors. Egyszercsak azt látom, hogy a connect elakad. Az sqlplusban is elakad, a saját programjaimban is. Nem véglegesen, de soká tart neki. Méricskélem mennyire soká, hát éppen 20 másodpercig. Mondok magamnak, ez olyan, mint egy timeout. És mit ad Isten, észreveszem, hogy leállt az internet. Visszacsinálom az internetet, a connect megint gyors. Néhány ellenpróba, a jelenség determinisztikus.
Az Oraclees munkához nem kell internet, tehát elvileg mindegy, hogy van-e vagy nincs. És mégsem, mert a connect minden esetben internet kapcsolatot akar csinálni. A netstatban próbáltam megnézni, de nem látszik, talán túl rövid ideig létezik a kapcsolat. Mi ez, ha nem egy trójai. Van erről valakinek infója?
Hozzászólások
wireshark/tshark a barátod
Mielőtt teljesen felülnél a falóra, azért nézd meg, hogy a hosts file-ban felvetted-e minden belső hosztodat. Könnyen lehet ugyanis, hogy csak egyszerűen névfeloldással próbálkozik a szerver minden kliens kapcsolódáskor.
Jó ötlet. Lekapcsolt internettel (kábel kihúzva) és kitörölt resolv.conf-fal megszűnik a jelenség. Csakhogy ez nem oszlatja el a trójai gyanúját, mert mégiscsak ki akar menni az internetre, amikor semmi dolga nincs ott, névfeloldásra sincs szüksége, mert minden megvan a hosts fájlban, és nsswitch.conf-ban files elől van.
--
CCC3
Akkor sniffeld a hálózati forgalmat, abból kiderül az igazság.
(Már várom mikor linkeli valaki a moddolt/hackkelt hálókártya driver/fw-ról szoló régebbi hírt.: ) )
Valóban csak annyi történik, hogy megkérdezi a belső host címét a nameservertől, ami persze szokatlan és értelmetlen.
--
CCC3
Miért szokatlan és értelmetlen?
Szeretné logolni, honnan jött a kapcsolat.
Most komolyan: azt gondoltad, a sokezer nagyvállalatnál futó sok-sokezer Oracle mind 20 mp-es késleltetéssel loginol, mert jellemzően vállalati környezetben nincs proxy mentes netkapcsolat?
Aha, sok-sokezer nagyvállalat, inverz névfeloldás.
--
CCC3
Amúgy, nem inverz névfeloldást kér. A tshark kimenetéből az látszik, hogy név alapján kér címet. Olyan címet, amit a hosts fájlból egyébként ismer. Akkor is csinálja, ha a tnsnames-ba be vannak írva a konkrét címek (192.168.1...). Akkor miért csinálja, kíváncsiságból?
Mármint a szó, amit keresel, a reverse.
Google: inverz névfeloldás.
--
CCC3
Biztosra megy. Jogosultságot, meg hosztnév alapján is tudsz gondolom adni, tehát egy akarki@izeke az akár 150 klienst is jelenthet.
Még egy dolog: Nem a szerver, hanem a kliens könyvtár fordul a nameserverhez.
--
CCC3
Mi a kiépítés?
vagy
az 1. esetén nem menne ki
Mindenféleképpen próbáltam. Akkor is kimegy, ha a kliens és a szerver ugyanaz a host. Nem érdekes, így működik, és kész.
---
CCC3
net admin
innen ezt látom idevágónak:
sqlnet.ora file
NAMES.DIRECTORY_PATH=(tnsnames, hostname)
pötty