인터넷에 연결된 공유기가 있습니다. 그 공유기에 PC가 연결되어 있는데 영상을 스트리밍 하고 있습니다. (공유기는 ipTime, 운영체제는 윈도우10을 사용하고 있습니다.)
외부에서 PC가 인터넷에 연결되어 있는 것을 확인하기 위해 일정 주기로 ping을 보내 확인하려고 했습니다.
외부에서 PC가 인터넷에 연결되어 있는 것을 확인하기 위해 일정 주기로 ping을 보내 확인하려고 했습니다.
하지만 인터넷에 연결되어 있는 IP로 ping을 보내면 PC가 아니라 공유기가 ping에 응답을 합니다. 즉, PC의 동작 여부는 알 수 없었습니다.
나름 찾아본다고 검색을 해도 공유기에 연결되어 있는 PC에 ping을 보내는 방법을 찾을 수 없었습니다.
공유기의 포트포워딩을 통해 외부의 요청 신호를 내부로 넘길 수 있지 않을까 생각을 했지만 ping은 포트와 무관하다는 내용만 찾았습니다.
공유기의 포트포워딩을 통해 외부의 요청 신호를 내부로 넘길 수 있지 않을까 생각을 했지만 ping은 포트와 무관하다는 내용만 찾았습니다.
그러던 중 특정 포트로 ping을 보낼 수 있는 "tcping" 이라는 도구가 있다는 것을 알았습니다.
https://elifulkerson.com/projects/tcping.php
(해당 페이지에 다운로드와 사용 설명이 있습니다.)
이 도구는 "tcping.exe"파일을 받아, 윈도우의 파워쉘 혹은 명령프롬프트로 현재 경로에서 바로 실행하거나 "C:\Windows\System32"경로에 두어서 전역 호출로 사용할 수 있습니다.
포트번호를 따로 적지 않으면 80포트를 기본으로 사용합니다.
80포트를 기준으로, 인터넷에 연결되어 있는 공유기에서 80포트를 포트포워딩해서 내부PC의 80포트와 연결을 한 후, 외부에서 "tcping [ip] [port]"를 입력하면 ping을 보냅니다.
PC에 80포트를 사용하는 프로그램(보통 웹 서버)이 동작하고 있다면 정상적으로 신호를 주고 받게 됩니다. 반대로 해당 포트를 사용하고 있지 않다면 ping은 실패를 하게 됩니다.
주의할 점은 이 방식은 해당 포트를 사용하지 않고 있으면 무조건 실패이기 때문에 실제 PC가 동작하고 있는지 확인하기 위해서는 PC의 실행과 포트를 여는 프로그램이 연동되어야 한다는 겁니다.
개인적으로 PC실행시 특정 포트를 사용하는 프로그램이 같이 켜지도록 설정하면 무난하다 생각합니다. (보통 웹 서버는 같이 실행되도록 설정합니다.)
https://elifulkerson.com/projects/tcping.php
(해당 페이지에 다운로드와 사용 설명이 있습니다.)
이 도구는 "tcping.exe"파일을 받아, 윈도우의 파워쉘 혹은 명령프롬프트로 현재 경로에서 바로 실행하거나 "C:\Windows\System32"경로에 두어서 전역 호출로 사용할 수 있습니다.
포트번호를 따로 적지 않으면 80포트를 기본으로 사용합니다.
80포트를 기준으로, 인터넷에 연결되어 있는 공유기에서 80포트를 포트포워딩해서 내부PC의 80포트와 연결을 한 후, 외부에서 "tcping [ip] [port]"를 입력하면 ping을 보냅니다.
#아이피가 123.123.123.1 이라고 가정 tcping 123.123.123.1 80
PC에 80포트를 사용하는 프로그램(보통 웹 서버)이 동작하고 있다면 정상적으로 신호를 주고 받게 됩니다. 반대로 해당 포트를 사용하고 있지 않다면 ping은 실패를 하게 됩니다.
주의할 점은 이 방식은 해당 포트를 사용하지 않고 있으면 무조건 실패이기 때문에 실제 PC가 동작하고 있는지 확인하기 위해서는 PC의 실행과 포트를 여는 프로그램이 연동되어야 한다는 겁니다.
개인적으로 PC실행시 특정 포트를 사용하는 프로그램이 같이 켜지도록 설정하면 무난하다 생각합니다. (보통 웹 서버는 같이 실행되도록 설정합니다.)
댓글
댓글 쓰기