Networking

基於 IPSec 的 MikroTik GRE

  • August 29, 2016

我正在嘗試在兩個 MikroTik 設備之間建立一個 GRE over IPSec 隧道。當我嗅探 WAN 介面時,似乎一切正常,我可以清楚地看到理論上我不應該看到的 GRE 數據包。

我在這上面花了幾天時間,我對缺少的東西一無所知。

1.1.1.1 是數據中心 WAN,而 2.2.2.2 是家庭 WAN。

路由器 1:

/interface gre
add allow-fast-path=no !keepalive local-address=1.1.1.1 name=\
   gre-tunnel-home remote-address=2.2.2.2

/ip ipsec peer
add address=2.2.2.2/32 dh-group=modp8192 enc-algorithm=blowfish \
   hash-algorithm=sha512 lifetime=30m local-address=1.1.1.1 \
   nat-traversal=no proposal-check=strict secret=secretcode

/ip ipsec policy
add dst-address=2.2.2.2/32 proposal=proposal1 sa-dst-address=2.2.2.2 \
   sa-src-address=1.1.1.1 src-address=1.1.1.1/32 tunnel=yes

路由器 2:

/interface gre
add allow-fast-path=no !keepalive local-address=2.2.2.2 name=\
   gre-tunnel-datacenter remote-address=1.1.1.1

/ip ipsec peer
add address=1.1.1.1/32 dh-group=modp8192 enc-algorithm=blowfish \
   hash-algorithm=sha512 lifetime=30m local-address=2.2.2.2 \
   nat-traversal=no proposal-check=strict secret=secretcode

/ip ipsec policy
add dst-address=1.1.1.1/32 proposal=proposal1 sa-dst-address=\
   1.1.1.1 sa-src-address=2.2.2.2 src-address=2.2.2.2/32 \
   tunnel=yes

不要在您的 IPSec 策略中使用隧道模式。

這就是導致 Torch 顯示 GRE 數據包的原因。

由於您正在加密整個 GRE 連接,因此不使用隧道模式將同樣安全。無論如何,通過隧道的數據包都將被加密,因此沒有人能夠看到誰在與隧道內的誰通信。

對於嗅探流量的第 3 方來說,無論隧道模式如何(即:1.1.1.1 通過協議 50-ipsec 與 2.2.2.2 通信 - 嘗試使用隧道模式隱藏此資訊沒有任何好處),它都幾乎相同。

此外,您將擁有更少的數據包成本。

來自Mikrotik 維基

隧道模式

在隧道模式下,原始 IP 數據包被封裝在一個新的 IP 數據包中,從而保護 IP 有效負載和 IP 標頭

引用自:https://serverfault.com/questions/799665