Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.07;
Скачать: CL | DM;

Вниз

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

 
Игорь Шевченко ©   (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;
Скачать: CL | DM;

Наверх




Память: 0.54 MB
Время: 0.08 c
14-1097965283
vecna
2004-10-17 02:21
2004.11.07
Приплыли...


14-1098322441
Думкин
2004-10-21 05:34
2004.11.07
С днем рождения! 21 октября


4-1096537587
kaZaNoVa
2004-09-30 13:46
2004.11.07
Хук, Dll и права System


4-1096511130
Khabibulin
2004-09-30 06:25
2004.11.07
Windows Name


1-1098265555
Анатолий
2004-10-20 13:45
2004.11.07
Установить курсор перед выделенным текстом