내부 네트워크에서 NAS에 접속하기는 쉽다. NAS의 내부아이피를 찾아서 접속하기만 하면 끝. 내부망이기 때문에 포트포워딩이고 뭐고 전혀 필요 없다. 하지만 외부 접속은 다르다. NAS에 필요한 포트 대부분이 막혀있기 때문이다. 이 글에서는, 외부에서 NAS 접속을 할 때 어떻게 설정해야 하는지 총정리해 보았다.
참고로 에어포트 익스트림에서의 설정 방법을 적었는데, iptime 등의 일반 공유기는 내부 아이피를 찾는 작업, 포트포워딩을 해주는 작업등이 에어포트 익스트림보다 간단하다. 따라서 일반 공유기도 아래의 글을 참조하여 비슷하게 설정하면 된다. 또한, FTP는 사용하지 않는다. 굳이 사용하지 않더라도 문제없이 접속할 수 있기 때문이다.
※ 주의 : 2015.02.19 Firmware 7.7.3 기준, 에어포트 익스트림에서 열리지 않는 포트가 있다. 대표적으로 FTP 접속에 필요한 20번과 5만번대 포트. 많은 외국인도 이 문제 때문에 골머리를 앓고 있으며, 직접 애플 기술지원에 전화도 해 보았으나, 애플 측에서 새로운 펌웨어를 내놓기 전에는 해결할 수 없다. 이 외에도 여러 포트가 개방 불가하니 에어포트 익스트림과 시놀로지 나스를 함께 쓸 분은 주의하자. 다행히 FTP를 제외한 필수 포트는 대부분 열린다.
그리고 글을 적는 본인이 네트워크 쪽은 쥐뿔도 모르는 사람으로서 경험과 시행착오를 바탕으로 작성했기 때문에 전문가가 보기에는 허접하기 짝이 없는 설명이 있을 수 있다. 너그럽게 넘어가 주시기 바란다.
목차는
1. NAS 내부아이피 고정하기
2. 포트포워딩하기
3. 윈도에서 접속
4. 맥에서 접속이다.
접속하기 전 : #1 NAS의 내부아이피 고정하기
윈도가 되었든 맥이 되었든 본격적으로 NAS에 접속하기 전에 해야 하는 작업이 두 가지 있다. 첫 번째는 NAS에 할당된 내부아이피를 고정하는 것이고 두 번째는 사용할 포트를 포워딩하는 것이다. 먼저 내부아이피 고정하는 법부터 보자.
내부아이피 고정이 왜 필요한가? 각 인터넷 회선에는 오직 하나의 아이피만 존재하며 이 아이피는 전 세계에서 유일하다. 이를 외부아이피라 부르는데, 공유기는 이 외부아이피를 내부아이피로 쪼개서 각 기기에 할당하는 작업을 한다. 예를 들어 외부아이피가 221.0.0.0 이라고 하면 공유기는 그것을 받아서 192.0.0.1 부터 192.0.0.99 까지 NAS, 휴대전화기, 데스크톱, 노트북, 인터넷전화 등에 배분을 한다. 그런데 일반적으로 221.0.0.0 인 외부아이피는 변동이 없는데, 192로 시작하는 내부아이피는 접속과 해제가 매일 반복됨에 따라 수시로 변한다. NAS의 내부아이피가 변하게 되면 기껏 설정해봐야 모든 것이 헛수고이기 때문에 반드시 NAS의 내부아이피부터 고정하고 모든 작업을 시작해야 한다.
에어포트 드라이버 구 버전의 경우 에어포트에 유선/무선으로 연결된 모든 기기의 내부아이피와 맥주소가 떴다. 하지만 신버전은(6.0이상) 무선 연결 기기만 아이피와 맥주소가 뜨기 때문에 공유기에 직접 유선으로 연결된 NAS는 내부 아이피를 찾을 수 없다.
이는 5.X의 구 버전을 받아서 억지로 설치하면 해결할 수 있는데 여러모로 번거롭고 안정성이 떨어진다. 나아가 Mavericks 부터는 아예 설치가 안 되는 듯했다. 다른 방법을 찾아본다고 고생하지 말고 ip scanner라는 무료 앱을 받아서 찾아내는 것이 제일 간편하다.
실행하면 내부망에 연결된 모든 기기의 아이피와 맥주소가 뜬다. 사진에 보이는 Diskstation의 아이피와 맥어드레스를 복사해 놓으면 된다. 이제 본격적으로 내부아이피를 고정할 차례.
내부아이피 고정방법은 두가지가 있다. 먼저 그 첫 번째인 시놀로지 제어판에서 고정하는 법부터 보자.
시놀로지 제어판에서 네트워크 → 네트워크 인터페이스를 찾아 들어간다. LAN 포트에서 수동 구성 이용을 선택해 주고 ip 주소에 위에서 찾아낸 NAS의 내부아이피를 입력한다. 나머지는 건드리지 않도록 한다. 이 방법을 사용하면 맥주소는 필요 없다. 서브넷 마스크와 점보프레임은 손대지 않는다.
두 번째는 에어포트 익스트림에서 고정하는 법이다. 에어포트 유틸리티를 실행하고, 편집 창에서 네트워크를 선택한다. 이후 DHCP 예약란에서 + 버튼을 눌러 항목을 추가한다.
위에서 찾아낸 맥주소와 아이피를 입력하고 저장을 누른다. 이후 업데이트를 해주면 NAS에 할당된 내부아이피가 고정된다.
둘 중 어느 방법을 써도 상관없다. 나는 두 방법 모두 사용하고 있다. 이제 포트포워딩을 할 차례.
접속하기 전 : #2 사용할 포트포워딩 하기
에어포트 익스트림을 포함한 모든 공유기는 설치하는 순간부터 필수적인 몇몇 포트를 제외한 나머지는 막아버린다. 보안상으로는 이것이 안전하지만, 외부에서 본인 집의 기기에 접속할 때 접속이 막혀버리는 단점이 있다. 따라서 이걸 풀어야 하는데 여기도 마찬가지로 두 가지 방법이 있다. 첫 번째는 DMZ라고 하는, 하나의 아이피에 대한 모든 포트를 개방해서 공유기 설치 전 환경으로 돌아가는 건데 이것은 간편하지만, 보안상의 이유로 추천하지 않는다. 귀찮더라도 일일이 포트를 찾아서 풀어주는 두 번째 방법을 사용하자.
그럼 시놀로지가 사용하는 포트는 무엇이고, 어딜 가야 그 정보를 얻을 수 있을까? 시놀로지 홈페이지에서 목록을 확인할 수 있다. 보면 포트가 무척 많은데, 한 번에 다 설정하려 하지 말고 우선 필수적인 포트만 개방한 후, 나머지는 NAS를 사용해 나가면서 필요할 때 개방하는 게 좋다. 필수 포트는 5000, 5005, 548이다. 이것 세 개만 개방해도 파일전송, 음악/영상 스트림은 문제없다.
마찬가지로 에어포트 유틸리티에서 네트워크로 들어간다. 포트 설정에서 추가버튼을 누른다.
설명에는 헷갈리지 않을 적당한 이름을, 공용 TCP와 개인 TCP에 개방하려는 포트를 적는다. 그리고 개인 IP 주소에 NAS 내부 아이피를 적는다. 위의 스샷의 10.0.1.201은 예시일 뿐이다. 꼭 위의 ipscanner로 찾아낸 값을 적자. 그리고 저장 후 업데이트. 포트 5000, 5005, 548을 이런 방식으로 모두 연다.
그런데 548을 개방하려고 하면 오류메시지가 뜨면서 개방이 안 될 것이다. 맥에서 파일공유로 548포트를 사용하기 때문인데 이를 해제해 줘야 한다. 에어포트 유틸리티에서 디스크를 선택한다. 파일공유활성화 항목이 보일텐데 체크박스를 해제한다. 이후에는 정상적으로 548포트를 개방할 수 있다. 548포트는 맥에서 afp로 NAS에 접속하는데 꼭 필요한 포트이기 때문에 반드시 개방해야 한다.
참고로 나는 파일공유활성화를 체크해제 해도 아무 문제 없었는데 이 기능을 사용할 분들을 위해서 덧붙이면, 위의 사진처럼 개인에 548을 넣고 공용에 2000을 넣으면 파일공유활성화를 하더라도 정상적으로 548포트를 개방할 수 있다고 한다. 단 이때는 접속할 때, 548포트로 하는 것이 아니라 2000으로 하는 것이 차이점. 2000 외에 원하는 포트를 입력해도 무방하다.
대 여섯개의 포트를 멍하게 작업하고 있으면 내부아이피 주소라든가 포트라든가 잘못 입력할 때가 있다. 하나라도 잘못 입력하면 접속이 되지 않으니 주의하면서 입력하자.
이로써 본격적으로 접속하기 전 사전작업은 모두 끝났다. 이제 윈도와 맥에서 어떻게 NAS로 연결하는지 알아보자.
윈도에서 NAS 접속하기
윈도에서 NAS로 외부 접속하는 방법은 크게 두 가지가 있다. 첫 번째는 윈도에서 기본으로 제공하는 네트워크 드라이브 연결을 통해서 접속하기. 이 글을 참조하자. 그런데 이 방법에는 치명적인 문제점이 존재하니 50MB 이상 파일 전송 불가, 음악/영상 스트리밍 불가가 바로 그것이다. 따라서 이 방법은 권장하지 않는다. 1
두 번째 방법은 프로그램을 이용하는 것이다. 넷드라이브라는 프로그램인데 개인 사용자는 무료로 받을 수 있다. 여기에서 프로그램을 내려받고 설치 후 실행한다. 하지만 최근 넷드라이브가 2.0으로 판올림 되면서 쓸데 없는 기능만 잔뜩 붙어 불만인 사람이 많다. 가벼운 버전을 원한다면 아래의 링크로 구 버전을 설치하자.
왼쪽 아래의 New Site를 누르면 추가할 수 있다. Site name에 적절한 이름을 넣고 Site IP or URL에 시놀로지 DDNS 주소를 넣는다.(xxx.synology.me 혹은 xxx.iptime.org 등) 절대 내부아이피를 넣지 말자. 내부 접속은 되지만 외부 접속은 안된다. 또한 구체적으로 NAS 내의 어느 폴더인지 정해줘야 한다. 만약 video에 연결한다면 xxx.synology.me/video 이렇게. 만약 특별히 폴더를 지정하지 않으면 NAS의 ROOT 폴더로 접속이 된다.
Server Type에는 WebDav를 선택해주고 Port는 5005로 잡아준다. Drive 알파벳은 적절하게 선택해주고 아래에 시놀로지 NAS의 아이디와 비밀번호를 입력한다. 그리고 밑에 두 개의 체크박스를 모두 체크하면 윈도 켤때 마다 내장하드처럼 자동으로 NAS가 붙어서 편리하다.
그리고 Advanced 버튼을 눌러서 인코딩을 UTF-8로 해야지만 한글이 정상적으로 출력된다.
마지막으로 화면 왼쪽 위 톱니바퀴 모양의 Option에 들어가서 첫 번째 체크박스는 해제하고 세 번째 체크박스는 체크한다. 이상이 윈도에서 NAS에 접속하는 방법이다. 이제 맥에서 접속하는 법을 알아보자.
맥에서 NAS 접속하기
맥에서도 윈도에서처럼 NAS에 접속하는 방법은 크게 두 가지이다. 파인더에서 Command+K를 누르면 서버에 연결 창이 뜨는데 서버주소에 afp://을 집어넣느냐 http://를 집어넣느냐로 나뉜다. 될 수 있으면 afp로 접속하도록 한다. http보다 안정적이며 빠르고 무엇보다 http는 한글파일을 읽을 수 없기 때문이다.
위의 사진처럼 afp://나스DDNS주소 를 입력한다. 여기까지만 입력하면 연결을 누를 때 NAS의 어느 폴더를 불러올지 물어보는 창이 뜬다. 만약 afp://나스DDNS주소/폴더 까지 입력하면 해당하는 폴더로 바로 접속할 수 있다. 예) video, photo, music 등. 양쪽 모두 작동하니 마음에 드는 방식으로 설정한다. 다만 아래에서 설명할, 맥 시동시 자동으로 NAS가 붙게 하려면 폴더까지 입력해야 한다.
참고로 원칙은 afp://나스DDNS주소:548 이렇게 포트를 지정해줘야 한다. 하지만 위에서 포트포워딩을 바르게 설정해 놓았으면 포트를 지정하지 않아도 잘 접속 된다. 단, 548포트를 임의로 2000포트 등으로 변경한 경우 2000을 직접 지정해야 한다. 또한, 맥이나 NAS에서 방화벽을 설정해 놓았으면 풀어줘야 하는데 기본설정으로는 방화벽이 해제되어 있으므로 일부러 건드린 적이 없다면 신경 쓰지 않아도 된다.
이제 윈도에서도 맥에서도 NAS 외부접속이 가능하다. 마지막으로 한 가지가 남았다. 맥에서도 윈도에서와같이 맥 시동 시 NAS가 자동으로 붙도록 할 수 있다. 이 기능이 왜 필요한지 궁금해하는 분들도 있을 텐데 나는 iTunes 음악파일을 컴퓨터가 아닌 NAS에 저장해 놓았다. 이때 맥 부팅 시 NAS Music 폴더가 자동으로 붙도록 해 놓으면 매번 서버연결 하는 작업을 하지 않아도 되기에 무척 편리하다.
응용프로그램 → 유틸리티 → AppleScript 편집기를 실행한다. 새로운 도큐먼트를 누르고 빈 란에 아래 내용을 붙여 넣는다. 따옴표도 넣어야 한다.
delay 20
try
mount volume "afp://나스DDNS주소/폴더" as user name "아이디" with password "비밀번호"
end try
end tell
NAS 주소와 아이디, 비밀번호는 각자 NAS의 것을 넣는다. 그리고 delay 20이라는 부분이 있는데 이는 맥 부팅 후 몇 초 있다가 NAS 연결을 시도할지를 의미한다. 20이면 20초. 너무 적게 설정하면 맥 시동 후 아직 와이파이가 잡히지도 않았는데 NAS 접속을 시도해서 오류가 나고 스크립트가 멈춘다. 물론 NAS 연결도 실패. 나는 20초가 적절했다. 만약 본인의 맥이 유선으로 인터넷 연결이 되어있다면 저 시간을 좀 줄여도 될 것이다.
이제 만든 스크립트를 적당한 곳에 '스크립트'가 아닌 응용 프로그램으로 저장하고 환경설정 → 사용자 및 그룹에서 현재 사용자를 선택한 후 로그인 항목으로 이동한다. + 버튼을 눌러 방금 저장한 애플스크립트를 선택한 뒤 체크박스를 체크한다. 이제 다음 부팅 때부터 설정한 NAS 폴더가 자동으로 붙는다.
이상이 NAS 외부접속에 대한 모든 정리의 끝이다. 인터넷을 뒤져봐도 이것 찔끔, 저것 찔끔 나와 있는 게 대부분이고 어떨 때는 자잘한 부분에서 에러가 나 접속이 성공적으로 안 되었다. 오랜 시간에 걸친 자료 검색과 본인 삽질을 바탕으로 성공적인 외부접속 방법을 올리니 필요한 분들은 참조하면 좋겠다. 끝.
- 레지스트리 수정으로 용량을 늘려줄 수는 있는데 잘 안되며 불안정하고 제한적이다. [본문으로]