ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 버팔로 공유기 100% 활용하기 1부, NAT 루프백(NAT Loopback)
    정보통신에너지/네트워크 2012. 8. 10. 08:47


     

    [WZR-HP-G450H 자세히보기]

     

    * 저는 공유기 전문가는 아니기 때문에 정보가 빈약할 수도 있고 일부 틀릴 수도 있고 그렇습니다.ㅎㅎ 추가정보나 틀린 정보에 대한 태클은 감사히 받겠습니다.

     

    제가 쓰는 버팔로 공유기는 WZR-HP-G450H 입니다.

    약 10만원 정도 주고 11번가에서 구입하였습니다.

     

    이 공유기는 버팔로 공유기 중 가장 최신이며 가장 비싸고 가장 성능이 좋습니다.

    따라서 이보다 좀 더 저렴한 제품을 사용해도 될 듯 싶습니다.

     

    어쨌든 버팔로 공유기의 특징이라 한다면.. 제 생각에는 초보자부터 전문가까지 다양하게 수용할 수 있는 광범위한 확장성인 듯 싶습니다.

     

    WZR-HP-G450H같은 경우.. 공유기에 펌웨어를 자유자재로 심을 수가 있습니다.

    우선 공유기의 하드웨어 자원이 지원된다는 가정하에.. 대표적으로 다음과 같은 3가지의 펌웨어를 심는 것이 가능합니다.

    (물론 이 것 말고도 심을 수 있는 펌웨어는 찾아보면 많습니다. 그러나 대표적으로 이 3가지를 쓸 수 있으면 버팔로 공유기로 할 수 있는 모든 것을 다 커버할 수 있을 것이라 생각합니다.)

     

    1번. 버팔로 공유기 유저프랜들리 펌웨어(초보자용)

    2번. 버팔로 프로페셔널 펌웨어 DD-WRT(중급자용)

    3.번. OpenWrt(무선랜 라우터를 위한 비실시간 리눅스 기반 오픈 소스 운영체제)

     

    간략히.. 설명을 드리면.. 1번 유저프랜들리 펌웨어는 사면 설치되 있는 것으로 초보자용입니다. 그냥 누구나.. 일반 공유기 쓰듯이 쓰는 펌웨어입니다.

    그런데 버팔로 공유기가 비싼 만큼 성능을 활용하기 위해서는 무조건 2번이나.. 아니면 3번으로 가야합니다. 그 이유는 차차 설명드리겠습니다.

    2번은 해킹 펌웨어 입니다. 제가 알기로는 기본 펌웨어를 해킹해서 이리저리 조작해서 이런저런 추가적인 성능들을 끌어낸 버전입니다.

    버팔로 공유기 DD-WRT 같은 경우 에뮬레이터 형식이라 약간의 성능 저하가 발행하는 것으로 알고 있지만.. 일단 하드웨어 자원 자체가 괜찮은 편이라 크게 와닿지는 않는 것 같습니다.

    3번은 OpenWrt라는 무선랜 라우터를 위한 오픈 소스 운영체제인데 2번 해킹 펌웨어가 일부분 소스 코딩이 가능하다면 3번은 대놓고 소스 코딩이 가능합니다.

    한마디로 임베디드 시스템 개발이라고 할 수 있는데 리눅스 기반으로 공유기 펌웨어를 프로그래밍 할 수 있습니다.

    이것을 잘 활용하면 공유기를 홈서버처럼 쓸 수 도 있고 라우팅 기능이나 브릿지 기능 그 외 기타 등등.. 하기 여하에 따라서 많은 일들을 할 수 있습니다.

     

    공유기 같은 경우.. 무선 출력 조절 같은 일부 물리적인 기능은 일반적으로 제한되어 있는데 해킹 펌웨어나 OpenWrt를 통해서 이런 물리적인 범위까지도 조정할 수 있습니다.

    다만 하드웨어 자원이 받혀주지 않는 과부하를 걸면 물리적인 문제가 발생할 수도 있겠지요 .ㅎㅎ

     

    어쨌든 오늘의 주제는 버팔로 공유기의 대표적인 이슈사항인 NAT Loopback(NAT 루프백) 입니다.

    이 NAT 루프백이란 기능은.. IPTIME 공유기에는 기본적으로 탑재되어 있으나 또 몇몇 공유기에는 기본적으로 탑재되어 있지 않습니다.

    버팔로 공유기 또한….. 이 기능을 기본적으로 지원하지 않습니다.

    그래서 만약 1번 유저프랜들리 펌웨어를 있는 그대로 쓰게 되면 NAT 루프백 기능을 쓸 수 없습니다.

     

    NAT 루프백이 뭐냐면.. 내부 네트워크에서 외부 네트워크인척 해서 공유기에 접근하는 것입니다.

    일반적으로 싸구려 공유기나 ISP업체에서 기본적으로 제공하는 공유기 외 몇몇 공유기까지.. 의외로 많은 공유기 제품들이 이 NAT 루프백이 되지 않습니다.

    사실 이 기능이 필요한 상황은 집에서 홈서버를 돌리거나..

    하는 등 약간 매니악한 경우일 때라 잘 필요하진 않습니다만..

    어쨌든 무슨 이야기냐하면..

     

    내부-공유기-외부

     

    라는 구조가 있다면 내부 네트워크 안에는 개인 PC, 아이패드, 인터넷전화, 핸드폰.. 등등이 Wifi로 공유기에 붙어있을 수 있습니다.

    그리고 외부는 ISP에서 제공하는 인터넷 통신 라인입니다. 만약 공유기의 IP주소가 192.168.11.10 이라고 한다면 내부 네트워크에서는 이 주소가 게이트웨이가 되는 것이고..

    외부 ISP 주소가 212.342.45.1 이라 한다면 이것이 외부로 나가는 주소가 되겠습니다.ㅋ

     

    결론적으로 외부 212.342.45.1 에서 공유기에 접근하는 주소를 가지고 내부에서 공유기로 접근하면 당연히 접근이 되지 않습니다.

    예를 들면 DDNS 나 아니면 도메인을 하나 사서 myhome.com 이라는 주소를 포워딩해서 공유기에 걸었다고 하면..

    myhome.com 이라는 도메인은 외부 212.342.45.1 주소를 가리키게 됩니다.

     

    그런데 만약 집구석에서 홈서버를 돌리게 되면 개발을 할 때나 아니면 어쨌든 내부 네트워크에서 공유기를 통해 서버에 접속 할 때..

    이 myhome.com 이라는 주소로 접근할 수 없다는 이야기가 됩니다.

    그렇게 되면 아주 많은 문제와 함께 더러운 결과가 발생하는데..

     

    그 이유는 일부 웹을 다뤄보면 결국 외부에서 웹에 접근할 때와 내부에서 웹에 접근할 때 쓰는 주소를 다르게 해야 된다는 이야기인데..

    이게 불가능 할 것이라 말씀드리고 싶습니다. 가능하다해도 엄청나게 귀찮고 손실입니다.

     

    결론적으로 그래서 내부에서 내부 네트워크를 통해 외부에서 접근하는 것처럼 myhome.com 이라는 주소로 접근할 수 있게 하는 기능이 NAT 루프백입니다.

    정리하면..

    일반적으로

     

    내부 -> 공유기 <-외부

     

    이 경우 내부에서 공유기로 접근하는 방법은 192.168.11.10이 되고.

    외부에서 공유기 접근은 myhome.com 이 되며,

     

    이렇게 공유기접근주소가 내부, 외부가 달라져 버리면 많은 문제가 발생, 그래서 내부에서나 외부에서나 같은 myhome.com 이라는 주소로 공유기에 접근하기 위해 NAT 루프백이 필요한 것입니다.

     

    하는 방법은..

     

    1번. DD-WRT로 펌웨어 변경

    2번.Command Shells에 라우팅 테이블 명령어를 때려넣어서 루프백이 되도록 만든다

    3번.재부팅한다.

     

    끝입니다.

    매우 쉽습니다.

     

    Command Shells에 쳐넣는 명령어는..

     

    iptables -t nat -I POSTROUTING -o br0 -s 192.168.11.101/24 -d 192.168.11.101/24 -j MASQUERADE

     

    입니다.

     

    저 192.168.11.101이 공유기의 주소입니다.

     

    DD-WRT로 변경하는 법이나.. Command Shells에 뭘 쳐 넣는 과정은 공유기 사면 안에 포함된 설명서에 써있으므로 일단 생략하도록 하겠습니다.

    혹시 잘 안되거나 문의사항이 있으시면 리플을 달아주시면 답변해드리겠습니다.

    과연 묻는 분이 계실까 의문이긴 합니다.ㅋ

    어쨌든 허접한 저의 버팔로 공유기 활용기 1부 NAT Loopback 편은 여기서 마치겠습니다.ㅋ

     

    댓글