虛擬私有網路 tunnel Ipsec 路由器 交換器 VPN 協定

IPSec Tunnel連結雙路由器 一端非固定IP也能架VPN

2014-06-25
GRE Tunnel雖然簡單易用,但考量到現實環境的複雜性,例如大陸的封網或是在一端Office只有浮動IP的狀況下,還是會有使用IPSec Tunnel的需要,因此本文將對於使用IPSec建立Site-To-Site VPN做一個簡單的介紹。
由於Main Office的IP是固定的,因此可以直接使用Peer IP的設定方式。設定isakmp的key是my_secret(與Main Office相同),並指定其IP為61.59.116.2。若以白話文來解釋,就是當要連線至61.59.116.2時需使用key:my_secret。

接著,指定使用hostname來做身分驗證(與Main Office的設定需對應)。


isakmp的相關設定完成後,接著設定ipsec的部分。先設定它的transform-set,設定其名稱為transformset,在ESP部分則採用AES做加密,使用MD5做身分驗證。同樣地,必須與Main Office一致。


接著,設定crypto的map,名稱為ipsec-map,序號為1,種類為ipsec-isakmp。指定其Peer IP為61.59.116.2,transform-set是transformset,並指定ACL為101。


接著,檢視一下ACL 101的相關設定。


接下來,指定ACL 101的內容為192.168.3.0/24往所有IP,並開啟Log功能以便之後觀察。

由於Branch Office的路由器是專門用來建立VPN,因此針對目的IP的部分不再指定。若有其他需求,例如同時提供上網功能,就必須自行指定其目的IP,例如在本例中可以設定為:


最後,同樣地在對外的Interface上套用此Crypto Map。


在套用之後,會出現以下訊息,代表ISAKMP已啟用。


建立IPSec連線

建立IPSec連線時,只要帶192.168.3.1的IP去Ping 192.168.2.1即可,因為此行為符合先前設定的ACL 101,路由器就會套用Interface Dialer0上的crypto map:ipsec-map,試圖建立IPSec連線。


在撥號過程中,由於設定ACL 101需做Log,因此亦會有如下的Log產出。


當以192.168.3.1的IP去Ping 192.168.2.1的ICMP封包能順利抵達時,IPSec連線就已成功建立了。

可以使用show crypto session指令來查看相關的資訊。在IKE SA部分,可看出Branch Office建立IPSec連線時使用的IP是203.67.230.2,而Main Office則為61.59.116.2。

另外,從IPSEC FLOW欄位中可以看出其允許192.168.3.0/24的IP往任何IP傳送,與之前設定的ACL 101相符。


此外,也可透過show crypto isakmp sa及show crypto ipsec sa指令來查看更詳細的資訊。相關說明可參考筆者之前的介紹,在此不再贅述。

然後,回到Main Office做show ip route的動作。在此可看出,當IPSec連線建立後,路由器自動建立了往192.168.3.0/24的靜態路由,其next hop是Branch Office對外的Public IP:203.67.230.2。


IPSec加密驗證

在Main Office準備一台路由器模擬Web Server,設定其IP為192.168.2.2,開啟其網頁伺服器功能,並在Branch Office的電腦開啟此網頁,如圖2所示。


▲圖2 從Branch Office開啟Main Office的網頁。

接著,使用Wireshark來側錄分析其封包,可以看出PPPoE及PPP的Header,並且在IPv4的Src及Dst可以看出分別為Branch Office及Main Office的Public IP。


追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!