포트포워딩 안될 때

SuYeong·2021년 8월 17일
8
post-thumbnail

다중 공유기

대부분의 가정에서 다중 공유기를 사용한다고 한다.
이 사실을 모르고 인터넷에 있는대로만 했다가 굉장히 헤맸다.
포트포워딩을 하려는데 잘 안된다면 아래의 방법을 시도해보자.

다중 공유기란?

다중 공유기가 어떤것인지에 대해서 먼저 알아보자.

위 그림은 필자가 사용하고 있는 네트워크 환경 모양과 구성품들을 그려놓은것이다. (실선 - 유선 연결, 점선 - 무선 연결)

내가 살고있는 집의 경우, 공인 ip를 받는 공유기에 여러개의 LAN선이 연결되어있다. 이 LAN선들은 각 방의 벽의 LAN선 구멍에 연결되어있고 사용자가 LAN선을 기기에 연결하여 인테넷을 사용할 수 있다.

(본인의 집의 방마다 LAN선 포트가 있다면 다중 공유기를 의심해보자)

이중에 하나의 랜선에는 PC가, 하나의 랜선에는 와이파이 공유기가 연결되어있다.

공유기 1과 공유기 2처럼 공유기끼리 연결되어있는 상태를 "다중 공유기" 라고 부른다

다중 공유기 여부 확인

우선, 자신의 집의 공유기가 다중인지 아닌지를 확인해보려면, 공유기 관리자 홈페이지에 들어가보면 된다.

공유기 관리자 홈페이지에 들어가기 위해서, 공유기의 ip주소를 알아내자.
(보통의 경우, 공유기 ip주소가 관리자 홈페이지로 이어진다)

cmd에 ipconfig를 입력하면 위와 같이 나오는데, 여기서 IPv4가 사용하고 있는 기기의 사설 ip주소이고, 기본 게이트웨이가 공유기의 ip주소이다.

기본 게이트웨이의 ip주소를 입력하면 아래와 같은 화면이 뜰 것이다.
이 화면은 공유기마다 다르다.

로그인을 하게되면, 아래와 같이 공유기에 대한 정보를 보여주는 표가 있을것이다.

여기서 WAN 정보에서 IP주소를 보자.
(혹은 외부 IP, 공인 IP 라고 적혀있을 수 있다.)


192.168.xxx.xxx 라고 적혀있다면, 다중 공유기를 사용하는 환경인 것이다. 위의 네트워크 그림으로 따지면, "공유기2" 에 해당한다.

그러면 이 정보들을 조회한 컴퓨터 역시 PC2 에 해당하는 것이다.

그러면 공유기 2를 거치지 않은 PC1으로 관리자 페이지에 들어가보자.


PC1의 cmd에서 ipconfig를 입력하면 위와 같이 출력된다.
랜선으로 연결되어 있으므로 이더넷 어댑터에 대한 정보가 출력된다.

위에서 설명한 바와 마찬가지로,
IPv4 주소는 PC1의 사설IP,
기본 게이트웨이는 공유기 IP이다.

주소창에 공유기 IP주소를 입력하자.

위와 같은 화면이 나온다.
관리자 페이지 모양이 다른 것으로 봐서,
공유기1 과 공유기2 의 기기가 다른 것인 것 같다.

로그인을 해주도록 하자.
(이것의 계정, 암호는 인터넷에서 찾을 수 있는 것과는 달라서 나는 고객센터에 전화를 했었다.)


찾아본 WAN IP가 192.168.xxx.xxx로 시작하지 않는다.

공인 IP가 맞는지 확인해보기 위해서,
https://search.naver.com/search.naver?where=nexearch&sm=top_hty&fbm=1&ie=utf8&query=ip%EC%A3%BC%EC%86%8C
네이버에 "ip주소"를 검색한다.

네이버에 검색해본 공인 IP주소와, WAN IP가 일치한다면, 공유기1 에 해당하는 공유기를 찾은것이다.

다중 공유기 포트포워딩 하기

필자가 하고싶은것은 외부에서 공인 IP를 이용해, 라즈베리파이에서 열은 서버에 접속하는 것이다.

공유기가 2개이므로 포트포워딩을 두번 해주면 할 수 있다.

공유기1 에서 공유기2 로 포트포워딩,
공유기2 에서 라즈베리파이 웹서버로 포트포워딩 하면 된다.

필자가 라즈베리파이에서 열은 웹서버의 포트 번호는 18080이다.
라즈베리파이는 공유기2 에 연결되어있으므로 공유기2 의 관리자 페이지에서 포트포워딩 설정을 해야 한다.


라즈베리파이의 IP주소가 192.168.35.21 이고,
웹서버의 포트 번호가 18080이므로 위와 같이 작성해주었다.
외부 포트는 헷갈릴까봐 일부러 내부 포트와 똑같이 설정해주었다.


위와 같이 잘 등록된 것을 볼 수 있다.

혹시 필자와 같이, 아래와 같은 "저장 후 적용" 버튼이 있다면 반드시 눌러주도록 하자.

이렇게 되면, 내부 공유기에서의 포트포워딩 설정은 끝이 났다.
잘 되었는지 확인하려면, PC1에서 공유기2의 ip, 포트번호 18080에 접속하면 된다.

공유기2 에 할당된 ip주소가 192.168.55.2 이므로,
PC1에서 192.168.55.2:18080 을 주소창에 입력해보도록 한다.

위와 같이 서버에 잘 접속되는 것을 볼 수 있다.

그러면 공유기1 에서 역시 포트포워딩 설정을 해주어야 한다.

위와 같이 설정하면 외부 - 공유기1 - 공유기2 - 라즈베리파이에 도달하는 포트포워딩 설정이 완료된 것이다.

연결되었으니 잘 만들어졌나 테스트를 해봐야 하는데, 같은 공인 IP를 사용하는 네트워크에서는 테스트를 할 수 없다.

위와 같은 에러가 발생하게 된다.

https://www.yougetsignal.com/tools/open-ports/
따라서 위의 사이트에 접속하여 확인한다.


자동으로 공인IP를 잡아준다.
PortNumber에 설정한 외부 포트를 입력해주면 테스트 할 수 있다.
Prot 18080 is open.... 이라는 글자가 뜨면 잘 포트가 잘 열려서 라즈베리파이의 웹서버와 연결이 잘 된것이다.

아니면 휴대폰 모바일데이터모드(와이파이 X)를 이용해서
"공인 IP":"설정한 포트" ex) 123.123.123.123:18080 를 주소창에 입력하면 확인할 수 있다.


형태를 그려보면 위와 같다.

profile
안녕하세요

5개의 댓글

comment-user-thumbnail
2022년 11월 30일

같은 망에서 공인 ip테스트 안된다는걸 처음 알았네요.
설정을 잘 해놓구 한참 해맸는데 덕분에 해결했습니다!
나중에 커피라도 사드리고 싶네요.
이 글 보시게 되면 rlagmlwnd24@gmail.com으로 메일 1개 남겨주세요

답글 달기

질문 하나 드리고 싶습니다.
라즈베리파이에서 18080포트로 웹 서버를 굴리고 있다고 하셨습니다.
그런데 http나 https 프로토콜을 사용하는 포트는 80 이나 443으로 알고있었습니다!
라즈베리파이에서 18080포트를 80이나 443 포트로 포트포워딩 하는 것인지 궁금합니다.

1개의 답글
comment-user-thumbnail
2023년 2월 6일

멋있으세요😃

답글 달기
comment-user-thumbnail
2023년 11월 27일

제가 3일 째 포트 포워딩 해보고 있는데 "저장 후 적용" 버튼을 안 눌러서 지금까지 포트 포워딩이 안되고 있는 거였네요.
덕분에 해결하고 갑니다. 정말 감사합니다.

답글 달기