Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Catalog · How the catalog works

Random project

geoteamfinder

find a server with 8220 port with title (name+' '+version)

View on GitHub

Anyone may press Interesting, signed in or not. It helps others find this project.

Member rating

No ratings yet.

Sign in to rate this project.

README

GeoTeam 8000 端口扫描器

Delphi 10.2 (Tokyo) VCL 桌面程序,用于在网络中扫描开放了 8000 端口 的服务器,并从中识别符合条件的目标服务器。

功能

  1. 按 IP 范围(起始 IP → 结束 IP)并行扫描。
  2. 对每个 IP,尝试访问 http://<ip>:8000/version/version.txt:
    • 连接失败 → 该 IP 没有开放 8000 端口,忽略;
    • 返回 404 等 → 端口开了但没有该文件,忽略;
    • 返回 200 → 命中,加入列表。
  3. 读取 version.txt 内容并解析为三行:
    • 第 1 行:服务器名称
    • 第 2 行:软件版本
    • 第 3 行:软件发行时间
  4. 每个命中服务器显示为一张卡片(名称 / 版本 / 发行时间 / 地址)。
  5. 点击卡片 → 用默认浏览器打开 http://<ip>:8000/。

version.txt 格式约定

pascal
???????????????
????????????
????????????

纯文本,三行(多余行忽略,缺失行留空)。

编译

在 Delphi 10.2 中打开 PortScanner.dpr 直接编译即可。依赖组件:

  • Indy(IdHTTP / IdStack,Delphi 10.2 自带,勾选 Internet 包下的 Indy 即可)。

使用

  1. 输入起始/结束 IP(或点「本机网段」自动填充本机所在 /24 网段)。
  2. 点「开始扫描」。
  3. 结果卡片实时追加显示,状态栏显示已找到数量。
  4. 点击卡片在浏览器打开对应服务器。

关键参数(MainForm.pas 顶部常量)

  • SCAN_THREADS:并行工作线程数(默认 64)。
  • CONNECT_TIMEOUT:连接超时毫秒数(默认 800)。
  • READ_TIMEOUT:读取超时毫秒数(默认 1500)。