안녕하세요.
오늘은 netstat에 대해서 정리할까합니다.
netstat
netstat란 무엇일까요?
netstat는 시스템 네트워크 연결 목록을 보여주는 명령어입니다.
(TCP, UDP, 소켓 등)
netstat도 여러 옵션을 가지고 있습니다. 먼저 netstat 명령 옵션에 대해서 알아봅시다 ㅎㅎ
-a : 모두 보여주기
-e : 확장 정보 추가. User부분과 Inode 열이 추가
-l : 대기중인 소켓 리스트만 보여줌
-n : 도메인 주소 대신 숫자로 출력
-t : TCP 프로토콜 보기
-u : UDP 프로토콜 보기
이 기능 또한 조합이 가능한 것 아시죠 ? 저는 -na를 자주 사용한답니다!
[root@localhost ~]# netstat -na |
그럼 아래와 같이 시스템 네트워크 연결 목록을 보여줍니다.
[root@localhost ~]# netstat -na Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 :::2222 :::* LISTEN |
대략 각 항목이 무엇을 뜻하는 지 다 아시겠죠?
하지만 여기서 State의 종류에 대해 정리해보고 가겠습니다. (자주 보이는 것들만 ^^;;)
- CLOSED : 닫힌 상태
- CLOSING : 닫히고 있는 중
- ESTABLISHED : 연결이 완료된 상태
- LISTEN : 대기중인 포트. 포트가 열려 있음
- SYN_RECV : 연결 요청을 받은 후에 확인 값을 기다리는 상태
- SYN_SENT : 목적지에 연결 요청
- TIME_WAIT : 연결이 종료된 후 기다리는 상태. 약 1분 정도이며 시간이 다 지나면 사라짐.
- UNKNOWN : 소켓의 상태를 알 수 없음.
이러면 netstat에 대한 기본적인 사용법에 대해서 완성입니다.
여기서 Tip을 하나 드리자면, 많은 연결 및 대기 중인 포트가 있는 사용자 환경의 경우
netstat명령은 수 많은 목록을 보여줍니다.
그렇기에 원하는 포트를 찾기 위해서 또 다시 목록에서 검색을 해야 합니다.
이럴 때 유용한 명령어가 바로 grep입니다. grep을 활용하여 특정 단어가 들어있는
목록만 표시할 수 있거든요. 다른 여러 명령어와 결합하여 유용하게 활용됩니다.
자세한 grep의 소개와 활용법은 다음 포스팅에서 하겠습니다.
여기서는 어떻게 사용하는지에 대해서 대략적으로만 설명 할게요.
[root@localhost ~]# netstat -na | grep ESTABLISHED |
위와 같이 명령어를 입력하면 'ESTABLISHED' 가 포함된 목록을 보여줍니다.
즉, 현재 연결이 완료된 상태의 목록을 보여주는 것 이지요.
오늘은 우선 이정도만 알려드려도, grep을 활용할 수 있겠죠?
netstat를 잘 활용하여 현재 시스템 상태를 잘 파악할 수 있답니다. ^^
그럼 이만 마치고, 다음 시간에 뵐게요. 감사합니다.
'Linux' 카테고리의 다른 글
[Linux Study-9] ps 명령어 (0) | 2016.10.30 |
---|---|
[Linux Study-8] grep 사용법 (0) | 2016.10.27 |
[Linux Study-6] chmod 설정 (1) | 2016.10.19 |
[Linux Study-5] date 설정 / 동기화 (0) | 2016.10.16 |
[Linux Study-4] yum과 wget (0) | 2016.10.15 |