這裡將採用以GNU GPL授權條款發行的SoftEther VPN,安裝在兩部Raspberry Pi 2 Mode B單板電腦上,分別擔任VPN Server和VPN Bridge的角色,來建立Site to Site L2 Bridge VPN,讓不同端點使用同一個LAN網段。
本文將使用SoftEther來建立Site to Site VPN,示範如何建立L2 Bridge VPN。簡單來說,L2 Bride VPN可以讓不同端點使用同樣的LAN網段,而L3 IP Routing VPN的不同端點必須使用不同的LAN網段。各有其利弊,要採用哪一種架構須視管理者的需求而定。
L2 Bridge VPN測試架構圖
本次的測試架構將如圖1所示,在台北及台南利用SoftEther來建立Site to Site的L2 VPN。在兩台SoftEther VPN設備之間使用Cascade的指令加以串接。
|
▲圖1 L2 Bridge VPN測試架構圖。 |
這麼做的目的是為了讓兩地的使用者可使用相同的網段:192.168.1.0/24互相連接,192.168.1.100的使用者可以直接存取192.168.1.80的網頁伺服器。
在此架構中要補充說明的是,SoftEther不一定要擔任防火牆的角色,它也可以單純地放在內網中,只要它可以透過防火牆或IP分享器等設備連接上Internet,就能夠作為VPN的Gateway。
由於採取Layer 2的架構,因此廣播封包能彼此互通,也因此Broadcast Domain會隨之擴大,將造成封包的碰撞增加,若電腦的數量太多,甚至會影響網路效能。因此,Layer 2 VPN大多使用在電腦數量較少而單純的網路架構中。
但是,也由於兩地屬於同一個Broadcast Domain,因此一些依賴廣播的協定也可以互相透通。在本例之中,將會示範如何讓在台南分公司的電腦透過台北的DHCP Server來取得同一個網段:192.168.1.X的IP網段。
前置作業準備
在開始動手之前,必須準備好以下的軟硬體:
‧硬體: Raspberry Pi 2 Mode B兩部,分別擔任VPN Server及VPN Bridge的角色。除了內建的網路卡(eth0)之外,均外接一塊USB網路卡,作為連接公網之用。
‧作業系統: Raspbian Jessie Lite,版本為2017-06-21。
‧SoftEther VPN Server:4.22, Build 9634
‧SoftEther VPN Bridge:4.22, Build 9634
這裡已經事先將兩部Pi安裝Raspbian Jessie Lite,並完成校時及鍵盤設定。
下載及安裝VPN Bridge
先選擇一部Pi安裝VPN Bridge,目前SoftEther VPN相關軟體均存放在其官方網頁(http://www.softether-download.com/files/softether/)上。開啟網頁後,點選「Linux」目錄中的「SoftEther_VPN_Bridge」,再選擇「32bit_-_ARM_EABI」,此為適用於Pi的版本。
在此使用最新的4.22版,將之下載為vpnbridge.tar.gz,指令如下:(之後的操作示範均已提權為root)
因為檔案網址較長不易輸入,建議透過瀏覽器下載檔案,再利用PieTTY之類的SSH Client,將檔案拖曳進該Client軟體頁面,便可直接以scp的檔案複製方式,將檔案複製至Pi中。或者,以SSH Client登入Pi之後,再貼上連結進行檔案的下載作業。
解壓縮及編譯安裝
將下載的檔案解壓縮,並刪除原壓縮檔: