Mysza Opublikowano 19 Października 2010 Zgłoś Udostępnij Opublikowano 19 Października 2010 Zakładam kolejny temat odnośnie KOMUNIKATÓW mojego DZIENNIKA ZDARZEŃ - powtarzające się błędy i ostrzeżenia Źródła: Tcpip, CnxEtp, DCOM, Google Update, ESENT, Userenv i inne a ponieważ trafiam często na archiwalne artykuły - chcę dodatkowo zweryfikować z MĄDRZEJSZYMI GŁOWAMI - aktualność wskazówek i dalszych kroków Na początek - OSTRZEŻENIE "Protokół TCP/IP osiągnął limit zabezpieczeń ustalony dla liczby równoczesnych prób połączeń TCP." Źródło : Tcpip Identyfikator zdarzenia : 4226 Nazwa pliku : xpsp2res.dll Wersja pliku : 5.1.2600.5512 Wersja programu 5.1.2600.5512 Wg rady @300 w temacie Problemy z systemem- ostrzeżenie mogłam spróbować zweryfikować w poniższy sposób: W punkcie 1 wykonujesz: Start > Uruchom... (wpisz) cmd OK I dalej... (wpisz) netstat -no OK W wynikach powyższego polecenia odszukaj kolumnę 'State', i odpowiadającą mu sygnaturkę 'SYN_SENT'. Zaś z kolumny 'PID' numer procesu, oczywiście przypisany 'SYN_SENT', i to takie które będą miały sporą liczbę takiego samego PID jak sądzę. Z tym przechodzisz do pkt-u 2. W punkcie 2 wykonujesz: - dodajesz PID (Identyfikator procesu) do listy widocznych kolumn (co już z robiłaś). - odszukujesz interesujący Cię 'PID' i patrzysz w kolumnie 'nazwa obrazu' o jaki proces bądź program chodzi. Instrukcja wspomina o zamknięciu procesu, ale to raczej zależy od tego o co (jaki proces/program) dokładniej chodzi... co z kolei w kontekście możliwego ostrzeżenia, że złośliwy program lub wirus może być uruchomiony w systemie, mogłoby służyć znalezieniu programu, który jest odpowiedzialny za połączenie i zamknięciu złośliwego programu z dużą liczbą otwartych połączeń... Doszłam jednak do wniosku, że u mnie nie to jest przyczyną ostrzeżeń - nic niepokojącego nie znalazłam - poniżej zrzut z dzisiaj - pod nr PID krył się Firefox, więc chyba wszystko jest OK Szukając dalej doszłam do wniosku, że przyczyną tego komunikatu może być ustawiony limit liczby połączeń TCP ograniczony do 10, którego celem jest redukcja działalności robaków sieciowych (takich jak Blaster / Sasser) prowadzących do przepełnienia buforów i padów systemu. ... i teraz pytanie co lepsze ? pozostawienie limitu połączeń bez zmiany ( w ramach bezpieczeństwa systemu ) z jednoczesną akceptacją pojawiających się ostrzeżeń, czy lepiej zwiększyć limit połączeń i wyeliminować ostrzeżenia z dziennika zdarzeń Znalazłam np. taką opinię KLIK: W sieci krąży wiele mitów na temat cudownego zwiększenia wydajności aplikacji korzystających z internetu (głównie p2p) poprzez spatchowanie pliku tcpip.sys w celu zmiany domyślnej wartości 10 na większą. W praktyce taka zmiana nie przynosi większych efektów ponieważ połączenia półotwarte powyżej limitu i tak zostaną wykonane , po prostu są kolejkowane więc gdy jedno zostanie zrealizowane całkowicie , następne jest przetwarzane. Sami twórcy aplikacji p2p np. eMule nie zalecają patchowania tcpip.sys dowodząc że nie ma to sensu. Przyjmując, że bezpiecznym kompromisem będzie jednak zwiększenie np. do 50-100 limitu połączeń - pytanie, jaką metodą to najlepiej zrobić ? SZUKAJĄC trafiłam na takie propozycje : 1) W tym celu z menu Start wybieramy Uruchom i wpisujemy polecenie gpedit.msc. Uruchamiamy w ten sposób narzędzie Zasady grupy. W gałęzi Konfiguracja komputera rozwijamy Szablony administracyjne - Sieć - Harmonogram pakietów QoS.W prawej części okna zaznaczamy opcję Ogranicz rezerwowalną przepustowość i z jego menu podręcznego wybieramy polecenie Właściwości. Teraz zaznaczamy pole Włączone i określamy limit przepustowości - proponuję 0%. Zatwierdzamy zmiany przyciskiem OK i restartujemy komputer nie wiem, czy ta metoda jest nadal aktualna, ale i tak nie ma zastosowania w XP Home 2) druga metoda KLIK - też nie wiem czy nadal do stosowania ? Kod: Zaznacz cały Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Psched] "NonBestEffortLimit"=dword:00000000 "MaxOutstandingSends"=dword:0000ffff "TimerResolution"=dword:0000000a Otwórz notatnik i wklej podaną zawartość.. Z menu wybieramy Plik->Zapisz. W polu Zapisz jako typ, wybierz: Wszystkie pliki *.* Zapisz na pulpicie jako fix_ck.reg Zamknij notatnik, kliknij podwójnie na ten plik. Pojawi się informacja czy chcesz dodać zawartość do rejestru, na którą oczywiście zgódź się. Włącz na nowo komputer. 3) dalej trafiłam na propozycje programów - m.in. na SE - a ponieważ w artykule archiwalnym na FIXITPC wymieniany jest tylko jeden, to reszta chyba się zdezaktualizowała ? xp-AntiSpy LvlLord's Event ID 4226 Patcher Universal Tcpip.sys Patch TCP-Z 4) chciałabym się utwierdzić, że na dzień dzisiejszy do stosowania pozostał z ww tylko TCP-Z KLIK ... ponieważ znowu korzystam z ARCHIWUM i czy rzeczywiście pozwoli wyeliminować ostrzeżenie z dziennika zdarzeń ? Odnośnik do komentarza
3oo Opublikowano 20 Października 2010 Zgłoś Udostępnij Opublikowano 20 Października 2010 Z mojej strony w jednym zdaniu: SYN_SENT NIE= USTANOWIONO (ESTABLISHED). Odnośnik do komentarza
Mysza Opublikowano 20 Października 2010 Autor Zgłoś Udostępnij Opublikowano 20 Października 2010 Z mojej strony w jednym zdaniu: SYN_SENT NIE= USTANOWIONO (ESTABLISHED). @300 - nie jestem pewna, ale chyba nie jest to do końca odpowiedź na moje wątpliwości - co zrobić z tymi ostrzeżeniami z dziennika zdarzeń-"Protokół TCP/IP osiągnął limit zabezpieczeń ustalony dla liczby równoczesnych prób połączeń TCP" ? Ten artykuł fajnie wyjaśnia na czym polegają połączenia TCP , jakie są jego stany, jak powstają , a co za tym idzie dlaczego powstają połączenia półotwarte .... Wyjaśnię mój tok rozumowania Rozumiem to tak, że z mojego komputera jest inicjowane połączenie TCP >>>> jeśli w danym momencie ilość takich zainicjowanych połączeń przekroczy limit ( np. 10) to "ustawiają się" one w kolejce i mają status "półotwartych" >>>> w dzienniku zdarzeń generuje się ostrzeżenie o przekroczeniu limitu zabezpieczeń dla jednoczesnych prób połączeń >>>> połączenia po jakimś czasie i tak się nawiązują wg kolejki ... ... i teraz w ramach tych połączeń TCP mogą być prawidłowe, ale równocześnie jest to droga dla złośliwego programu lub wirusów - w tym momencie ( przynajmniej tak to rozumiem ) można zweryfikować, czy któreś z połączeń kolejkowanych nie jest złośliwe i czy go nie zamknąć , ale chyba zamknięcie złośliwego procesu nie będzie miało wpływu na te ostrzeżenia i będą one pojawiać się dalej w dzienniku zdarzeń ( bo limit jest bez zmian) Dalej ... korzystając z tej opcji poszukiwania winowajcy : start > uruchom > cmd > netstat -no rozumiem, a przynajmniej tak mi się wydaje , że wyświetlam STAN POŁĄCZEŃ z numerami PID na dany MOMENT, inny niż ten, w którym generowane jest ostrzeżenie - czyli, że tego samego dnia o 15.00 będzie to wyglądało inaczej i o 18.00 też inaczej - a skoro problem w dzienniku zdarzeń pojawił się o określonej godzinie np. 12.00 to wydaje mi się, że aby ustalić, który proces wywołał ostrzeżenie to musiałabym wyświetlić stan połączeń przy użyciu ww komendy w tej samej minucie co komunikat-ostrzeżenie ... nie wiem, czy wyjaśniłam dostatecznie, co mam na myśli Ja się teraz zastanawiam nie nad tym skąd się biorą połączenia i dlaczego pojawia się ostrzeżenie - zastanawiam się jak podejść do tych ostrzeżeń: - czy nie zmieniać limitu i tylko starać się sprawdzać, czy w półotwartych połączeniach nie ma złośliwych, które trzeba wyeliminować - czy zwiększyć gotowym programem limit połączeń i pozbyć się tym sposobem komunikatów - tylko na ile to jest bezpieczne Odnośnik do komentarza
3oo Opublikowano 21 Października 2010 Zgłoś Udostępnij Opublikowano 21 Października 2010 Dalej ... korzystając z tej opcji poszukiwania winowajcy : start > uruchom > cmd > netstat -no rozumiem, a przynajmniej tak mi się wydaje , że wyświetlam STAN POŁĄCZEŃ z numerami PID na dany MOMENT, inny niż ten, w którym generowane jest ostrzeżenie - czyli, że tego samego dnia o 15.00 będzie to wyglądało inaczej i o 18.00 też inaczej - a skoro problem w dzienniku zdarzeń pojawił się o określonej godzinie np. 12.00 to wydaje mi się, że aby ustalić, który proces wywołał ostrzeżenie to musiałabym wyświetlić stan połączeń przy użyciu ww komendy w tej samej minucie co komunikat-ostrzeżenie ... nie wiem, czy wyjaśniłam dostatecznie, co mam na myśli Podoba mi się ten tok rozumowania. Dlatego wcześniej (chyba) wspomniałem o zweryfikowaniu prawidłowości pojawiania się tego ostrzeżenia w dzienniku systemowym. Jeśli np. pojawia się co określony limit czasu to w czym problem? Podobnież jeśli jest skutkiem uruchamiania jakiegoś programu np. emule, utorrent itp. Żeby uruchomić kilka razy polecenie netstat -no nie musisz go każdorazowo wpisywać z palca. Możesz skorzystać z przeszukiwania historii konsoli tj. strzałka w górę bądź w dół (dopóki nie zamkniesz okienka). Jeśli nadal chcesz polować na czarownice, a procek ma wolne moce przerobowe, to spróbuj skryptu *.bat. Zapisz poniższy fragment kodu do pliku z rozszerzeniem bat tj. utwórz plik tekstowy i zmień rozszerzenie z txt na bat. Jeśli chciałabyś przeedytować plik bat = PPM na nim > Edytuj. Plik bat (skrypt) uruchamiasz oczywiście standardowo dwuklikiem. Skrypt uruchamiasz i zamykasz za jakiś czas. 1. Plik sys_sent.txt tworzy się w tej lokalizacji gdzie plik *.bat. Polecenia są dopisywane do pliku, więc jeśli chcesz zacząć od nowa musisz go wcześniej wyczyścić albo po prostu usunąć. Echo możesz zmienić na on (włączyć). Im dłużej będzie uruchomiony skrypt, tym plik wynikowy (syn_sent.txt) będzie bardziej puchnąć - stąd wersja 2 z katalogami... @ECHO off SET mycha69path=.\syn_sent.txt :mycha69loop TIME /T >> %mycha69path% NETSTAT -no >> %mycha69path% TASKLIST >> %mycha69path% ECHO =oO==================================================================== >> %mycha69path% GOTO mycha69loop 2. Możesz, ale nie musisz kasować utworzone wcześniej katalogi. Tworzą się one po osiągnięciu limitu licznika ustawionego w linijce SET stoper_=1000 i tą wartość możesz sobie zmienić. Przykładowo dla wartości 5000 plik wynikowy przekraczał nieco 20 MB. Sprawdź wcześniej czy to działa na jakichś małych wartościach np. 10, 25... @ECHO off SET mycha69path=.\syn_sent.txt SET licznik=0 SET katalog=1 SET stoper_=1000 :mycha69loop IF %licznik% EQU 0 ( MKDIR .\%katalog% CD .\%katalog% TIME /T > %mycha69path% ) ELSE ( ECHO =oO==================================================================== >> %mycha69path% TIME /T >> %mycha69path% ) NETSTAT -no >> %mycha69path% TASKLIST >> %mycha69path% SET /A licznik+=1 @ECHO off echo katalog=%katalog%, licznik=%licznik% z %stoper_% @ECHO off IF %licznik% EQU %stoper_% ( SET licznik=0 SET /A katalog+=1 CD .. ) GOTO mycha69loop O limity połączeń może lepiej spytaj w sieciach. Ja tego nigdy nie ruszałem, ale też nie miałem potrzeby. Odnośnik do komentarza
Mysza Opublikowano 21 Października 2010 Autor Zgłoś Udostępnij Opublikowano 21 Października 2010 Nooo @300... po raz kolejny przy okazji serwujesz mi ciekawostki, o których wcześniej nie miałam pojęcia, tylko na pierwszy rzut oka wcale nie jestem pewna, czy to pojmuję .... muszę trochę pogimnastykować umysł nad tym postem Odnośnik do komentarza
Mysza Opublikowano 21 Października 2010 Autor Zgłoś Udostępnij Opublikowano 21 Października 2010 Odnosząc się do artykułu archiwalnego KLIK mam pytanie czy na dzień dzisiejszy z automatycznych patcherów w celu zwiększenia limitu liczby połączeń TCP nadal aktualny i polecany jest TCP-Z oraz jaki limit jest optymalny ? Odnośnik do komentarza
picasso Opublikowano 22 Października 2010 Zgłoś Udostępnij Opublikowano 22 Października 2010 Mycha proszę nie rozbijaj tematów. Pytasz dwa razy o to samo w zasadzie w dwóch tematach i dwóch różnych działach, łączę. Odpowiadając na pytanie: TCP-Z to jedyny patcher, który robi to w sposób nieingerencyjny, na zasadzie patchowania tylko pamięci (nie narusza struktury pliku tcpip.sys), a po restarcie systemu zmiana jest odkręcana. Dlatego jeśli mam polecać jakiś patcher, to tylko ten. Optymalny limit? A kto to wie. Metoda prób i błędów dopóki przestaje się pokazywać błąd w Dzienniku zdarzeń. Zacytuję co sądzi na ten temat autor innego patchera: What is the optimal value of concurrent half-open outbound connections limit?I consider the optimal value to be an equal 100. Increasing the limit will have effect only if you run several P2P programs simultaneously (e.g., µTorrent, BitComet, eMule, P2P TV, etc.), or your PC works as a server. Można zacząć od 50 i podnosić ewentualnie wyżej, o ile potrzebne ... dalej trafiłam na propozycje programów - m.in. na SE - a ponieważ w artykule archiwalnym na FIXITPC wymieniany jest tylko jeden, to reszta chyba się zdezaktualizowała ? Nie porównuj tego co zostawiłam na SE. Na tamtym jest krzyżyk oraz brak pewnych modyfikacji, które uwzględniłam już tutaj. PS.: Vista SP2 i Windows 7 nie mają domyślnie w ogóle tego limitu, zdjęto go (jest za to edycja rejestru która ... pozwala go włączyć). . Odnośnik do komentarza
Bonifacy Opublikowano 22 Października 2010 Zgłoś Udostępnij Opublikowano 22 Października 2010 Limit połączeń znosi mały programik xpy-1.0.1i : http://www.softpedia.com/get/Tweak/System-Tweak/xpy.shtml screen: http://yfrog.com/mqxpyp W Description stoi: Increase the maximum possible connections to 32 Odnośnik do komentarza
picasso Opublikowano 22 Października 2010 Zgłoś Udostępnij Opublikowano 22 Października 2010 Bonifacy, to jest inny limit. To co jest w xpy to zniesienie limitu w Internet Explorer (KB282402) a nie w sterowniku TCPIP.SYS. Odnośnik do komentarza
Mysza Opublikowano 22 Października 2010 Autor Zgłoś Udostępnij Opublikowano 22 Października 2010 Mycha proszę nie rozbijaj tematów. Pytasz dwa razy o to samo w zasadzie w dwóch tematach i dwóch różnych działach, łączę. Odpowiadając na pytanie: TCP-Z to jedyny patcher, który robi to w sposób nieingerencyjny, na zasadzie patchowania tylko pamięci (nie narusza struktury pliku tcpip.sys), a po restarcie systemu zmiana jest odkręcana. Dlatego jeśli mam polecać jakiś patcher, to tylko ten. Optymalny limit? A kto to wie. Metoda prób i błędów dopóki przestaje się pokazywać błąd w Dzienniku zdarzeń. Dziękuję @Picasso za wyjaśnienia w temacie - na pewno wykorzystam i przepraszam za zamieszanie z tematami - pytanie w dziale Sieci zadałam sugerując się tym, że o limity połączeń TCP zapytałam nie tam gdzie trzeba .... Odnośnik do komentarza
Mysza Opublikowano 23 Października 2010 Autor Zgłoś Udostępnij Opublikowano 23 Października 2010 Mam pobrany program TCP-Z - przy limicie 50 ostrzeżenie w dzienniku zdarzeń się nie pojawiło, ale nie zamykam jeszcze tego wątku. Jeśli nadal chcesz polować na czarownice, a procek ma wolne moce przerobowe, to spróbuj skryptu *.bat. TAK, chcę polować - rozumiem, że aby coś "upolować" muszę z powrotem zmniejszyć limit do 10, bo inaczej nie będzie ostrzeżenia. ... spróbuj skryptu *.bat. Zapisz poniższy fragment kodu do pliku z rozszerzeniem bat tj. utwórz plik tekstowy i zmień rozszerzenie z txt na bat. W jakiej lokalizacji zapisać ten plik ? "Zapisz poniższy fragment kodu" - to znaczy ? czy to ten poniższy tekst mam wkleić do notatnika i zapisać go z rozszerzeniem *.bat ? @ECHO off SET mycha69path=.\syn_sent.txt :mycha69loop TIME /T >> %mycha69path% NETSTAT -no >> %mycha69path% TASKLIST >> %mycha69path% ECHO =oO==================================================================== >> %mycha69path% GOTO mycha69loop Jaką nazwę wybrać dla pliku - dowolną ? Gdzie znajdę plik sys_sent.txt na swoim dysku - czy już powinnam go mieć, czy też powstanie dopiero po dodaniu pliku *.bat ? 2. Możesz, ale nie musisz kasować utworzone wcześniej katalogi. Tworzą się one po osiągnięciu limitu licznika ustawionego w linijce SET stoper_=1000 i tą wartość możesz sobie zmienić. Przykładowo dla wartości 5000 plik wynikowy przekraczał nieco 20 MB. Sprawdź wcześniej czy to działa na jakichś małych wartościach np. 10, 25... @ECHO off SET mycha69path=.\syn_sent.txt SET licznik=0 SET katalog=1 SET stoper_=1000 :mycha69loop IF %licznik% EQU 0 ( MKDIR .\%katalog% CD .\%katalog% TIME /T > %mycha69path% ) ELSE ( ECHO =oO==================================================================== >> %mycha69path% TIME /T >> %mycha69path% ) NETSTAT -no >> %mycha69path% TASKLIST >> %mycha69path% SET /A licznik+=1 @ECHO off echo katalog=%katalog%, licznik=%licznik% z %stoper_% @ECHO off IF %licznik% EQU %stoper_% ( SET licznik=0 SET /A katalog+=1 CD .. ) GOTO mycha69loop czy powyższe to też gotowy plik do wykorzystania dla mnie, który po prostu mogę skopiować do utworzonego pliku *.bat ? bo jakbym miała na wzór powyższego stworzyć coś własnego to chyba w następnym życiu Odnośnik do komentarza
3oo Opublikowano 23 Października 2010 Zgłoś Udostępnij Opublikowano 23 Października 2010 Jedno i drugie robi to samo. Skrypt biega w pętli nieskończonej, więc po uruchomieniu musisz sama go zamknąć za jakiś czas (po prostu zamknąć okienko konsoli). Różnica polega na tym, że wersja 1 zapisuje wyniki poleceń do jednego pliku, a w wersji 2 licznik odlicza do iluś tam (do tylu ile wskazuje wartość po stoper_=) i po osiągnięciu tej wartości zeruje się a przy tym tworzy się nowy katalog, tworzy się w nim plik i do niego są zapisywane wyniki poleceń... i tak wkoło. Możesz się otrzeć o prawo Murphy'ego: - Jeśli coś może pójść źle, pójdzie źle. Nie jestem pewien czy u Ciebie zadziała polecenie TIME /T innymi słowy czy poeci nie postanowili go przetłumaczyć na... CZAS. Nazwa skryptu może być dowolna. Tak... masz wkleić tekst do notatnika, zapisać, zamknąć i zmienić rozszerzenie pliku tekstowego na bat. W razie potrzeby wyłącz wcześniej w opcjach Explorera opcję Ukryj rozszerzenia znanych typów. Pliku syn_sent.txt nie musisz tworzyć. Tak rozbierając nieco skrypt w wersji 1 na składowe to zanim go uruchomisz sprawdź... Start > Uruchom... (wpisz) cmd OK I wypróbuj polecenia: 1. TIME /T Jeśli jego wynikiem nie będzie wartość aktualnej godziny, to użyj... Halo Houston, mamy problem. Wklej screen z wyniku polecenia HELP wykonanego w konsoli (zerknę sobie jakie tam masz dostępne polecenia). 2. TASKLIST Jeśli jego wynikiem nie będzie to co widzisz szukając nazwy procesu znając jego PID... patrz wyżej. BTW Jeśli tutaj będzie wszystko OK spróbuj także w skrypcie z przełącznikiem /svc tj. TASKLIST /svc Wiersz zawierający ECHO =oO==================================================================== możesz wywalić... W wierszu SET mycha69path=.\syn_sent.txt nazwę pliku syn_sent.txt możesz zmienić na dowolną. Odnośnik do komentarza
KolegaDudysa Opublikowano 23 Października 2010 Zgłoś Udostępnij Opublikowano 23 Października 2010 Oczywiście nie dyskutuję co do wielkości skryptu bo jest klasyczny, ale też można zastosować interwał...., który będzie monitorował o określoną liczbę sekund połączenia. Przykład będzie monitorował co sekundę połączenia z zapisem danych na dysku C pod nazwą StatNetLog: netstat -an 1 > C:\StatNetLog.txt ..... Ctrl + C - koniec działania. To tylko wzmianka Odnośnik do komentarza
3oo Opublikowano 23 Października 2010 Zgłoś Udostępnij Opublikowano 23 Października 2010 Przyznam, że nie specjalnie się wgłębiałem w meandry polecenia netstat. Aczkolwiek bardziej chodziło mi o to, żeby jednocześnie zapisać do pliku polecenie tasklist by później sobie porównać to i owo... czyli odszukać SYN_SENT i z odpowiadającego mu PID znaleźć nazwę procesu. Czas dodatkowo dla ułatwienia... Odnośnik do komentarza
KolegaDudysa Opublikowano 24 Października 2010 Zgłoś Udostępnij Opublikowano 24 Października 2010 Sposobów wiele Nestat też Ci pokaże PID procesu, ale pewnie o tym wiesz. Zobacz: NETSTAT -NABV Proces, jego składniki, pid, ip Może to jakoś przefiltrować? NETSTAT -NABV | FINDstr ".exe .dll USTANOWIONO" Lub jeszcze inaczej: I sobie monitorować co np. 4 sekundy z zapisem (Ctrl + C - kończy działanie): NETSTAT -NABV 4 | FINDstr ".exe .dll USTANOWIONO" >> C:\StatNetLog.txt Można się pobawić, ale mi to obciąża procesor. Odnośnik do komentarza
3oo Opublikowano 24 Października 2010 Zgłoś Udostępnij Opublikowano 24 Października 2010 Nestat też Ci pokaże PID procesu, ale pewnie o tym wiesz. Zobacz: NETSTAT -NABV Ujmijmy to tak: - Teraz wiem! Zerknąłem tylko na poniższy artykuł, klapki na oczy i dosztukowałem brakujące wg mnie ogniwa = wyszło co wyszło. O filtrowaniu wiedziałem, ale celowo pominąłem. http://www.microsoft.com/technet/support/ee/transform.aspx?ProdName=Windows+Operating+System&ProdVer=5.2&EvtID=4226&EvtSrc=Tcpip&LCID=1033 Odnośnik do komentarza
Mysza Opublikowano 24 Października 2010 Autor Zgłoś Udostępnij Opublikowano 24 Października 2010 @300 Sprawdziłam : 1. TIME /T- jest poprawnie 2. TASKLIST- tu też wyszło OK 3. TASKLIST /svc - To wyświetliło się tak : Po czym wykonałam instrukcje wg punktu 1 - to znaczy wkleiłam dokładnie tekst @ECHO off SET mycha69path=.\syn_sent.txt :mycha69loop TIME /T >> %mycha69path% NETSTAT -no >> %mycha69path% TASKLIST >> %mycha69path% GOTO mycha69loop zmieniłam rozszerzenie na *bat i automatycznie utworzył mi się plik tekstowy z pierwszymi wynikami tylko zastanawiałam się dlaczego w tym tekście pojawia się mycha69? - jakie to ma znaczenie, skoro to moja nazwa na forum i nie ma nic wspólnego z komputerem ? i teraz jeszcze biorąc pod uwagę to co powiedział KolegaDudysa: I sobie monitorować co np. 4 sekundy z zapisem (Ctrl + C - kończy działanie): NETSTAT -NABV 4 | FINDstr ".exe .dll USTANOWIONO" >> C:\StatNetLog.txt czy spróbować jeszcze raz uzupełniając plik o filtr - czyli, że zamiast NETSTAT -no >> %mycha69path% wpisać np. NETSTAT -NABV 4 | FINDstr ".exe .dll NIEUSTANOWIONO" >> >> %mycha69path% Odnośnik do komentarza
3oo Opublikowano 25 Października 2010 Zgłoś Udostępnij Opublikowano 25 Października 2010 (edytowane) tylko zastanawiałam się dlaczego w tym tekście pojawia się mycha69? - jakie to ma znaczenie, skoro to moja nazwa na forum i nie ma nic wspólnego z komputerem ? Nie masz innych zmartwień? To tylko deklaracja zmiennej używanej wewnątrz skryptu. Słowo mycha69path możesz zastąpić dowolnym, byle nie pokrywało się ze zmiennymi środowiskowymi wskazywanymi przez polecenie SET - w szczególności nie może być to path. Podobnie z mycha69loop. Czyli równie dobrze mogłoby to wyglądać: SET xiaoxiao=.\syn_sent.txt :zztop TIME /T >> %xiaoxiao% NETSTAT -no >> %xiaoxiao% TASKLIST >> %xiaoxiao% GOTO zztop lub tak (wywalając przy okazji deklarację zmiennej): :xiaoxiao TIME /T >> .\syn_sent.txt NETSTAT -no >> .\syn_sent.txt TASKLIST >> .\syn_sent.txt GOTO xiaoxiao Gdybyś chciała zmienić nazwę pliku syn_sent.txt (w szczególności ścieżkę do pliku) na inną to w pierwszym przypadku zmieniasz ją jeden raz w skrypcie, w drugim tyle razy ile występuje. I... Nie... Albo użyjesz skryptu w takiej wersji jaka jest (lub tej z katalogami) albo odrobiny luksusu, który podarował Ci KolegaDudysa. To polecenie wstrzymałoby przetwarzanie skryptu... czyli polecenie TASKLIST wykonałoby się dopiero gdybyś zakończyła działanie "odrobiny luksusu" kombinacją klawiszy Ctrl+C, lub wcale gdybyś zamknęła okienko konsoli. Oczywiście możesz w skrypcie umieścić samą odrobinę luksusu (lub po prostu wpisać ją w okienku konsoli z palca), ale... 1. Za dużo tego >> (wystarczy tylko raz). A możesz to zmienić na > co ma taki skutek, że każdorazowe następne wywołanie tego polecenia zamiast dopisywać do pliku najpierw skasuje jego poprzednią zawartość. 2. W przypadku wpisywania z palca zmieniasz %mychapath69% na .\syn_sent.txt lub ścieżkę w postaci jawnej tak jak pokazał to KolegaDudysa. 3. Nie wiem czy akurat SYN_SENT odpowiada (przetłumaczono na) NIEUSTANOWIONO. Jeśli jesteś tego pewna to OK. Your choice. Have fun! Edytowane 25 Października 2010 przez 3oo Odnośnik do komentarza
KolegaDudysa Opublikowano 25 Października 2010 Zgłoś Udostępnij Opublikowano 25 Października 2010 3. Nie wiem czy akurat SYN_SENT odpowiada (przetłumaczono na) NIEUSTANOWIONO. Jeśli jesteś tego pewna to OK. To chyba powinno być WYSŁANO_SYN Odnośnik do komentarza
Mysza Opublikowano 26 Października 2010 Autor Zgłoś Udostępnij Opublikowano 26 Października 2010 NA PEWNO ROBIĘ COŚ ŹLE Propozycję filtrowania wg NIEUSTANOWIONO tak tylko dałam, nie wiedząc, czy to jest dobrze - bo skoro szukam, tych oczekujących/kolejkowanych połączeń TCP to chyba powinnam filtrować nie po tym, co USTANOWIONO, tylko po tym, co musiało czekać Ale, Błędy dziennika zdarzeń związane z ostrzeżeniami TCPIP wystąpiły 25.10.2010 o godz. 17:37, 20:14, 22:02, 23:41 i spodziewałam się, że z tych samych godzin odnajdę wpisy w pliku tekstowym syn_sent , a tymczasem dodały mi się zapisy z godziny 23:52 i 00:21 , oraz dopiero z dzisiejszego dnia 8:54 i kolejne minuty ... Coś musiałam nie tak zrobić z tym plikiem *bat Ale co ? - może niepotrzebnie klikałam dwa razy na ten plik chcąc obejrzeć zawartość - wtedy otworzył mi się czarny ekran i po prostu krzyżykiem go zamknęłam - może przez to nie dodawały się zapisy w tych godzinach co ostrzeżenia, - a dzisiaj z kolei weszłam w ten plik *bat jeszcze raz i przewijała mi się w nim lista związana z procesami ... po czym zamknęłam Ctr+C , odpowiadając na pytanie, czy chcę zakończyć działanie - Tak , no i teraz po tym zamknięciu i ponownym otwarciu jest znowu wielka czarna dziura i pusto , w międzyczasie dodało się ileś zapisów, ale z dzisiejszego dnia , a nie z godzin ostrzeżeń Może powinnam to wszystko skasować i zrobić jeszcze raz od początku ? I jeszcze - zakładałam temat mając w dzienniku zdarzeń dwa błędy/ostrzeżenia SYSTEMOWE - to z TCP i przerywanie połączeń internetowych , przez ostatnie 3 dni doszły mi kolejne cztery błędy - ale o tym później - sprawdzę, czy będą się powtarzać. Odnośnik do komentarza
3oo Opublikowano 26 Października 2010 Zgłoś Udostępnij Opublikowano 26 Października 2010 W sumie to lepiej by było gdyś podała jak wygląda Twoja wersja skryptu... Wszelkie modyfikacje w pliku bat tylko poprzez PPM > Edytuj... tzn. jeśli spróbujesz uruchomić go dwuklikiem to uruchamiasz skrypt. I teraz jeśli używasz przekierowania do pliku w postaci > to kasuje to poprzednią zawartość pliku, natomiast >> będzie dopiywać do pliku. Natomiast myk z odrobiną luskusu, IMHO, może nie zapisać Ci wszystkich wystąpień "filtra", bo ma ustawiony interwał czasu co jaki wykonuje się polecenie na 4 s (mam na myśli to w przykładach, a nie w Twojej wersji skryptu). Odnośnik do komentarza
Mysza Opublikowano 26 Października 2010 Autor Zgłoś Udostępnij Opublikowano 26 Października 2010 Teraz wersja skryptu wygląda tak: @ECHO on SET mycha69path=.\syn_sent.txt :mycha69loop TIME /T >> %mycha69path% NETSTAT -no >> %mycha69path% TASKLIST >> %mycha69path% GOTO mycha69loopZmieniłam tylko dzisiaj wieczorem off na on - choć nie do końca rozumiem co to da,na filtry i luksusy na razie sobie jeszcze nie pozwalałam I teraz otworzyłam skrypt i pozostawiłam okienko otwarte - między 23.55 a 00.42 dodały się wpisy do pliku tekstowego ( poprzednie usunęłam) , po czym po kliknięciu CTRL+C było znowu pytanie - czy zakończyć zadanie w trybie wsadowym ? - zrobiłam Tak - i wpisy na tym stanęły . Ostatni wpis ostrzeżenia TCP z dzisiejszego dnia jest z godziny 16.26 , czyli w trakcie mojej obecności nie było żadnego ostrzeżenia, które mogłabym porównać z zapisami w pliku . Zastanawiam się, czy aby skrypt działał to czy muszę w trakcie korzystania z komputera uruchamiać ten skrypt i pozostawiać otwarte okienko konsoli, czy też jest możliwe, żeby skrypt uruchomił się bez ręcznej ingerencji - automatem po włączeniu komputera - gdy inny użytkownik z niego korzysta ( najczęściej ostrzeżenia TCP powstają, gdy jestem nieobecna ) Odnośnik do komentarza
3oo Opublikowano 27 Października 2010 Zgłoś Udostępnij Opublikowano 27 Października 2010 No ale sam skrypt się nie domyśli, że musi zostać uruchomiony... To co przedstawiłaś samo od siebie nie kasowało poprzedniej zawartości. Użyj poniższej wersji: @ECHO off SET magazyn=.\skaner SET katalog=1 SET licznik=0 SET nStoper=5000 IF NOT EXIST %magazyn% ( MKDIR %magazyn% COMPACT %magazyn% /c ) ELSE ( FOR /f "tokens=*" %%G IN ('DIR %magazyn% /b') DO SET /a katalog+=1 ) CD %magazyn% :Petla IF %licznik% EQU 0 ( SET fanzine=.\syn_sent%katalog%.txt ) TIME /T >> %fanzine% NETSTAT -no >> %fanzine% TASKLIST >> %fanzine% SET /a licznik+=1 ECHO. >> %fanzine% ECHO numer w nazwie pliku=%katalog%, licznik=%licznik% z %nStoper% IF %licznik% EQU %nStoper% ( SET licznik=0 SET /a katalog+=1 ) GOTO Petla Do testów zmień w linijce wartość 5000 na 10 (lub 100): SET nStoper=5000Uruchom skrypt na jakąś dłuższą chwilę. W katalogu skaner (sam się utworzy!) zerknij ile zajmuje (każdy) plik *.txt. Przyjmij, że jeśli zwiększysz nStoper 10x to plik wynikowy będzie także ważył 10x więcej. I tym sposobem ustal sobie interesującą Cię finalną wielkość pliku wynikowego, żeby łatwiej byłoby je odczytywać. Po czym usuń cały folder skaner, albo znajdujące się tam pliki. W finalnej wersji skryptu usuń linijkę: ECHO numer w nazwie pliku=%katalog%, licznik=%licznik% z %nStoper%W tym samym miejscu co plik *.bat utwórz nowy plik tekstowy, wklej do niego poniższą zawartość i przy okazji zmień w nim wyrażenie Twoja_nazwa_pliku na nazwę Twojego skryptu. Dim oShell Set oShell = WScript.CreateObject ("WSCript.shell") oShell.run "cmd /C .\Twoja_nazwa_pliku.bat",0 Set oShell = NothingInnymi słowy jeśli skrypt ma nazwę mycha69.bat to 3-cia linijka powinna wyglądać: oShell.run "cmd /C .\mycha69.bat",0Ważne!- Zmień nazwę rozszerzenia z txt na vbs, ale nie uruchamiaj tego skryptu! On ukrywa okienko konsoli, więc ciężko Ci będzie je zamknąć. No chyba, że poprzez wylogowanie się... Utwórz sobie skrót do tego skryptu *.vbs tj. PPM na nim > Utwórz skrót Przenieś go do Autostartu, możesz do All Users (w polskojęzycznym windows może to się nieco różnić) czyli do: c:\Documents and Settings\All Users\Start Menu\Programs\Startup\Skrypt powinien się włączać przy starcie, okienka nie będzie widać... Jeśli będziesz chciała zatrzymać działanie skryptu to usuń go z autostartu i... restart. BTW W skrypcie możesz poniższe dwie linijki zamienić i potestować... (nie będę tłumaczył dlaczego, sama się domyślisz). NETSTAT -no >> %fanzine% TASKLIST >> %fanzine%zastąpić: NETSTAT -nabv >> %fanzine% TASKLIST >> %fanzine%lub NETSTAT -nabv >> %fanzine%Katalogowi, w którym masz skrypty możesz nadać atrybut Ukryty (Hidden). Ale to ma sens o ile masz włączone ukrywanie plików ukrytych i systemowych.PPM na nazwie katalogu > Właściwości Odnośnik do komentarza
Mysza Opublikowano 27 Października 2010 Autor Zgłoś Udostępnij Opublikowano 27 Października 2010 ... Utwórz sobie skrót do tego skryptu *.vbs tj. PPM na nim > Utwórz skrót Przenieś go do Autostartu... OK - zrobiłam wszystko , jutro sprawdzę skutek. BTW - skąd Ty wiesz te wszystkie mądrości ? - tylko nie mów mi, że to wyłącznie Google Odnośnik do komentarza
3oo Opublikowano 28 Października 2010 Zgłoś Udostępnij Opublikowano 28 Października 2010 BTW - skąd Ty wiesz te wszystkie mądrości ? - tylko nie mów mi, że to wyłącznie Google A właśnie, że google. Hmm... Tak właściwie pytanie o uruchomienie czegoś automatycznie paść w zasadzie nie powinno. Sprzatałaś już autostart więc powinnaś się domyślić, że coś się da do niego dorzucić. Jeśli usuniesz go (link do skryptu) ręcznie ze wskazanej lokalizacji autostartu to nic się nie będzie działo. Jeśli użyjesz metody: Start > Uruchom... (wpisz) msconfig OK. Wtedy możesz na zakładce Startup (Autouruchamianie) wyczyścić pole wyboru wskazujące na ten link do skryptu i zrestartować komputer. Link zostanie usunięty z autostartu, ale zostaniesz poinformowana o tzw. uruchamianiu selektywnym = czym się nie przejmujesz tylko zaznaczasz checkbox w okienku komunikatu i trzepiesz enter. BTW Do skryptu dodałem linijkę: COMPACT %magazyn% /cNiejako ustawia atrybut folderu na skompresowany. Wszystko co do niego wpada także ulega kompresji - co oszczędza miejsca na dysku. Żeby to zadziałało folder skaner musi być wcześniej usunięty, o ile nie został utworzony przez skrypt z tą poprawioną wersją. Odnośnik do komentarza
Rekomendowane odpowiedzi