6

当我使用 netstat 时,我会收到这样的信息 - PID 4 表示 HTTP.SYS

Active Connections

  Proto  Local Address          Foreign Address        State           PID
  TCP    0.0.0.0:80             0.0.0.0:0              LISTENING       4
  TCP    10.140.126.48:80       10.140.126.139:57030   ESTABLISHED     4
  TCP    10.140.126.48:80       10.140.126.181:57918   ESTABLISHED     4
  TCP    [::]:80                [::]:0                 LISTENING       4

所以使用netsh我可以接收有关 HTTP 层上特定侦听器的信息

netsh http show servicestate view=requestq verbose=no

Snapshot of HTTP service state (Request Queue View): 
----------------------------------------------------- 

Request queue name: Other Application Pool
    Version: 2.0
    State: Active
    Request queue 503 verbosity level: Limited
    Max requests: 1000
    Number of active processes attached: 1
    Controller process ID: 1216
    Process IDs:
        3684
    URL groups:
    URL group ID: FD00000140000003
        State: Active
        Request queue name: Other Application Pool
            Number of registered URLs: 1
            Registered URLs:
                HTTP://*:80/
        Server session ID: FF00000020000004
            Version: 2.0
            State: Active
    URL group ID: FD00000040000001
        State: Active
        Request queue name: Other Application Pool
            Number of registered URLs: 1
            Registered URLs:
                HTTP://*:80/UI/
        Server session ID: FF00000020000004
            Version: 2.0
            State: Active
    URL group ID: FC00000140000002
        State: Active
        Request queue name: Other Application Pool
            Number of registered URLs: 1
            Registered URLs:
                HTTP://*:80/API2/
        Server session ID: FF00000020000004
            Version: 2.0
            State: Active
Request queue name: Request queue is unnamed.
    Version: 2.0
    State: Active
    Request queue 503 verbosity level: Basic
    Max requests: 1000
    Number of active processes attached: 1
    Process IDs:
        7948
    URL groups:
    URL group ID: F600000040000002
        State: Active
        Request queue name: Request queue is unnamed.
            Number of registered URLs: 1
            Registered URLs:
                HTTP://*:80/ADMINISTRATION/
        Server session ID: F700000020000004
            Version: 2.0
            State: Active

可以有多个进程在同一个端口上侦听,例如本例中的 PID 7948 和 3684。

有没有可能区分每个连接属于哪个进程到同一个端口,哪个在netstat输出中列出?

在 IIS 服务器的情况下,可以通过 列出活动请求 appcmd.exe list requests,但是其他进程呢?

是否有任何 API 调用来获取信息?

4

0 回答 0