[시놀로지 나스] NAS에 서브넷 라우터 구성하기 (Tailscale 활용)
Tailscale의 서브넷 라우터 기능을 시놀로지 NAS에 설정하면 Tailscale을 설치할 수 없는 구형 기기도 원격으로 접속할 수 있다.
서브넷(Subnet)은 같은 네트워크에 연결된 기기들의 그룹을 의미한다. 우리가 흔히 사용하는 인터넷 공유기는 통신사(ISP)에서 받은 공인 IP 주소를 이용해, 집 안의 여러 기기가 인터넷을 함께 쓸 수 있도록 별도의 내부 네트워크(사설망)를 구성한다. 이 내부 네트워크에 속한 기기들은 공유기로부터 192.168.1.x 같은 내부 IP 주소를 할당받는데, 192.168.1.x 대역 전체를 하나의 서브넷으로 볼 수 있다.
서브넷 라우터(Subnet Router)는 말 그대로 특정 서브넷에 접근할 수 있도록 통로 역할을 하는 장치다. 시놀로지 NAS를 서브넷 라우터로 설정하면 외부에서 스마트폰이나 노트북으로 Tailscale에 접속했을 때 NAS는 물론 NAS와 같은 서브넷(예: 192.168.1.x)에 있는 다른 모든 기기에도 접근할 수 있다. 예를 들어 공유기 관리자 페이지의 내부 주소가 192.168.1.1 이라면, 어디서든 Tailscale을 통해 해당 주소에 접속할 수 있다.
Tailscale을 이용하면 서브넷 라우터 설정도 간편하게 할 수 있다. NAS의 로컬 네트워크 정보를 Tailscale 네트워크에 광고(Advertise)하면, 외부 기기들은 이 정보를 바탕으로 로컬 네트워크에 있는 어떤 장치와도 통신할 수 있게 된다. 시놀로지 NAS가 Tailscale 가상 네트워크와 집 안의 로컬 네트워크를 서로 연결해 주는 다리(게이트웨이) 역할을 수행하는 것이다.
사전 준비
IP 포워딩 활성화
먼저 시놀로지 나스에 SSH로 접속한 뒤 관리자 권한을 획득한다. SSH를 처음 사용한다면 가이드 포스팅을 참고하자.
# 나스 SSH 접속 명령어 형식
# 예: myuser@192.168.1.50 -p 2222
ssh [사용자명]@[호스트 주소] -p [포트 번호]
# 관리자 권한 획득 (비밀번호 입력 필요)
sudo -i
그런 다음 NAS의 IP 포워딩을 활성화한다. 이렇게 하면 NAS가 라우터처럼 작동하여, 서로 다른 네트워크 인터페이스들의 데이터를 중계(전달)할 수 있게 된다.
# IPv4 포워딩 설정 추가
echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.conf
# IPv6 포워딩 설정 추가
echo 'net.ipv6.conf.all.forwarding = 1' | sudo tee -a /etc/sysctl.conf
# 설정 파일 적용
sysctl -p /etc/sysctl.conf
서브넷 네트워크에 광고
이제 NAS가 연결된 로컬 네트워크 대역(서브넷)을 Tailscale에게 알려줘야 한다. 아래 명령어에서 192.168.1.0/24 부분을 본인의 내부 네트워크 대역에 맞게 수정한 후 명령어를 입력한다. 필자가 사용하는 공유기는 192.168.1.x 형식의 내부 IP를 할당하므로 192.168.1.0/24으로 입력했다.
tailscale set --advertise-routes=192.168.1.0/24
(배경지식) IP주소
우리가 흔히 사용하는 IP 주소(IPv4)는 총 32비트(bit)로 구성되며, 점(.)으로 구분된 4개의 8비트 숫자로 표현한다. 8비트는 0부터 255(11111111)까지의 값을 가질 수 있으므로, IPv4 주소는 0.0.0.0 부터 255.255.255.255 까지의 범위를 갖는다.
(배경지식) 서브넷 마스크
192.168.1.0/24 형식의 주소에서 /24는 서브넷 마스크를 의미한다. 서브넷 마스크는 IP 주소에서 네트워크 영역과 호스트 영역을 구분하는 기준으로, 앞의 24비트가 네트워크 주소임을 나타낸다. IPv4는 총 32비트이므로 남은 8비트는 호스트 주소로 사용된다.
- 네트워크 영역(Network ID): 해당 네트워크에 속한 기기들이 공통으로 사용하는 고정 주소
- 호스트 영역(Host ID): 같은 네트워크 내에서 개별 기기를 구분하기 위한 숫자
서브넷 마스크(Subnet Mask) 이름 그대로 네트워크 영역(고정)은 1
로 마스킹하고, 호스트 영역(가변)은 0
으로 마스킹한다고 이해하면 된다.
호스트 영역에서 0(예: 192.168.1.0)은 네트워크 주소, 255(예: 192.168.1.255)는 브로드캐스트 주소로 예약되기 때문에 실질적으로 사용할 수 있는 호스트 주소는 1부터 254까지(예: 192.168.1.1~192.168.1.254) 총 254개가 된다(2⁸-2=254).
- 네트워크 주소: 해당 네트워크 대역(서브넷)의 대표 주소
- 브로드캐스트 주소: 같은 네트워크에 있는 모든 기기로 메시지 전송 시 사용하는 주소
정리하면, 네트워크 대역은 서브넷 마스크를 기준으로 구분된다고 볼 수 있다. 앞에서 서브넷 마스크는 IP 주소에서 어디까지가 네트워크 ID(네트워크 영역)이고, 어디부터가 호스트 ID(개별 장치 식별 영역) 인지 결정한다고 했다. 가장 흔히 쓰이는 /24 표기법을 기준으로 IP 주소의 앞 3자리가 네트워크 ID가 된다. 따라서 192.168.1.x와 192.168.0.x는 다른 네트워크 대역이다.
/24 처럼 서브넷 마스크를 슬래시와 비트 수로 간결하게 표시하는 방식을 CIDR(Classless Inter-Domain Routing) 표기법이라고 부른다.
서브넷 네트워크 활성화
Tailscale 콘솔 > Machines 페이지를 보면 방금 설정한 시놀로지 NAS 기기에 파란색 Subnets 배지가 표시된 걸 확인할 수 있다.
우측 점 세 개 클릭 > Edit route settings 클릭 > 서브넷 대역 체크 > Save 버튼을 클릭하면 설정이 완료된다.
Access Rule 설정 (선택)
Tailscale 콘솔 > Access control 규칙을 별도로 수정하지 않았다면 기본적으로 Tailscale 네트워크 내의 모든 장치와 포트에 자유롭게 접근할 수 있다. Tailscale을 혼자 사용한다면 큰 문제가 되지 않지만, 여러 명이 함께 사용한다면 보안을 위해 적절한 규칙을 설정해 주는 게 좋다.
필자는 본인이 소유한 디바이스에만 접근할 수 있도록 제한하고, admin 그룹만 서브넷을 포함한 모든 디바이스에 접근할 수 있도록 설정했다.
{
"groups": {
// admin 그룹 정의
"group:admin": ["hello@gmail.com"]
},
"tagOwners": {
"tag:server": ["group:admin"]
},
"acls": [
// Tailnet에 있는 모든 장치들끼리 접근 허용 (기본값)
// { "action": "accept", "src": ["*"], "dst": ["*:*"] }
// 모든 사용자가 자신의 디바이스에만 접근 가능
{
"action": "accept",
"src": ["autogroup:member"],
"dst": ["autogroup:self:*"]
},
// admin 그룹은 모든 디바이스 접근 가능
{
"action": "accept",
"src": ["group:admin"],
"dst": ["*:*"]
}
]
// ... 생략
}
접속 테스트
서브넷 라우터가 올바르게 구성됐다면 외부에서도 집에 있는 네트워크 장치에 접속할 수 있다. Tailscale이 연결된 기기에서 시놀로지 NAS의 내부 IP 주소(예: 192.168.1.x)로 ping을 보내보자. n bytes from … 메시지가 연속적으로 표시된다면 연결이 성공적으로 이루진 것이다.
ping 192.168.1.2
# PING 192.168.1.2 (192.168.1.2): 56 data bytes
# 64 bytes from 192.168.1.2: icmp_seq=0 ttl=64 time=36.396 ms
# 64 bytes from 192.168.1.2: icmp_seq=1 ttl=64 time=14.177 ms
아수스 공유기
ASUS Router App은 [WAN을 통한 웹 액세스 사용]을 예
로 설정해야만 외부에서 접속할 수 있지만(로컬 네트워크에선 가능), 서브넷 라우터를 설정했으므로 아니오
로 설정해도 Tailscale이 연결된 상태에서 ASUS Router App에 접속할 수 있다.
맥북 타임머신
타임머신 최초 설정 시 백업 디스크를 NAS의 로컬 IP 주소로 지정해 두면, 외부에서도 Tailscale을 통해 타임머신 백업을 할 수 있다. 또한, Tailscale의 VPN On Demand 설정을 활용하면, 집 Wi-Fi에 접속 중일 땐 Tailscale이 자동으로 비활성화되도록 구성할 수 있다. 이렇게 하면 집에서는 로컬 네트워크를 통해 빠른 속도로 백업하고, 외부에서는 Tailscale 네트워크를 통해 원격으로 백업할 수 있다.
레퍼런스
Subnet routers · Tailscale Docs
Use subnet routers to give devices outside your local network access to services within specific subnets. Extend your private network with Tailscale.
tailscale.com
'⌚️ Productivity' 카테고리의 다른 글
[시놀로지 나스] NAS에 설치한 Tailscale 자동 업데이트 설정 방법 (0) | 2025.08.03 |
---|---|
작은 크기의 소음없는 최고의 가성비 UPS - WalleCube (4) | 2025.07.30 |
AdGuard 사용 시 티스토리 gif 이미지 안나오는 문제 해결 (1) | 2025.07.07 |
무료 이미지 호스팅 구축하기 (Cloudflare R2 + PicGo + WebP Cloud) (0) | 2025.04.06 |
Perplexity Pro 1년 무료로 사용하기 ($200 절약) (0) | 2025.03.30 |
댓글
이 글 공유하기
다른 글
-
[시놀로지 나스] NAS에 설치한 Tailscale 자동 업데이트 설정 방법
[시놀로지 나스] NAS에 설치한 Tailscale 자동 업데이트 설정 방법
2025.08.03 -
작은 크기의 소음없는 최고의 가성비 UPS - WalleCube
작은 크기의 소음없는 최고의 가성비 UPS - WalleCube
2025.07.30 -
AdGuard 사용 시 티스토리 gif 이미지 안나오는 문제 해결
AdGuard 사용 시 티스토리 gif 이미지 안나오는 문제 해결
2025.07.07 -
무료 이미지 호스팅 구축하기 (Cloudflare R2 + PicGo + WebP Cloud)
무료 이미지 호스팅 구축하기 (Cloudflare R2 + PicGo + WebP Cloud)
2025.04.06