netstat
네트워크 상태 조회 커맨드
> ssh 프로세스 확인으로 연결된 ssh
> 192.168.30.55 으로 ssh 연결
> netstat -natp | grep 192.168.30.55
-> ssh 연결 상태 확인
ssh 연결은 kill -9 14867 로 프로세스를 죽이고 다시 netstat으로 55번 장비의 ssh 연결 상태를 확인합니다.
FIN_WAIT는 TCP 연결 상태 중 하나로, 연결이 종료되었지만 아직 상대방에게 확인이 오지 않은 상태를 의미합니다.
FIN_WAIT1은 TCP 연결 상태 중 하나로, 연결이 종료되었지만 아직 상대방에게 확인이 오지 않은 상태를 의미합니다.
보통 TCP 연결 종료 과정은 다음과 같습니다:
1.연결 종료 요청(Active Close): 한쪽 호스트가 연결을 종료하고자 하면 FIN(Finish) 세그먼트를 보냅니다.
2.연결 종료 응답(Passive Close): 상대방 호스트는 FIN 세그먼트를 수신하고, 종료 요청에 대한 확인 ACK(Acknowledgement) 세그먼트를 보냅니다.
3.연결 종료 확인: 종료 요청을 보낸 호스트는 ACK 세그먼트를 수신하고 FIN_WAIT1 상태로 진입합니다.
4.상대방 호스트가 연결 종료를 확인하면(CLOSE_WAIT 상태로 진입), FIN_WAIT1 상태의 호스트는 종료 확인을 받아 CLOSE 상태로 진입합니다.
따라서 FIN_WAIT1 상태는 연결이 종료되었지만 아직 상대방으로부터 확인이 오지 않은 상태를 나타냅니다.
이 상태에서 장기간 유지되는 것은 문제가 될 수 있으며, 보통 이러한 상태는 연결이 비정상적으로 종료되었거나 네트워크 문제가 있는 경우에 발생할 수 있습니다.
잠시 후 재확인해보면 55번 장비의 연결이 제대로 끊어진 것을 확인할 수 있습니다.
개인 장비에 ssh 연결을 합니다.
각각의 장비에서 서로 ssh 연결이 ESTABLISHED 된 것을 확인할 수 있습니다.
연결을 끊으면 TIME_WAIT 상태가 나오게되고 잠시 뒤 완전히 연결이 끊어지게 됩니다.
자주 사용하는 조합
netstat -anp | grep -i listen : listen 중인 포트 찾을 때
grep 사용 없이 -tnlp로만
80포트의 현재 동시 접속자 수 확인
n : ESTABLISHED 된 것만 확인
a : 대기중인 것들도 포함
'OS > Linux&Unix' 카테고리의 다른 글
[rhel8.4] tar/gzip 명령어 (0) | 2024.03.20 |
---|---|
[Linux] find 명령어 (-name, -type, -perm, -szie, -mtime, exec, xargs 옵션 활용) (0) | 2024.03.20 |
[rhel8.4] rpm / yum 명령어 (0) | 2024.03.19 |
[rhel8.4] sar 명령어 (0) | 2024.03.18 |
[rhel8.4] iostat 명령어 및 옵션 (0) | 2024.03.18 |