![[討論] Synology QuickConnect 連線相關討論](http://attach.mobile01.com/attach/201403/mobile01-8f3722ae1a5f329186979badde0d3dd0.jpg)
(圖片取自官網)
QuickConnect 服務內容
此處擷取原廠說明, QuickConnect 服務的優點如下:
![[討論] Synology QuickConnect 連線相關討論](http://attach.mobile01.com/attach/201403/mobile01-e11c9b17f2706d7a181973221d70c9a0.jpg)
簡單的說, 以前欲利用手機 App or Browser 存取 NAS 上的資源, 必須在 firewall 上面設定 port forwarding or Virtual Server, 還要去記憶一組 hostname or IP address, 而現在只要利用一組 user 自行設定的 QuickConnect ID, 就可以和你家中或公司中的 NAS 連線.
另外在使用手機 APP 連線 NAS 時, 有時候我們人在外面, 此時要輸入 Public IP or 網址, 而人在家中或公司中, 又要改輸入 NAS LAN IP 去連線, 明明是同一台 NAS, 為何人在公司外和在公司內要輸入不同的 IP 呢? 同樣的 QuickConnect Service 也可以用來解決此一問題.
QuickConnect 設定方式
在此處必須承認, 小弟很少使用 Synology QuickConnect 服務, 畢竟之前都早已經習慣自己在 firewall 上面建立 port forwarding, 而連線的網址也都直接透過 DDNS or 自行申請 domain name 來達成, 所以在之前並沒有太多機會去使用 QuickConnect 服務, 當然此處也就當做學習的機會, 看看它到底有何神奇之處.
此處的設定是以 DSM 5.0 版本為主. 登入 DSM > 控制台 > QuickConnect
此處的 QuickConnect ID 由 User 自行指定.
![[討論] Synology QuickConnect 連線相關討論](http://attach.mobile01.com/attach/201403/mobile01-33442173d57eae0d7dbc2a170dfe42e8.jpg)
日後欲存取此台 NAS, 只要於瀏覽器輸入 http://QuickConnect.to/your_quickconnect_id 即可.
而安裝在手機上面的 DS apps, 例如 DS Photo, DS Audio, DS File..., 也能夠直接利用 QuickConnect ID 來連線, 當然原本使用 IP or hostname 的連線方式還是可以使用, 但透過自行設定的 QuickConnect ID, 達到更容易記憶的目的.
QuickConnect 連線方式研究
其實興起小弟去開始使用 QuickConnect 的主因之一, 是不少網友提及透過 QuickConnect 連線後, 其連線速度明顯比直接存取 NAS 慢, 此處也就當做學習筆記, 一方面學習一方面紀錄自己所遇到的問題.
有關遠端存取 NAS 部份, 大家可以參考 derliang 兄所寫的這篇經典 [教學]為何外界無法跟區網內的NAS互通?, 此處就不再多做有關 firewall 及 IP 分享器的設定說明.
但在 DS NAS 上面有些基本的設定, 此處還是須提及. 在此處的實測中, 小弟於 DS NAS 上面開啟 5000 & 5001 連線 Port. (Tips:為了安全的理由,建議還是修改遠端存取的 port number)
![[討論] Synology QuickConnect 連線相關討論](http://attach.mobile01.com/attach/201403/mobile01-10c350f2ccd3736dd826da85af9c777f.jpg)
測試用的 NAS 為 DS1512+ & DS213j 兩台, DSM版本為最新的 5.0 版. 而測試的兩點都是使用中華電信光世代線路. QuickConnect ID 以 dsnas 為例.
實測一: client 端可以直接連線至 DS NAS
這裡所說的情況是, client 和 PC NAS 可能在同一個網段內, 或者是雖不在同一個網段, 但透過中間所建立的 VPN tunnel, 或者是 router, 實際上是可以直接連線時, 當 user 於 browser 輸入
http://quickconnect.to/dsnas, QuickConnect service 首先向 QuickConnect Server 查詢該 id 所對應的 WAN & LAN IP, 發覺透過 LAN IP 即可連線, 此時將自動 redirect 至以 LAN IP 為首的網址. 即透過 LAN IP 連線.
TIPS: 即使 client 和 NAS 不在同網段, 但透過已建立的 VPN or Router 路由可以直達, 就會直接以 LAN IP 連線.
實測二: 於 firewall 上設定 5000 & 5001 port forwarding 到 DS NAS
透過 browser 連線 remote 端的 NAS, 輸入 http://quickconnect.to/dsnas
其實注意一下 browser 的動作, 在連線時 QuickConnect service 其就開始偵測 browser client 端和 NAS 端到底是如何連線的, 是否能直接和 DS NAS 連線?
發現實際連線成功時, 因為在此例, DS NAS 有在 firewall 上面做 port forwarding, 所以 QuieckConnect 直接將連線就導到以 WAN IP 為首的模式, 例如 xxx.xxx.xxx.xxx:5000/webman 即 DSM 首頁.
如果 DS NAS 和 browser 在同一個網段內或 VPN Tunnel 互連呢? 此時一樣在 browser 輸入 quickconnect.to 網址, 可以發現其最後帶出來的 IP 是 NAS 內網 LAN IP, 成為類似 192.168.1.xxx:5000 此種網址.
所以在透過 QuickConnect 連線 NAS 時, 其會很聰明的去偵測 client 和 NAS 之間的連線, 如果可以直達, 那麼就直接連線, 這樣的連線方式, 由於沒有再透過其他中介的 Server 來做 relay, 所以速度上是最快的.
實測三: 於 DS app 上面測試
同前, 我們利用 iPad 上面的 DS Video app, 去連線 remote 端的 NAS, 並播放影片, 再進入本地端的 firewall 擷取封包 (或是查其 NAT tables), 看看到底其如何運作.
同樣的在 DS Video 上直接輸入 remote 端 NAS 的 QuickConnect ID, 小弟本地端是使用 Mikrotoik routerboard, 直接透過 winbox > Tools > Torch 即時的顯示所有 outgoing 連線狀態.
果真如預期的, 同樣的在 DS Video 上, 雖然它使用 QuickConeect ID 方式連線, 但 DS Video 偵測發覺 remote NAS 是可以直接連線的, 所以就直接去存取 NAS 上面的影片播放了.
實測四: Firewall 上不做 5000 & 5001 port forwarding
原本在 NAS 所在的 Firewall 上面, 我們有設定 Port Forwarding, 但此時把它拿掉, 表示此台 NAS 從 Internet 上面, 並無法直接和它連線, 此處主要是模擬 QuickConnect Service 所宣稱不需要透過任何 firewall 的設定, 即能由遠端存取 NAS 上面資源的情況.
同樣的在 browser 輸入 quickconnect.to/dsnas 嘗試連線 NAS, 此時可以發覺 browser 花了較多的時間才出現 DSM 首頁畫面, 的確不需要做任何設定, 同樣能夠連上此台 NAS, 但網址列我們發覺並不是 remote public IP 了, 而是類似:
https://dsnas.tw.quickconnect.to/webman 的網址, 這就說明了, 在無法直達 NAS 時, QuickConnect 採用了類似 relay 的模式來達到 client 和 NAS 之間的連線, 即所有的連線都是透過 QuickConnect Server 來介入.
實測五: DS apps 的實測
同樣的, 此時我們再度使用 iPad 上面的 DS Video 透過 QuickConnect ID 連線此台 NAS, 連線成功後, DS Video 馬上彈出一說明視窗 "您正透過 QuickConnect 服務連線至 DiskStation, 而存取效能可能會因此受到影響, 建議您設定路由器的連接埠轉送以取得較佳的效能"
的確, 透過 QuickConnect Server 做為中介, 其連線模式類似:
client <--> QuickConnect Server <--> NAS
在大多數的情況下, 這樣的連線方式通常比 client 去直連 NAS 慢, 除非在一些很特殊的網路架構下, 例如 client 和 NAS 處在不同的 ISP 或國家, 直接連線的頻寬有時候可能遠低於 Synology QuickConnect Server backbone 頻寬, 此時才會出現透過 QuickConnect Server 連線更 smooth 的情況.
實測六:File Station 檔案分享連結
在 Synology NAS 上提供一快速分享檔案及目錄的方式, 於 DSM > File Station, 於欲分享的檔案或目錄上按右鍵 > 分享檔案連結, 此時系統將產生一網址, 將此網址直接 email 給欲分享對象, 對方即可直接利用 browser 存取你分享之檔案, 而不需為對方特別開立帳號及權限, 此一分享檔案模式可使 User 達到快速分享檔案之目的.
這裡將分別說明 QuickConnect Service 和分享檔案連結之間的關係.
1.未啟用 QuickConnect 服務
在未啟用 QuickConnect Service 時, 快速分享檔案模式將只能透過 port forwarding 連結 NAS, 此時分享檔案連結所產生的網址格式類似如下:
所產生之網址連結和此處設定相關.
![[討論] Synology QuickConnect 連線相關討論](http://attach.mobile01.com/attach/201403/mobile01-0e6cc9737649330b48a94b8a010ec188.jpg)
網址格式類似如下:
![[討論] Synology QuickConnect 連線相關討論](http://attach.mobile01.com/attach/201403/mobile01-42c903611f988732dc2609bc5b0ea055.jpg)
2.啟用 QuickConnect 服務 & 設定 Port forwarding
當在 NAS 上啟用 QuickConnect Service 時, 原本產生的分享檔案連結, 格式變化如下:
![[討論] Synology QuickConnect 連線相關討論](http://attach.mobile01.com/attach/201403/mobile01-7f5ab7f5ad5ffa463d5be41bb7b4cea6.jpg)
網址變成 http://gofile.me/... 的型式, 此時當 client browser 輸入 http://gofile.me/... 分享檔案連結時, 系統偵測到該台 NAS 可以透過 Port forwarding 直連, 所以此時所下載的檔案就不會透過 QuickConnect relay server, 而是直接和 NAS 直接連線並下載, 此模式通常下載的速度也是最快的. (此時下載的傳輸速率完全取決於 client 和 NAS 之間的頻寬而定)
以一個檔案做測試. 傳輸速率約 3MB/sec (此處 NAS 端為中華 100M/40M, client 端為 100M/20M)
![[討論] Synology QuickConnect 連線相關討論](http://attach.mobile01.com/attach/201403/mobile01-8673326d9946788ded7fdbaae6c118c0.jpg)
3.啟用 QuickConnect 服務 & 未設定 Port forwarding
同前測試用的分享檔案連結, 但此時在 NAS 對外的 firewall or IP 分享器, 我們不做 port forwarding, 表示在 Internet 上面的用戶此時並不能直接和 NAS talk, 此時必須仰賴 QuickConnect relay server 做傳輸中介, 我們可以發覺所有的檔案下載連結變成類似
https://twr1.synology.com/tunnel/... 此種格式, 表示此時 QuickConnect 做為 relay server, 以相同檔案做測試, 傳輸效能約 3.6MB/sec.
![[討論] Synology QuickConnect 連線相關討論](http://attach.mobile01.com/attach/201403/mobile01-afa256636ae02ab8d4a5b6dad7e539b3.jpg)
大家是否注意到一個情況, 怎麼透過 QuickConnect relay server 下載的速度竟然比 NAS 直連還快? 這倒不用特別驚訝, Internet 網路狀況千變萬化, 或許此時這台 relay server loading 不重, 再加上可能 Synology NAS realy server backbone 比小弟兩端點直連更快, 才會出現透過 relay server 反而傳輸更快的效果.
加密 or 未加密?
在前面的測試可以發現, 如果不透過 QuickConnect relay server 中介, 資料傳輸是未加密的(此處指的是單純的資料傳輸層次, 並不包括 app or 軟體內部的加密, 因為諸如帳號密碼部份, 在傳輸時, 有可能在 app or software 內就已經先經過加密程序了), 但如果透過 relay server, 可以發覺網址為 https://..., 此時資料傳輸都是透過 SSL 加密.
結語
這只是一篇小小的測試筆記, 但大致看起來, QuickConnect Service 確實起了它的作用, 也符合它所宣稱的功能, 對於網路設定不熟悉的 User, 確實不需要做任何 firewall or IP 分享器的設定, 就可以利用自行設定的 QuickConnect ID 和 NAS 連線, 並存取上面的資源, 而對於進階 User, 也可以透過 Port forwarding 的設定, 使得連線的效能上可以比透過 relay server 更快速, 至於 QuickConnect Service 也很 smart 的自動偵測網路的架構並採取最佳的方式來連線.
至於未來 QuickConnect 尚可以加強的部份, 是在 video streaming 部份, 現有的 relay 服務或許可以滿足大部份檔案及音樂分享上, 但在播放影片時常常需要更大的頻寬, 現階段透過 relay server 對於較高碼率的影片是無法播放的很平順的, 或許日後再加上 P2P 穿越技術, 可以突破此處限制.
相關資源
QuickConnect, Quickly Explained
如何確保 Synology NAS 在網際網路的安全性
強制透過 QuickConnect relay 做檔案分享加密 (HOPE000兄提供)

































































































