Hongfluenza

Ping 본문

STUDY/NETWORK

Ping

Hongfluenza 2019. 7. 11. 02:35

1> ping(Packet Internet Groper)의 개념

ping은 현재 사용중인 네트워크에서 특정 호스트에 접근이 가능한지를 확인하기 위해서 사용

 

  • 현재 사용중인 네트워크 상태 체크
  • 호스트에 접근 가능한지 확인
  • 호스트가 작동중인지 여부 등을 확인

하지만, ping 명령어 자체를 차단하는 사이트가 늘어나고 있다.

ping 허용으로 위험에 노출될 수 있으므로 보안 사유 또는 트래픽 관리 차원에서 ping 테스트가 불가한 사이트들이 있으므로 (예를 들면 naver.com, daum.com, nate.com 등) 이 자체로 호스트 접속여부나 작동 여부를 판단하기는 어렵다.

 

위의 문장을 더 잘 이해하기 위해 구글링을 한 결과,
ping을 통해 내부 네트워크의 구성을 확인한다든지, ping을 폭주시켜 부하를 주기도 하기 때문에 보안상 대개 막아놓는 경우가 많다는 것을 알았다.

 

2> ping 동작원리

ping은 TCP/IP 프로토콜 중 ICMP를 통해 동작하며, 유니캐스트 전송 방식이다.

여기서 ICMP 프로토콜의 동작 원리는 호스트에 요청(ICMP echo request)을 보내고 요청을 받은 호스트가 응답(ICMP echo reply)한다.

 

1. 요청 컴퓨터 → 대상 컴퓨터, ping 123.123.123.123 => ICMP echo request

2. 요청 컴퓨터 ← 대상 컴퓨터 => ICMP echo reply

 

1번과 2번의 과정을 통해 네트워크 상태를 확인하려는 대상(target) 컴퓨터를 향해 일정 크기의 패킷을 보낸 후 (→ ICMP echo request), 대상 컴퓨터가 이에 대해 응답하는 메시지(→ICMP echo reply)를 보내면 이를 수신, 분석하여 대상 컴퓨터가 작동하는지, 또는 대상 컴퓨터까지 도달하는 네트워크 상태가 어떠한지 파악할 수 있다.

 

ping 명령어는 ICMP를 통해 동작하므로, 이 프로토콜을 지원하지 않는 기기(ip 주소를 갖지 않는 일부 스위치, 허브)를 대상으로 ping을 수행할 수 없다. 또한, 보안상의 이유로 ICMP 사용을 차단한 기기 역시 ping 요청에 대응하지 않는다.

 

3> ping 실행결과 · 분석

다음은 google.com에 ping을 보냈을 때의 결과를 나타내는데, 윈도우의 ping은 기본적으로 4회만 시도한다. 

 

3.1> 4번의 요청을 보냈을 때, 4번의 응답 모두 수 ms(밀리초, 1/1000초) 만에 응답을 보냄
→ 대상 컴퓨터는 정상적으로 작동하며 대상 컴퓨터와의 네트워크 연결 상태도 원활하다 판단할 수 있다.

→ 만약, 응답 시간이 높다면 패킷 송수신에 병목 또는 지연이 발생하는 것

 

3.2> TTL (Time-To-Live)

  • 대상 컴퓨터에 보낸 응답 패킷 요청이 네트워크에 살아서(live) 제 역할을 수행할 제한 시간 → 대상 컴퓨터 및 네트워크 상태와 무관
  • 네트워크 내 장비인 라우터(홉)를 통과할 때마다 TTL 값을 하나씩 감소시키고 TTL 값이 0이 되면 패킷을 드롭
    → 패킷이 경로를 찾지 못하고 떠돌때 영원히 패킷이 돌아다니는 것을 방지하는 필드값
    → 이를 통해 장비에 대한 운영체제의 종류(Linux=64, Windows=128, Cisco=256)나 현재 자신으로부터 얼마나 떨어져 있는지 어느정도 파악할 수 있음

다음은 네이버에 ping을 보낸 결과인데, 4개의 응답 모두 "요청 시간이 만료되었습니다." 라고 뜨는 것을 확인할 수 있다.

 

ping 명령어는 대상 컴퓨터에 일정한 크기의 패킷을 지속적으로 전달하기 때문에 무분별한 ping 명령의 수행은 컴퓨터 또는 웹 사이트에 치명적인 장애를 유발할 수 있다. 만약 수십~수백  대 이상의 컴퓨터에서 ping 패킷을 늘려 특정 컴퓨터 또는 웹 사이트로 집중하여 전송하면 해당 컴퓨터(또는 사이트)는 ping 요청 대응 때문에 부하가 급증하기 때문에 정상적인 작동 또는 서비스가 불가능해진다.

 

이는 DoS 공격의 대표적인 사례 중 하나인 ICMP flood 공격이라고 하며, 이에 따라 네이버를 포함한 대부분의 웹사이트는 보안 장비를 도입하여 이와 같은 반복적인 대량의 패킷에 응답하지 않도록 설정하고 있다.

 

그러한 방법에는 ping 명령어가 작동하는 ICMP 프로토콜을 아예 차단하는 것인데, 따라서 위의 사진과 같이 ping에 대한 요청이 없다고 해서 대상 컴퓨터 또는 웹 사이트에 문제가 발생했다고 단언할 수 없다.

 

3.3> 인터넷 상에서 문제가 있는지 확인하기 위해 볼 것 [손실], [평균 왕복시간(핑)]

  • 평균 왕복시간이 30ms 이상인 경우
    → 평균 왕복 시간은 낮을수록 좋은 수치

    → 만약 평균 왕복 시간이 30ms 이상일 경우에는 인터넷 상태에 문제가 있을 수 있다.
    → 문제가 없는 인터넷 환경의 평균 왕복 시간 : 1~15ms이내
  • 손실이 발생하는 경우
    → 손실이 발생한다 = 인터넷 환경에 명백한 문제가 있다
  • ping이 일정하지 않은 경우
    → 평균 ping은 높지 않지만, 테스트 진행 시 핑(시간)이 150ms, 2ms, 100ms, 1ms와 같이 불규칙하게 나타나는 경우도 인터넷 환경에 문제가 있을 확률이 높다.

4> ping 옵션

옵션(Window기준)
-t ctrl+c로 중단하기 전까지 ping패킷을 지속적으로 보냄(연속)
-a ip주소에 대해 호스트 이름명을 보여줌
-n cnt ping을 몇 번 보낼지 패킷수를 지정 (Linux → -c)
-l size ping패킷 사이즈 지정(패킷 사이즈:1~65535, Linux → -s)
-l TTL 중간 라우터 장비를 몇 번 경유할 지를 지정

 

 

 

...더보기

출처

https://ojava.tistory.com/126

 

IP 확인 : ping, tracert, nslookup

일하다보면 외부 사이트랑 연결할 일이 참 많다. 그 사이트들이 각각 어떤 IP로 신청하세요 하고 알려주면 더할나위없이 좋은 파트너겠지만, 그렇지 않은 이들도 너무 많고 인수인계하다보면 기존에 담당하던 사람..

ojava.tistory.com

https://it.donga.com/21930/

 

[IT강의실] 네트워크 상태 점검의 기초 - ping 명령어 | IT동아

[IT강의실] 네트워크 상태 점검의 기초 - ping 명령어 이문규 2015-07-27 [용어로 보는 IT 2015년 개정판] 사람의 심장 박동 정도를 측정하는 심장박동 측정기처럼 컴퓨터 네트워크 상태를 점검, 진단하는 명령어가 ping(핑)이다. 이는 ‘Packet INternet Groper’의 약자이며, 최초 개발자인 마이클 무스(Michael John Muuss, 1983년)는 작동 원리가 비슷한 수중 음파 탐지기에서 발생하는 신호음에서 이름을 착

it.donga.com

https://gbworld.tistory.com/1138

 

CMD 핑(ping) 테스트 및 결과 분석

인터넷 상태가 불안정하다고 느껴질 때, 실제로 인터넷 상태에 문제가 있는 것은 아닌지 확인해볼 수 있는 CMD 핑(ping) 테스트를 하는 방법과 그 결과에 대한 간랸한 분석 정보를 정리해봤습니다. CMD(명령 프롬..

gbworld.tistory.com

https://xn--ex3bt1ov9l.kr/251

 

ping & fping

* ping - 올바르게 네트워크가 연결되었는지를 점검하는 도구이다. - 원격지 시스템이 도달 가능한지 확인한다. - 원격지 시스템에 도달했는지 여부와 시스템이 살아있는지 여부(호스트 업 다운 상태)를 확인한다...

xn--ex3bt1ov9l.kr

 

'STUDY > NETWORK' 카테고리의 다른 글

포트 스캐닝(Port Scanning)  (0) 2019.07.15
Tracert  (1) 2019.07.11
UTP 케이블의 정의와 종류  (0) 2019.07.03
OSI 7계층과 TCP/IP 4계층  (0) 2019.04.20
와이어샤크란?  (0) 2019.01.18