티스토리 뷰

드디어 ping option 마지막 글이네요 중간에 다른 길로도 빠지고 정리해 놓은 글이 날라가는 바람에 다른 글들을 작성하다가 드디어 정리하게 되었습니다.

 

그럼 2번째 글에 이어서 옵션들을 설명하겠습니다.

 

 

-R 옵션

 

라우팅 경로에 대해서 출력해주는 옵션입니다.

 

 

 해당 패킷을 보내게 되면 보시는 것과 같이 요청패킷과 응답이 돌아오는 경로를 패킷내에 포함해 패킷에 표시하게 합니다. IP헤더에서 9개까지만 받을 수 있으므로 그 이상은 표시할수가 없으며 대부분의 라우터나 방화벽에서 이를 차단하고 있기 때문에 외부로 보내게 되면 무시하거나 버리도록 설정되어 있습니다.

 

 

-s 옵션

 

패킷의 사이즈를 정해 보내는 옵션입니다.

 

 

 

화면에서 보시듯 -s 10으로 보낸 것과 기본 default size값으로 보내 보았고 이를 패킷을 캡쳐하여 확인해보았습니다.

 

 

보시는 것 과 같이 처음 보낸 3개(-c 3)의 패킷은 52이며 정상적으로 보낸 3개는 98로 보이게 됩니다. 반대로 값을 늘려서 확인해보시면 크기가 변해 있는 것을 확인해보실 수 있습니다. -s 옵션은 -c 와 같이 상당히 많이 쓰이는 옵션으로 size 값을 변경해 단편화해서 보내는 등 다양한 용도로 사용이 가능한 옵션입니다.

 

-t 옵션

 

ttl을 설정하는 옵션입니다.

 

 

-t 옵션을 이용해 ttl을 15, default(64), 10으로 설정하여 각각을 전송해 보았습니다. ttl은 패킷의 생존 시간을 나타내고 ICMP에서 ttl이란 시간이라는 개념보다는 홉의 개수를 뜻합니다.

첫번째와 두번째의 ttl이 같이 표시되는 것은 응답패킷을 보고 표시해주는 것이기 때문에 똑같이 52가 표시되는 것이고 이를 통해 64-52 = 12, 12홉을 지나야 도달하는 거리에 있다고 판단할 수 있습니다.

해당 옵션 마다 차이를 보시면 15와 default에서는 핑이 도달하는 것을 확인할 수 있으며 10을 설정하였을 때는 time to live exceeded가 나타나는 것을 확인 할 수 있습니다. 즉 ttl이 0이 되었을때 구글에 도착하지 못한 것입니다. 

다음은 요청 패킷에서의 ttl을 15와 default로 패킷 캡처를 통해 확인한 결과 입니다.

 

 

왼쪽이 15로 설정한 경우, 오른쪽이 기본 패킷의 경우 입니다.

 

-T 옵션

timestamp를 지정해 확인할 수 있게 하는 옵션입니다. 해당 옵션에는 세가지의 옵션이 존재하는데 tsonly, tsandaddr, tsprespec 입니다. 하나씩 설명하도록 하겠습니다.

 

먼저 tsonly입니다.

이름에서 알 수 있듯이 timestamp를 찍어보내고 패킷에 이 값을 담아 돌아오게 하는 것으로 timestamp만을 저장하여 출력시 같이 출력해주는 것입니다. 해당 옵션을 사용한 것을 보고 말씀드리겠습니다.

 

 

보시면 각 해당 패킷이 지나갈때마다 timestamp에 값을 저장하여 가져오는 것을 확인 할 수 있습니다. 내부 ip를 대상으로 실험을 한 이유는 방화벽이나, 라우터에서 해당 요청에 대한 timestamp를 응답하지 않은 경우가 많기 때문에 이 옵션을 사용하기 위해 내부에서 실험하였습니다.

 

다음은 tsandaddr 입니다.

 

 

timestamp와 address를 동시에 출력해주는 지정자로 위 옵션과 마찬가지로 방화벽과 라우터에서 필터 되고 있는 경우가 대다수 일 것입니다. tsonly 보다는 해당 주소와 timestamp를 확인할 수 있어 어떤 구간이 어떠한 주소를 가지고 있는지 파악 하는데 더 효과적입니다.

 

 

마지막으로 tsprespec입니다.

 

 

여기서는 지정자를 사용하실 때 앞서 있는 두개의 지정자와는 다르게 최종목적지로 가는 경로를 지정 할 수 있습니다. 캡처에서 보는 것처럼 192.168.0.1을 지나 218.152.151.1로 가도록 지정 하였고 이렇게 지정된 경로에 대한 timestamp와 주소가 보여집니다. 이 지정자를 사용하면 라우팅 경로뿐 아니라 내가 원하는 경로를 통해 timestamp를 확인 할 수 있습니다.

 

앞서 보여드린 지정자들을 모두 포함하여 -T 옵션은 패킷 캡처에서 아래 option field에 timestamp를 저장하도록 하고 있습니다. 이를 통해 패킷 상에서도 해당 timestamp를 확인 할 수 있습니다.

 

 

 

-v 옵션

자세한 출력을 해주는 옵션이라고 설명되어 있는데요. 막상 실험을 해보니 패킷 캡처에서도 특이점을 발견할 수 없었고 출력에서도 다른 점을 찾지는 못했습니다. 정확히 어떠한 기능을 하는 것인지는 아시는분이 계시다면 알려주시면 감사하겠습니다. 우선은 -v 옵션 외에도 아래 보시는 것처럼 permission denied가 뜨는 경우가 있습니다.

 

 

이 옵션을 사용하기 위해 해당 관련된 문제를 해결 하니 ping_group에 대한 범위를 0(root)에서 0까지로 지정하면 된다는 것을 확인했고 명령어를 실행하니 해결이 되었습니다. 해당 명령어와 캡처 화면입니다.

 

 

sysctl -w net.ipv4.ping_group_range="0 0"

 

다시 한번 -v 옵션을 사용해 보았으나 역시 변화되는 것은 없고 permission에 대한 부분은 해결이 되었습니다.

 

 

 

-V 옵션

해당 옵션은 Version에 대한 정보를 출력해주는 옵션입니다.

 

 

해당 명령어 사용시 버전 출력 한 뒤 exit(즉, 종료)하며 뒤에 주소를 작성하더라도 ping 명령을 수행하지 않고 버전에 대한 정보만을 구해줍니다.

 

 

-w 옵션

 

해당 옵션은 ping 명령 실행의 종료 시점에 대해서 지정하는 옵션입니다.

 

 

일반적인 ping의 경우 패킷 요청과 응답에 대한 default시간이 -w의 초와 같기 때문에 deadline을 7로 지정하고 실행하게 되면 -c 7과 같이 7개의 패킷을 출력하게 됩니다.

따라서 이 옵션을 유용하게 사용하기 위해서 -f, -i 옵션등과 같은 default 시간이 아닌 패킷전송을 하여 -w 옵션을 사용하였습니다.

 

해당 캡처에 대해서 잠시 설명하도록 하겠습니다.

-c 옵션을 제거해 카운터 없이 기본의 linux에서는 지속적으로 icmp 패킷을 보내게 한 후 -w 7 옵션을 사용하였습니다. 7초의 시간동안 -f 옵션을 사용해 icmp flooding을 하였고 꽤 많은 패킷을 보내고 7초가 되어 명령이 종료되었습니다

 

아래부분의 -i 옵션을 사용한 경우는 2초마다 보내는 옵션으로 7초의 시간을 지정하였으니 대략 3~4개의 패킷을 예상했으며 정확히 7초가 되면서 4개의 응답이 출력되는 것을 확인하였습니다.

 

횟수를 이용한 -c 옵션을 사용하지는 않으나 지정된 시간에서만 사용하려고 하는 경우 -w 옵션을 사용할 수 있겠습니다.

 

 

-W 옵션

 

응답에 대한 대기 시간을 지정하는 것입니다.

 

이 옵션은 정상적인 요청과 응답 상황에서는 아무런 영향을 미치지 않으며 정상적인 출력과 같은 형태를 취합니다. 다만, 대기시간이 생길 경우 이 대기시간에 대해서 지정을 할 수 있습니다. ping 명령을 통해 icmp 메세지를 보냈으나 응답이 돌아오지 않는 경우 ping은 default로 10초를 대기하게 됩니다. 하지만 이 명령어를 사용하게 되면 이 대기시간을 늘리거나 줄일 수 있습니다.

 

해당 옵션에 대한 캡처화면으로는 다른점을 표현할 수 없다고 생각해서 글로만 설명하였습니다.

 

 

이것으로 드디어 Linux ping 명령어에 대한 옵션 정리가 끝나게 되었네요. 첨에는 옵션에 대한 기본 정의만 작성하려고 했지만 저도 써보면서 옵션에 대한 하나하나에 대한 차이를 알아보게 되면서 공부가 많이 되었던 것 같습니다. 추후에 다른 명령어에 대해서도 작성하겠습니다. 감사합니다.

'Analysis > Network' 카테고리의 다른 글

Ping의 다양한 option 사용법 2-2 (Linux)  (0) 2018.04.25
ipg/ewma란?  (0) 2018.04.24
Ping의 다양한 option 사용법 2-1 (Linux)  (0) 2018.04.24
Ping의 다양한 option 사용법-1 (Windows)  (0) 2018.04.23
Ping & Traceroute  (0) 2018.04.23
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함