我有一个在 Red hat 服务器上运行的 Abinitio 进程。
这个进程基本上是一个webservice,它绑定到这个正在运行的unix服务器上的一个端口。前端向这个 UNIX PORT 发送请求,然后由 abinitio 进程读取并进一步处理。
如何识别进程是否绑定到 unix 端口?
我每周一(周末)都会遇到一个奇怪的情况,当我尝试通过 SOAP 访问网络服务时,我得到了套接字超时异常。为了解决这个问题,我必须停止并开始这个过程。
给定端口列表,我想确定哪些套接字没有响应。
netstat -lnp 将在每个侦听端口旁边列出 pid 和进程名称。这将在 Linux 下工作,但不适用于所有其他系统(如 AIX)。如果您只需要 TCP,请添加 -t。
root@c27bf9ed63c5:/# netstat -lnpt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp6 0 0 127.0.0.1:8005 :::* LISTEN 1/java
tcp6 0 0 :::8009 :::* LISTEN 1/java
tcp6 0 0 :::8080 :::* LISTEN 1/java
使用 netstat 命令。
网络统计-anp | grep pid
您还可以使用 nmap 检查哪些端口正在侦听机器。
nmap -sT -O machine_ip
由于这是在 UNIX 上,lsof -i :port_number
将为您提供绑定到给定端口的进程的详细信息