Table Of Contents
- netstat
- lsof (MAC)
netstat
현재 사용하고 있는 TCP 포트를 조회하는 리눅스 명령어는 netstat 입니다. netstat명령어로 TCP통신을 진행중인 서비스의 연결상태를 확인가능 하다.
$ netstat -tnl
위 명령어를 실행결과는 아래와 같다. 옵션 t 는 TCP, n 은 10진수(Numeric), l 은 Listening을 의미한다.
$ netstat -tnl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:5666 0.0.0.0:* LISTEN
tcp6 0 0 :::9096 :::* LISTEN
tcp6 0 0 :::9092 :::* LISTEN
tcp6 0 0 :::9093 :::* LISTEN
Listening 말고, All state를 보려면 tna 를 쓰면된다. 아래 ESTABLISHED를 보면, 이 VM은 Kafka(9092포트) 1.21.91.4, 1.21.91.5, 1.21.91.5 서버와 연결(ESTABLISHED) 되어 있다는것을 알수 있다. 추가로 Elasticsearch(9200포트) 1.26.69.8 서버와 연결되어 있다. tna 옵션은 외부 서버와 어떻게 연결되었는지를 보는데 쓰인다.
$ netstat -tna
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.1:44636 1.21.91.4:9092 ESTABLISHED
tcp 0 0 127.0.0.1:47164 1.21.91.5:9092 ESTABLISHED
tcp 0 0 127.0.0.1:49802 1.21.91.6:9092 ESTABLISHED
tcp 0 0 127.0.0.1:52998 1.26.69.8:9200 ESTABLISHED
tcp6 0 0 :::111 :::* LISTEN
만약 현재 포트를 사용하고 있는 프로세스 정보 도 함께 보고 싶으면 아래와 같이 실행한다.
$ netstat -tnlp
옵션 p 는 Programs을 의미한다. 아래 결과를 보면, PID와 프로그램 이름을 보여준다.
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:5666 0.0.0.0:* LISTEN -
tcp6 0 0 :::9096 :::* LISTEN 123/java
tcp6 0 0 :::9092 :::* LISTEN 123/java
tcp6 0 0 :::9093 :::* LISTEN 123/java
PID 를 가지고 더 자세한 Program 정보도 알수 있다.
ps -aux | grep 123 # PID
manager 16766 12.2 9.3 17720328 1140776 ? Sl 2020 8790:18 java -Xmx1G -Xms1G -server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -
lsof (MAC)
MAC에도 netstat가 있지만, 맥환경에서는 포트확인이 힘들다. 그래서 보통 lsof 명령어를 많이 쓴다. sudo 를 쓰면 root권한 port도 보인다.
$ sudo lsof -PiTCP -sTCP:LISTEN
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
launchd 1 root 7u IPv6 0xcfbef755f6f4f325 0t0 TCP *:22 (LISTEN)
launchd 1 root 8u IPv4 0xcfbef755f6f57755 0t0 TCP *:22 (LISTEN)
launchd 1 root 10u IPv6 0xcfbef755f6f4f325 0t0 TCP *:22 (LISTEN)
launchd 1 root 11u IPv4 0xcfbef755f6f57755 0t0 TCP *:22 (LISTEN)
UserEvent 111 root 69u IPv6 0xcfbef755f6f50585 0t0 TCP [fe80:4::aede:48ff:fe00:1122]:49153 (LISTEN)