netstat -tep | grep <pid of server2>
Isso deve fornecer a porta de origem usada pelo server2 para conectar-se ao postgress.
Por exemplo, tomcat
(PID é 4739
) é iniciada conexão a postgress
(que é outro servidor) para recuperar dados do banco de dados porque tomcat
obteve a solicitação do cliente ( curl 192.168.1.12:8088/get
). Neste, tomcat
usa um tcp source port
para a conexão postgress
. Agora, existe alguma maneira de obter esses source ports
que foi criado pelo tomcat PID
.
Eu usei netstat -tp
, mas não estou obtendo PID
da conexão. Obtendo PID
somente eu uso l - Listening
como netstat -tlp
. Tentei ler PID
sockets de /proc/PID/fd
e, em seguida, correlacionei com /proc/net/tcp
. Mas eu não estou vendo nada em /proc/net/tcp
.
NOTA: A topologia como abaixo.
My requests(server1)
< ------- > tomcat(server2)
< -------- > postgress(server2)
UPDATE1
netstat -tepn
output
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State User Inode PID/Program name
tcp6 0 1 172.25.30.21:36598 xx.xx.xx.91:4343 SYN_SENT 0 42955126 9661/java
tcp6 0 0 172.25.30.21:38340 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:38064 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:38282 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:37520 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:38286 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:37654 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:37906 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:38152 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:38124 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:37412 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:37374 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:38126 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:38252 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:37224 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:37800 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:37780 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:38274 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:37244 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:37880 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:38230 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:38118 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:37496 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:1099 172.25.30.21:47496 ESTABLISHED 0 42954824 4738/java
tcp6 0 0 172.25.30.21:37474 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:38200 172.25.30.12:5432 TIME_WAIT 0 0 -
tcp6 0 0 172.25.30.21:38102 172.25.30.12:5432 TIME_WAIT 0 0 -
PID
grep
ed output
veeru@localhost:~/veeru# netstat -tepn | grep 4738
tcp6 0 0 127.0.1.1:41095 127.0.0.1:45180 ESTABLISHED 0 42960213 4738/java
tcp6 0 0 172.25.30.21:1099 172.25.30.21:49984 ESTABLISHED 0 42963153 4738/java
netstat -tep | grep <pid of server2>
Isso deve fornecer a porta de origem usada pelo server2 para conectar-se ao postgress.