Linux

Linux GRE - ip 隧道與 ip 連結

  • September 26, 2019

在配置隧道(例如 GRE、IPIP 或 VXLAN)時,有人可以解釋一下 linux ip tunnel 和 ip link 命令之間的區別嗎?

我可以看到我可以配置 GRE 隧道,例如,通過兩種方式:

  1. ip 連結添加名稱 gre1 類型 gre …
  2. ip 隧道添加 gre1 模式 gre …

在創建的 Linux 資源、性能等方面,兩者之間有什麼區別嗎?其中一種方式是否過時?

乾杯。

iproute2 的兩個命令都與同一個核心互動,除了這種通信之外,它們不執行任何操作,這實際上意味著您應該期望在性能方面沒有差異。

相關送出 ip link中可以看出,它使用了更新鮮的核心介面——rtnl_link相比ip tunnel:“……

這是通過“ip link”命令訪問的。之前的隧道配置界面“ip tunnel”保持原樣,應該保留以與舊核心兼容。…

……”

(很抱歉輸入答案而不是應該是評論,評論太長而無法容納……)

前段時間我和你有同樣的問題,所以我閱讀了iproute2. 正如 poige 所說,ip link使用與ip tunnel. ip tunnel使用 ioctl SIOCGETTUNNEL,SIOCADDTUNNEL等,同時ip link使用rtnl_link介面。

這會稍微改變界面的模式:

$ sudo ip tunnel add ipiptun mode ipip local 10.3.3.3 remote 10.4.4.4 ttl 64 dev eno1
$ sudo ip link add ipiptun2 type ipip local 10.6.6.6 remote 10.7.7.7 ttl 64 dev eno1 #curiously the mode is any/ip here

   ipiptun: ip/ip remote 10.4.4.4 local 10.3.3.3 dev eno1 ttl 64
   ipiptun2: any/ip remote 10.7.7.7 local 10.6.6.6 dev eno1 ttl 64

請注意,現在有一種更新的創建隧道的方法,即使用輕量級路由隧道。在這裡參考我的問題,試圖理解它們: Linux 輕量級隧道

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