Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2004.11.07;
Скачать: [xml.tar.bz2];

Вниз

Существует ли программа, показывающая сетевые соединения   Найти похожие ветки 

 
Игорь Шевченко ©   (2004-10-14 12:40) [0]

Вместе с именем процесса, создавшего это соединение ?

(локальный адрес:порт - удаленный адрес:порт - состояние - процесс)

Интересует версия для NT, Windows 2000, крайне желательно freeware.


 
1008 ©   (2004-10-14 12:44) [1]

Игорь Шевченко ©  (14.10.04 12:40)

Если у вас сервер по Linux и стоит Squid, то можно использовать SquidStat: http://www.ssft.net/squidstat/
Ещё есть GiveMeTo, но она уже платная, мониторит всё.


 
VMcL ©   (2004-10-14 12:47) [2]

>>1008 ©  (14.10.04 12:44) [1]

Кхм, кхм...
>Интересует версия для NT, Windows 2000


 
wicked ©   (2004-10-14 12:48) [3]

netstat -a[o|b|v]
taskmgr.exe (для просмотра имени процесса по PID)


 
NeyroSpace ©   (2004-10-14 12:49) [4]

http://systeminternals.com/
TCPView хотя в платной версии она более навороченая.


 
}|{yk ©   (2004-10-14 12:49) [5]

в серверных версиях Windows есть много такой хрени


 
Nikolay M. ©   (2004-10-14 12:51) [6]

Имхо, любой нормальный фаерволл это должен уметь делать. По крайней мере AtGuard 3.22 показывает более-менее полную статистику.


 
Игорь Шевченко ©   (2004-10-14 12:52) [7]

wicked ©   (14.10.04 12:48) [3]

netstat не показывает ID процесса.


 
Игорь Шевченко ©   (2004-10-14 12:53) [8]

Nikolay M. ©   (14.10.04 12:51) [6]

Меня интересует, чтобы в любой момент я мог посмотреть список соединений, и какой процесс какое соединение создал.
Системы - вышеперечисленные, в XP эта возможность встроена в систему, поэтому XP не рассматривается.


 
VMcL ©   (2004-10-14 12:54) [9]

>>Игорь Шевченко ©  (14.10.04 12:52) [7]

Хмм...

C:\>netstat -?

Displays protocol statistics and current TCP/IP network connections.

NETSTAT [-a] [-e] [-n] [-o] [-s] [-p proto] [-r] [interval]

 -a            Displays all connections and listening ports.
 -e            Displays Ethernet statistics. This may be combined with the -s
               option.
 -n            Displays addresses and port numbers in numerical form.
 -o            Displays the owning process ID associated with each connection.
 -p proto      Shows connections for the protocol specified by proto; proto
               may be any of: TCP, UDP, TCPv6, or UDPv6.  If used with the -s
               option to display per-protocol statistics, proto may be any of:
               IP, IPv6, ICMP, ICMPv6, TCP, TCPv6, UDP, or UDPv6.
 -r            Displays the routing table.
 -s            Displays per-protocol statistics.  By default, statistics are
               shown for IP, IPv6, ICMP, ICMPv6, TCP, TCPv6, UDP, and UDPv6;
               the -p option may be used to specify a subset of the default.
 interval      Redisplays selected statistics, pausing interval seconds
               between each display.  Press CTRL+C to stop redisplaying
               statistics.  If omitted, netstat will print the current
               configuration information once.


P.S. У меня WinXP.


 
VMcL ©   (2004-10-14 12:56) [10]

>>Игорь Шевченко ©  (14.10.04 12:53) [8]

Глянул на Win2K. Действительно нэту :(


 
Игорь Шевченко ©   (2004-10-14 12:57) [11]

Вопрос снят. Последняя версия TcpView показывает все, что требуется. Любите Руссиновича и Когсуэлла (http://www.sysinternals.com).


 
wicked ©   (2004-10-14 12:59) [12]

возможно, я выскажу глупость, но если попробовать переселить WinXP-шный netstat на Win2k?....


 
Nikolay M. ©   (2004-10-14 13:03) [13]


> Игорь Шевченко ©   (14.10.04 12:53) [8]
> Меня интересует, чтобы в любой момент я мог посмотреть список
> соединений, и какой процесс какое соединение создал.
> Системы - вышеперечисленные, в XP эта возможность встроена
> в систему, поэтому XP не рассматривается.

AtGuard отлично работает на всех НТ начиная с 4.0 (ниже не пробовал). И процесс, который создал соединение, он показывает.


 
wal ©   (2004-10-14 13:04) [14]

http://www.sysinternals.com/ntw2k/utilities.shtml
TCPView v2.34
See all open TCP and UDP endpoints. On Windows NT, 2000 and XP TCPView even displays the name of the process that owns each endpoint. Includes a command-line version, tcpvcon.
------
TDImon v1.01
See TCP and UDP activity in real-time with this advanced network API monitoring tool.

С уважением.


 
wal ©   (2004-10-14 13:05) [15]

Опоздал :)


 
NeyroSpace ©   (2004-10-14 13:09) [16]

>Игорь Шевченко ©   (14.10.04 12:57) [11]
А какой еще у них Process Explorer, просто заглядение!


 
Игорь Шевченко ©   (2004-10-14 13:14) [17]

NeyroSpace ©   (14.10.04 13:09) [16]

Да у них все продукты хорошие :)

wal ©   (14.10.04 13:04) [14]

Да, спасибо. К сожалению, до этого пользовался версией 1.11, где подобного не было.
TDIMon не подходит, так как он показывает активность уровня TDI, но по списку соединений не видно, какая активность предшествовала появлению соединения.

С уважением,


 
080D:07BBh ©   (2004-10-14 14:49) [18]

Игорь Шевченко

Agnitum Outpost Firewall Pro version 2.1

Outpost Personal Firewall Pro - персональный брандмауэр, обеспечивающий комплексную защиту компьютера во время Интернет и/или сетевого соединения.

Отличительными чертами программы являются:
(*) Отражение всех видов хакерских атак;
(*) Защита Вашей приватной информации от кражи через Интернет-соединение;
(*) Контроль сетевой активности Вашего компьютера;
(*) Сохранение приватности во время веб-серфинга;
(*) Блокировка опасных почтовых вложений;
(*) Удаление рекламных баннеров и всплывающих окон;
(*) И многое другое!

не это ?


 
Rouse_ ©   (2004-10-14 15:01) [19]

> [18] 080D:07BBh ©   (14.10.04 14:49)
Это называется из пушки по воробъям :)
То что было необходимо: http://www.sysinternals.com/ntw2k/source/tcpview.shtml Игорь уже нашел ;)


 
080D:07BBh ©   (2004-10-15 07:53) [20]

Rouse_
дык файрвол не помешает в любом случае ...


 
080D:07BBh ©   (2004-10-15 07:59) [21]

Rouse_
спасибо за ссылку ))


 
BiN ©   (2004-10-15 09:05) [22]

Могу дать исходники своего Netstat-a. Вся выше описанная функциональность присутствует.
Ему правда требуется некот. косметическая доработка


 
Rouse_ ©   (2004-10-15 09:16) [23]

> [22] BiN ©   (15.10.04 09:05)
Это та программка которую ты мне присылал?
Что-то я не заметил там такой функциональности...

В принципе под ХР можно сделать вот так:
const
 TH32CS_SNAPPROCESS  = $00000002;

type
 PTMibTCPExRow = ^TMibTCPExRow;
 TMibTCPExRow = packed record
   dwState: DWORD;
   dwLocalAddr: DWORD;
   dwLocalPort: DWORD;
   dwRemoteAddr: DWORD;
   dwRemotePort: DWORD;
   dwProcessID: DWORD;
 end;

 PTMibTCPExTable = ^TMibTCPExTable;
 TMibTCPExTable = packed record
   dwNumEntries: DWORD;
   Table: array[0..0] of TMibTCPExRow;
 end;

 TProcessEntry32 = packed record
   dwSize: DWORD;
   cntUsage: DWORD;
   th32ProcessID: DWORD;
   th32DefaultHeapID: DWORD;
   th32ModuleID: DWORD;
   cntThreads: DWORD;
   th32ParentProcessID: DWORD;
   pcPriClassBase: Longint;
   dwFlags: DWORD;
   szExeFile: array [0..MAX_PATH - 1] of WideChar;
 end;

 function AllocateAndGetTcpExTableFromStack(pTCPExTable: PTMibTCPExTable;
   bOrder: BOOL; heap: THandle; zero: DWORD; flags: DWORD): DWORD; stdcall;
   external "IPHLPAPI.DLL";

 function CreateToolhelp32Snapshot(dwFlags, th32ProcessID: DWORD): THandle;
   stdcall; external "KERNEL32.DLL";

 function Process32First(hSnapshot: THandle; var lppe: TProcessEntry32): BOOL;
   stdcall; external "KERNEL32.DLL" name "Process32FirstW";

 function Process32Next(hSnapshot: THandle; var lppe: TProcessEntry32): BOOL;
   stdcall; external "KERNEL32.DLL" name "Process32NextW";

...

 function ProcessPIDToName(const hProcessSnap: THandle; ProcessId: DWORD): String;
 var
   processEntry: TProcessEntry32;
 begin
   Result := "";
   FillChar(processEntry, SizeOf(TProcessEntry32), #0);
   processEntry.dwSize := SizeOf(TProcessEntry32);
   if not Process32First(hProcessSnap, processEntry) then Exit;
   repeat
     if processEntry.th32ProcessID = ProcessId then
     begin
       Result := String(processEntry.szExeFile);
       Exit;
     end;
   until not Process32Next(hProcessSnap, processEntry);
 end;

var
 TCPExTable: PTMibTCPExTable;
 I: DWORD;
 hProcessSnap: THandle;
begin
 if AllocateAndGetTcpExTableFromStack(@TCPExTable, False, GetProcessHeap, 2, 2) = NO_ERROR then
 begin
   hProcessSnap := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
   if (hProcessSnap = INVALID_HANDLE_VALUE) then Exit;
   Memo1.Lines.Add(Format("%15s:| %5s | %20s | (%s)", ["Host", "Port", "Process name", "ID"]));
   Memo1.Lines.Add("==============================================================");
   for I := 0 to TCPExTable^.dwNumEntries - 1 do
     Memo1.Lines.Add(Format("%15s:| %5d | %20s | (%d)",
       [inet_ntoa(in_addr(TCPExTable^.Table[I].dwLocalAddr)),
       TCPExTable^.Table[I].dwLocalPort,
       ProcessPIDToName(hProcessSnap, TCPExTable^.Table[I].dwProcessID),
       TCPExTable^.Table[I].dwProcessID]));
 end;


Но под другими то системами так не получится...


 
BiN ©   (2004-10-15 09:37) [24]

Rouse_ ©   (15.10.04 09:16) [23]

> [22] BiN ©   (15.10.04 09:05)
Это та программка которую ты мне присылал?
Что-то я не заметил там такой функциональности...


Пока еще не присылал тебе ни одной программы.
В W2k получить список соединений и их соответствие процессам можно через
ZwQuerySystemInformation( SystemHandleInformation, ...


 
Rouse_ ©   (2004-10-15 09:46) [25]

> [24] BiN ©   (15.10.04 09:37)
Значит я тебя с другим перепутaл, вышли плз на rouse79@yandex.ru


 
Игорь Шевченко ©   (2004-10-15 10:07) [26]


> файрвол не помешает в любом случае ...


Дык есть.



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2004.11.07;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.52 MB
Время: 0.061 c
1-1098446809
vigo
2004-10-22 16:06
2004.11.07
Операции над датами


3-1097051951
GanibalLector
2004-10-06 12:39
2004.11.07
BLOB в ХП


4-1096671072
НовичОк
2004-10-02 02:51
2004.11.07
Заголовки кнопок в другом приложении


1-1098436864
denis24
2004-10-22 13:21
2004.11.07
form1.windowstate:=maximazed


1-1098695174
DelphiLexx
2004-10-25 13:06
2004.11.07
WndProc и ловушки





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский