Port 번호를 사용해서 프로세스 아이디를 얻을 수 있을까요?

binoopang의 이미지

안녕하세요 ^^

C언어나 C++을 사용하는데요 ..

혹시 포트번호를 사용해서 프로세스 아이디를 반환해 주는 API가 있을까요?

계속 구글링 하고 있는데 .. 못찾고 있네요 ^^;;

혹시 아시는 분은 답변 부탁드립니다 ~ ^^

fox9의 이미지

lsof 명령어의 소스를 잘 살펴보시면 답이 있을 것 같습니다

keizie의 이미지

        -p, --programs           display PID/Program name for sockets

라고 합니다.

$ sudo netstat -tlnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      5623/mysqld     
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      18457/apache2   
tcp        0      0 127.0.0.1:7634          0.0.0.0:*               LISTEN      7160/hddtemp    
tcp6       0      0 :::22                   :::*                    LISTEN      4791/sshd       

우분투에서 확인했고, OSX에서는 안 되는 걸로 보아 리눅스에서 확장된 기능인 것 같습니다.

binoopang의 이미지

시스템 명령어가 아닌

프로그래밍용 API에 대해서 질문한거였어요 ^^;;

답변 감사합니당 ^^

-------- 시그내쳐 ---------
열심히 열심히 열심히 ..
음악을 하는것 처럼!!