들어가기 전
개인 공부를 하려는데 서버비용이 만만치 않아서 집에있는 데스크탑을 활용해서 개인 노트북의 DB,ELK등의 부담을 줄이려고 시도했습니다.
아래의 조건이 저한테 중요한 셋업이었습니다.
- 가족공용으로 쓰는 데스크탑이기 때문에 기존의 windows 환경에서 셋업
- 가족들의 사용에 영향이 가지 않도록 하기
- 서버를 셋업하면서 무선인터넷 유지
이 조건들에 맞춰서 설정하는 과정을 기록하겠습니다.
먼저 ssh, DB연결을 하기위한 인터넷 설정부터 시작하겠습니다.
1. 인터넷 구조 파악하기
서칭하면서 포트포워딩이 간단할 줄 알았는데 외부망과 공유기ip가 다른 경우가 있었습니다.
먼저 네트워크 구조부터 파악해야합니다.
처음에 세팅할때 공유기2만 설정을 했었는데, 공유기1이 외부망과 연결된 걸 찾았습니다.(신발장에 숨겨져있어서 겨우 찾았습니다…ㅜㅜ)
이렇게 공유기 2개를 찾았으니 본격 포트포워딩을 설정할 수 있습니다!
2. 포트포워딩 설정하기(내부공유기[공유기2])
먼저 직접적으로 연결되어있는 공유기에 접속합니다. 데스크탑에서 게이트웨이주소로 들어가면 관리인 페이지가 나오는데 모델마다 달라서 비밀번호는 검색해보시면 많이 나옵니다.
- 외부포트번호 : 공유기1에 오픈할 포트
- 내부IP주소 : 이건 데스크탑의 IPv4 주소
- 내부포트: 내부로 접속할 포트번호
- 프로토콜 : TCP
- 설명 : 원하는 이름(mysql,ssh,redis 등)
3. 데스크탑 IP 고정
공유기에서 기기의 IP를 변경시키지 않도록 고정IP를 할당해야합니다.
- 고정 DHCP 설정 페이지 이동
- 추가한 데스크탑의 IP : 데스크탑의 MAC주소를 등록
이 방법으로 데스크탑의 IP가 변경되는 상황을 방지합니다. 공유기 마다 다를 수 있지만 저는 네트워크관리 > LAN 연결 설정 > 고정DHCP 설정으로 구성되어있네요.
4. 윈도우 방화벽 설정
윈도우 방화벽 > 고급설정 > 인바운드 규칙 > 새 규칙에서 위의 내부포트에 대한 방화벽을 열어줘야합니다.
아래 화면의 우측상단에 새규칙을 눌러 아래 내용으로 채워주시면 됩니다.
- 규칙 종류 : 포트
- 프로토콜 및 포트 : TCP, 특정로컬포트(공유기의 내부포트)
- 작업 : 연결 허용
- 이름: 원하는 이름
이렇게 내부망에서의 포트포워딩은 다했습니다.
5. 포트포워딩 설정(외부공유기[공유기1])
내부공유기 관리자페이지에서 게이트웨이주소를 URL에 입력하면 접속됩니다.
포트포워딩을 설정하는 방식은 비슷하고, 관리자 비밀번호도 기기마다 상이하여 서칭하셔야합니다!
- 로컬IP : 내부공유기(공유기2)IP
- 로컬포트 from,to : 내부공유기(공유기2)에서 열어둔 외부포트
- 외부포트 from,to: 외부에서 요청할 포트
외부공유기 → 내부공유기 → 데스크탑 순서로 오픈하면 포트포워딩 과정은 끝입니다
추가 사항
DB, 소프트웨어, ssh등 포트를 추가로 열려면 방화벽,공유기1,2 모두 설정을 추가해야합니다.
공유기하나를 브릿지모드로 변경하면 포트포워딩과정을 줄일 수 있지만, 저는 둘다 무선 인터넷이 연결되어야해서 적용할 수 없는 방법이었네요.
따라하시는 분들이있다면 브릿지모드를 고려해보셔도 될 것 같습니다.