일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Today
- Total
- 라즈베리파이4
- qualifier
- beandefinition
- 롬복 Qualifier
- 생성자 주입
- 스프링 Configuration
- RequiredArgsConstructor
- Spring interceptor
- 도커
- Autowired 옵션
- 스프링
- Servlet Filter
- DI
- autowired
- 객체지향
- ComponentScan
- 라즈베리파이
- springsecurity
- 싱글톤 컨테이너
- 빈 중복 오류
- 스프링 컨테이너
- 스프링 싱글톤
- Spring
- 스프링 빈
- HandlerMethodArgumentResolver
- 의존관계 주입
- UsernamePasswordAuthenticationFilter
- docker
- DI컨테이너
- 스프링 빈 조회
그날그날 공부기록
iptime DDNS 설정 본문
지난번 라즈베리파이를 이더넷에 연결하는 데 성공했고, 이제 외부에서 원격 접속을 하기 전 DDNS를 설정해주려고 한다.
같은 네트워크에서의 접속
현재 데스크탑이나 노트북, 라즈베리파이들 모두 거실 공유기 하위의 같은 서브넷이 속해있다.
따라서 라즈베리 파이의 IP를 사용하여 노트북이나 데스크탑에서 SSH로 라즈베리파이에 접속이 가능하다.
(이미 기기들에 SSH 공개키를 저장해두었다.)
→ ssh ${USER_NAME}@${HOST_IP}
→ ex) ssh yijy001@192.168.0.1
외부 네트워크 에서의 접속
하지만 노트북을 외부로 들고 가서 라즈베리파이(호스트)에 접속을 시도하면 어떻게 될까?
당연히 실패할 것이다.
호스트에 할당된 IP는 공유기의 DHCP서버에서 할당해 주는 사설(가상) IP이기 때문이다.
호스트가 외부 서버에 요청을 보낸다고 생각해 보자.
요청은 사설 IP를 할당받은 호스트에서 NAT를 통해 KT에서 할당받은 공인 IP로 변환되어 요청이 인터넷으로 나갈 것이다.
- 호스트(사설 IP) → 거실 공유기(공인 IP) → 인터넷
반대로, 외부에서 호스트에 요청을 보내려면 어떻게 해야 할까?
앞서 말했듯이 호스트에는 사설 IP가 할당되어 있기 때문에, 외부 네트워크에서는 해당 호스트를 특정하지 못한다.
호스트가 외부의 요청을 받기 위해서는 1차적으로 KT에서 할당받은 공인 IP로 받은 뒤, 호스트에 전달되어야 한다.
- 인터넷 → 거실 공유기(공인 IP) → 호스트(사설 IP)
SSH 접속 요청 역시 이와 마찬가지이다.
→ 내부망에서 접속: ssh ${USER_NAME}@${HOST_IP}
→ 외부망에서 접속: ssh ${USER_NAME}@${PUBLIC_IP}
- 이를 위해서는 공인 IP의 특정 포트로 받은 요청을 호스트의 특정 포트로 넘겨주는 포트포워딩을 해주어야 한다. 포트포워딩은 다음 글에서 작성할 예정이다.
공인(외부) IP 확인
외부에서 집에 있는 호스트에 접속하기 위해서는 공인 IP를 통해 접속해야 한다.
공인 IP를 확인하기 위해서는 공유기 페이지(192.168.0.1)에서 확인 가능하다.
(iptime기준 기본 설정 → 시스템 요약 정보)
DDNS(Dynamic DNS) 설정
하지만 공인 IP는 언제든 변경될 수 있고, IP를 외우기도 힘들다.
iptime은 DDNS를 제공하기 때문에, 편리하게 공인 IP로 접근이 가능하다.
DDNS는 IP 주소가 변경될 때 DNS 레코드를 자동으로 업데이트해주는 서비스다. (도메인을 등록해 두면, 매핑된 공인 IP가 변경되어도 알아서 변경해 준다)
설정방법은 아래와 같다.
공유기 페이지에서 고급설정 → 특수기능 → DDNS설정
호스트 이름에는 내가 원하는 도메인 이름을, 사용자 ID에는 이메일을 넣어주면 된다.
등록 후 아래 사진과 같이 정상등록이라고 나온다면 성공이다.
이제 설정한 주소를 입력하면 공인 IP로 알아서 매핑이 된다.
접속 테스트
테스트를 위해 외부망(휴대폰 데이터)에서 공유기에 접속해 보기로 했다.
테스트 전, 공유기 설정에서 외부에서 공유기 접속을 허용해주어야 한다.
아래 사진과 같이 임시로 9999 포트를 원격 관리 포트로 열어두었다.
다음 휴대폰에서 데이터를 사용하고, 브라우저에 DDNS에 등록한 도메인과 포트번호를 통해 요청을 보내면 공유기 접속 페이지가 나오게 된다!
'개인 서버 만들기 > 라즈베리파이 세팅' 카테고리의 다른 글
라즈베리파이4 DHCP 요청실패로 인한 삽질 (6) | 2024.01.08 |
---|