본문 바로가기
네트워킹/Openwrt

OpenWrt 라우터에 Tailscale 서비스 연결하기

 

 

소프트웨어에서 iptables-nft, tailscale 패키지를 설치합니다.

OpenWrt 22.03 이후 버전 부터 iptables-nft 패키지를 추가로 요구한다고 합니다.

설치가 완료되면 [네트워크] - [인터페이스] 메뉴의 장치 탭에 tailscale0 이라는 항목이 생성된 것을 확인 할 수 있습니다.

인터페이스 탭으로 이동하여 새로운 인터페이스 추가를 누릅니다.

원하는 이름을 기입하고 프로토콜과 디바이스를 위와 같이 지정하고 Create Interface 를 선택합니다.

다음 뜨는 창에서 방화벽 설정으로 이동하여 lan을 추가 하고 저장 후, 저장 후 적용 까지 눌러 적용시킵니다.

그 후 공유기를 재부팅 합니다.

재부팅을 완료하면, SSH 터미널을 이용하여 공유기를 접속하고, 아래의 명령어를 칩니다.

tailscale up

명령어를 사용하면, 주소 한줄이 나오게 되는데, 복사하여 브라우저로 접근 합니다.

Tailscale을 사용하는 계정으로 로그인 합니다.

로그인을 하면, 위와 같은 창이 뜹니다. Connect를 선택하면, 계정이 연동이 완료 됩니다.

연동이 완료된 것을 볼 수 있습니다. 아래부터는 선택사항 입니다.

 

번외. 서브넷 구역 지정 및 Exit Node 설정 하기

아래의 명령어를 사용 합니다.

# tailscale up --advertise-routes=192.168.***.0/24 --advertise-exit-node -netfilter-mode=off

advertise-routes 옵션은 라우터의 랜 영역을 지정 합니다. 보통 192.168.1.0/24 대역을 사용 합니다.

위의 옵션을 사용하면, Tailscale 클라이언트가 A클래스가 100인 아이피가 아닌,

내부망과 동일 한 아이피 대역으로 공유기에 접근 가능 합니다.

추가로, 서브넷에 존재하는 다른 기기들을 추가적으로 등록하지 않고 접근도 가능 합니다.

 

--advertise-exit-node 옵션은, 외부로 나가는 패킷을 등록한 라우터로 보내는 옵션 입니다.

실질적인 VPN 기능 입니다.

 

-netfilter-mode=off 옵션은 필수로 넣는 옵션 입니다.

적용이 완료 되었다면, Tailscale의 콘솔에 위와 같이 Subnets와 Exit Node라는 항목이 새롭게 떠 있습니다.

우측의 ...을 누르고, Edit route settings 메뉴를 누릅니다.

뜨는 창에서 공유기 내부 서브넷과 exit node 옵션을 선택하고 저장 버튼을 누릅니다.

연결된 상태의 클라이언트에서 내부 네트웍으로 정상적으로 접근이 가능한 것을 확인 할 수 있습니다.

그리고 클라이언트의 Exit node에서, None과 공유기를 선택 할 수 있습니다.

None은 일반적으로 외부로 나가는 패킷은 원래대로 보내게 됩니다.

공유기 이름을 선택하면 VPN과 같이 자신의 공유기를 통하여 패킷을 보내게 됩니다.

'네트워킹 > Openwrt' 카테고리의 다른 글

OpenWrt 기본 세팅(Luci 기준)  (2) 2023.12.15