본문 바로가기
서버/홈서버

[홈서버구축하기 3] 내부망 고정아이피 설정 및 포트포워딩 그리고 DDNS

by for2gles 2024. 1. 6.
반응형

홈서버 구축하기 시리즈


 

먼저 서버 셋업이 완료 되었으면 가장 먼저 설정하고 구성해야하는것이 있다.

내부망

 

내부망?

집에 인터넷이 들어온다면, ISP를 통해 1개의 Public IP를 발급받을것이다.
이는 고정아이피인지 유동아이피는 전혀 중요하지 않다.

Pasted image 20240101175724.png


이미지 출처: 네이버 블로그

 

인터넷이 들어오게되면 우리는 이를 공유기에 연결시킬것이고, 이 공유기에는 유선을 통해 PC가 연결될 수도 있고, 와이파이를 통해 여러 핸드폰들이 연결될 수 있다.
이 각각 연결된 기기들은 공유기를 통해 각각의 사설 아이피(private ip)를 발행받게된다.
사설아이피란?(나무위키)

외부에서 내가 설치할 서버에 요청을 보내기 위해서는 아래와 같은 순서의 작업들이 필요하게 될 것이다.

  1. 외부에서 우리가 설치한 서버를 찾기 위해 가장 먼저 우리집 IP 그리고 포트가 필요할 것이다. 일단 지금은 기본적으로 80포트라고 가정해보자.
  2. IP를 통해 우리집까지 요청이 찾아왔는데, 가장 먼저 맞이하는 친구는 공유기이다.

이 공유기에 연결되어있는 컴퓨터 혹은 휴대폰이 정말 많기 때문에 이들중 어디로 요청을 보내야 할지에 대해 설정이 필요하다. 이것이 포트 포워딩이다.

포트 포워딩은 만약에 80포트로 요청이 온다면 공유기에 할당되어있는 설정에 따라 사설 아이피중 특정 아이피에 특정 포트로 요청을 전달해주는 작업을 하게 된다.

간단 서버 도식.png

드디어 우리의 서버는 80포트에 맞는 요청을 받을 수 있게 되었다.
이 상황에서 문제가 될 수 있는 사항들을 나열해보겠다.

  1. "내 아이피"는 가정집의 경우 일반적으로 유동아이피이다. 자주 바뀌지는 않겠지만 어쨌든 바뀔 수 있다.
  2. 내 서버 또한 공유기에 연결이 되어있지만, 공유기가 재시작 되거나, 내 서버가 껐다 켜지는 등의 어떠한 이유로 인해 내부 아이피는 얼마든지 변경될 수 있다.
    따라서 이 문제들을 해결해보자.

유동 Public ip 해결하기

고정아이피 사용하기

쉬운 방법으로는 돈을 내고 고정아이피를 사용하는것이다.
Public IP는 개수가 한정되어있는 만큼 고정아이피를 사용하기 위해서는 돈을 내야한다.

필자는 KT 통신사를 사용하고있는데, 상담사에 전화를 통해 고정아이피 사용이 가능한지에 대해 문의를 해보았다.
결과로는 일반 가정용인터넷에서는 고정아이피 사용이 불가했고, kt 오피스넷이라는 별도의 제품을 사용해야했다.
이는 개인 인터넷이 아니기 때문에 가족결합도 불가능했고, 비용도 조금 더 비쌌으며 결정적으로 고정아이피에 대한 비용으로 인터넷요금만큼 더 지불해야했다.
예를 들어 오피스넷 에센스 요금제를 사용한다면 기본 64,900원을 지불해야하는데, 여기에 고정아이피를 사용하려면 별도로 70,400원을 지불해야해 총 매월 납부해야 할 요금이 135,300원이 된다.

SK의 경우 파워IP라는 부가서비스로 월 38,500원을 지불하면 고정아이피를 발급받을 수 있다. 다만 서버 구축 불가 라고 명시적으로 적어 놓았다..

Pasted%20image%2020240101182101.png


사실상 가정집에서 완전한 고정아이피를 발행받는것은 정책적으로나 비용적으로나 어려운 것 같다.

DDNS 사용하기

고정아이피는 불가능한 것 같고, 또다른 방법을 생각해보자.

유저가 내 홈페이지에 접속을 할때는 도메인을 통해 접속 할 것이다.
그리고, 내 서버는 현재 나의 아이피를 알고있다.
그렇다면, 내 서버가 주기적으로 아이피를 DNS에 최신화를 해준다면 아이피가 변경된다고 하더라도 잠깐의 다운타임은 있겠지만, 접속에 문제가 없지 않을까?
이 개념으로 작동하는 것이 DDNS다.

DDNS.png


이렇게 유저는 내 홈페이지에 안정적으로 접속을 보장해줄 수 있게 됐다.
이에 대한 설정 방법은 별도의 게시글을 통해 다시 작성하도록 하겠다.

유동 Private ip 해결하기 - 공유기에서 고정값으로 설정해주기

Private ip는 다행히 공유기에서 발행해주는 것 이기 때문에 공유기 설정에서 쉽게 설정할 수 있다.
기본적인 원리는 "DHCP예약"을 통해 기기마다 있는 네트워크장치의 mac주소를 확인해서 고유한 private ip를 할당해줄 수 있는 것이다.

포트포워딩 설정

이렇게 되면 남은것은 포트 포워딩 설정하는 방법이다.

이미 내 서버의 사설 ip를 알고 있기 때문에 설정이 너무나도 쉽다.
만약 Public IP로 80포트에 대한 요청이 들어올 때 내 서버의 8080포트로 연결시켜주고자 한다면

  • 아이피: 내 서버 사설ip
  • 외부포트: 80
  • 내부포트: 8080
  • 프로토콜: TCP (80포트는 http요청일 것 이므로 TCP)

이렇게 설정해주면 되는 것이다.


 

반응형

댓글