Главная » Шпаргалка » DELPHI INTERBASE FireBird » сканер портов

Проверка связи,портов,сети (сканер портов)

Использовал для проверки связи с сервероом (кусок из проги на названия не обращайте внимание).

Нужно компонент TCPClient, с закладки Internet.

M_SQL - это Memo для результатов.

Ed_BD - Edit со сторокой где присудствует ип сервера.

Ed_PortB и Ed_PortЕ - Edit начало и конец портов для сканирования.

procedure TF_Main.BB_PortScanClick(Sender: TObject);
var
  port:Integer;
  ip:String;
begin
  M_SQL.Clear;
  ip:=copy(Ed_BD.Text,0,pos(':',Ed_BD.Text)-1); //По умолчанию сканируем себя
  //ip:='127.0.0.1'; //По умолчанию сканируем себя
  if not InputQuery('Attention','Enter IP-address',ip) then exit; //Запрашиваем адрес компа.
  M_SQL.Lines.Add('Поехали');
  for port:=StrToInt(Ed_PortB.Text) to StrToInt(Ed_PortE.Text) do //Запускаем цикл
  begin
    TcpClient.RemotePort:=IntToStr(port); //Устанавливаем порт
    TcpClient.Open; //Пытаемся его открыть
    if TcpClient.Connected
    then M_SQL.Lines.Add(IntToStr(port)+' есть ответ'); //Если удалось, то сообщаем об этом
    TcpClient.Close; //Закрываем порт.
  end;
    M_SQL.Lines.Add('Все');
end;

Поехали
80 есть ответ
110 есть ответ
443 есть ответ
995 есть ответ
Все

Посути он мне не помог . Нужный порт я так и не увидел хоть он и открыт (видать что то еще мешает), но что связь с сервером есть показал (искал я 3050-3070).