[리눅스 명령어 / CentOS] 네트워크 상태 확인하기
오늘은 서버를 설치한 이후 현재 네트워크가 정상적 작동 중인지 확인할 때 어떻게 해야 하는지 알아보도록 하겠습니다.
먼저 서버를 처음 설치한 후에 네트워크가 되는지 알아보기도 하고 중간에 네트워크 장비가 문제가 생겨 서버에 인터넷이 되지 않을 때 정말 인터넷이 안되는지 아니면 서버의 네트워크 설정이 안되는지를 확인하기 위한 간단한 명령어 들을 소개하고 사용하는 방법에 대해 알려 드리도록 하겠습니다.
[ping]가장 기초가 되는 명령어는 ping입니다. ping 은 ICMP(Internet Control Message Protocol) 에코 요청을 목적지(서버, 네트워크 장비 등)에 보내고 목적지의 에코 응답을 받아서 네트워크의 상태를 확인하는 명령어입니다.
윈도우를 사용 중이신 분들 역시 ping을 사용해본 분도 있을 것 같은데요.
리눅스의 핑은 윈도우와 다르게 끄지 않는 한 계속 보내지는 것이 특징입니다. 윈도에서 핑을 계속 보낼 때는 ping -t 와 같이 -t를 옵션으로 지정하면 됩니다. 명령을 종료할 때는 Ctrl+c 하시면 됩니다.
명령어는 ping 아이피 또는 ping 도메인으로 할 수 있습니다.
구글 DNS 서버인 8.8.8.8로 ping을 보내 본 모습입니다.
각각의 칸이 의미하는 바를 설명해 드리면
64 bytes from 8.8.8.8: 구글 DNS 서버인 8.8.8.8에서 64 바이트의 응답
icmp_seq=1: 첫 번째 icmp(ping) 신호, 숫자는 패킷의 일련번호
ttl=55: Time To Live라고도 하며 쉽게 설명드리면 구글 DNS 서버와 몇 개의 다리를 건너서 통신했는지 알려줍니다.
64의 경우 한 개의 다리도 거치지 않았다는 뜻이니 55의 경우 약 9개 정도의 큰 다리를 건너 통신했습니다. ttl 은 목적지의 장비, OS의 종류에 따라서도 차이가 있을 수 있습니다.
time=42.3 ms : 내 서버 <-> 구글 DNS 서버 사이 2개의 신호가 왔다 갔을 때 얼마만큼의 시간이 흘렀는지에 대한 값입니다.
높으면 높을수록 느린 것이며 위치적으로도 멀리 떨어져 있는 것입니다. time이 평소와 달리 높게 나오면 네트워크 부하를 의심해 볼 수 있습니다. ms(millisecond)는 천분의 1초입니다.
5 packets transmitted, 5 received, 0% packet loss, time 4006ms : 패킷을 보내고 받은 수, 손실률(packet loss), ping을 시작하고 끝내기까지 걸린 시간입니다.
손실률은 패킷을 보냈는데 받지 못한 비율로 손실률이 0%로 나오는 것이 정상이며 0이 아니면 네크워크에 문제가 있는지 확인이 필요합니다.
rtt min/avg/max/mdev : time의 최솟값, 평균값, 최댓값, 표준편차를 말합니다.
비교를 위해 나 자신에게 ping 을 보내본 결과입니다. 아무것도 거치지 않았기 때문에 ttl 값에 차이가 있는 것으로 아실 수 있습니다.
ping은 ICMP 에코 요청을 보내고 응답을 받는다고 하였는데요. 내 컴퓨터는 그렇다 쳐도 다른 사람의 컴퓨터에 ping 을 보내는데 상대방의 허락이 필요하지 않다는 것, 요청이 오면 응답을 할지 말지를 판단하지 않고 응답을 한다는 것은 문제가 될 수 있습니다.
이런 이유로 ICMP 가 디도스 같은 공격에 이용이 되는데요. 이러한 공격을 막고자 서버나 디도스 방어 장비 등에서 ICMP를 아예 작동하지 않게 하는 경우가 있습니다.
그래서 어떤 서버에 ping 을 보냈는데 응답이 없는 경우라도 반드시 네트워크에 문제가 있다고 말할 수는 없으니 이 점도 참고하세요.
한 가지 더 말씀드리면 앞서 ttl에 대해 설명을 했었는데요. 이 ttl 이 도메인에 관련된 내용에서 다른 뜻을 가지고 있습니다. ttl 이 Time to live라는 것은 같은데 도메인에 대해 네임서버(DNS)에 등록된 정보를 수정하였을 때 수정된 사항이 전파되기까지 걸리는 시간으로 이해하실 수 있습니다. 예를 들어 PC에서 http://www.letshosting.co.kr/ 에 처음 접속을 하면 PC는 DNS에 letshosting.co.kr 에 대한 질문을 하게 되고 그 응답을 받아서 캐시에 저장을 합니다. ttl 이 3600 초로 되어 있다면 1시간 동안은 letshosing.co.kr 에 접속할 때 DNS에 물어보지 않아도 찾아갈 수 있는데 반대로 처음 접속하고 1시간 안에 DNS에서 도메인에 대한 정보가 변경되었다면 캐시가 삭제되기 전까지 도메인을 찾아가지 못하게 됩니다. ping에서 말한 ttl 과 DNS에서 말하는 ttl 이 다른다는 것은 기억해두시기 바랍니다.
이 게시글이 문제가 될 시, 삭제하겠습니다
댓글 없음:
참고: 블로그의 회원만 댓글을 작성할 수 있습니다.