VXLAN隧道有握手和心跳吗?数据面压根没有会话这回事

看到一个很典型的问题:VXLAN 隧道有握手和心跳过程吗?提问的人多半是从 TCP、IPSec 那里带来的惯性——隧道嘛,两端总该先握个手、平时跳个心跳确认对方还活着。直接回答:VXLAN 的数据面没有握手,也没有心跳,一条都没有。这不是偷工减料,是它的设计定位本来如此。

数据面:无状态的 UDP 封装转发

VXLAN 干的事,是把二层的以太网帧装进 UDP 包里(常用端口 4789),从一端 VTEP 封好发出去,另一端 VTEP 收到解开、按内层 MAC 转发。整个转发过程不建立连接、不维护会话、不确认、不重传——隧道两端甚至不互相「知道」对方存在。原帖问有没有握手和心跳,答案就是没有;找不到「隧道状态」可看,是因为本来就没有这个状态。

隧道靠什么维持?靠 underlay 路由可达

所以正确的问法不是「心跳在哪」,而是「控制面在哪」。VXLAN 自己只管封装,隧道通不通取决于底层 IP 网络(underlay)的路由可达:underlay 通,隧道就通;underlay 断,隧道无声无息地断——没有告警,因为没有人负责告警。这也是 VXLAN 排障的第一站永远在 underlay:查路由、查可达性,而不是找一条「隧道心跳」去看。

想要会话和控制面?那是 EVPN 的事

大规模组网里,确实会给 VXLAN 配控制面——典型就是 EVPN,用 BGP 在 VTEP 之间传递 MAC 和 IP 的可达信息,这时候才有邻居会话、才有状态可看、才有东西可以监控。但要注意:EVPN 是可选加装件,不是 VXLAN 自带的。小规模静态配置的 VXLAN 环境,从上电到下电都是无状态的,指望它像 IPSec 那样给你一个会话状态,方向就找错了。

一句话对照收口

和 GRE 一样,VXLAN 属于「无状态隧道」这一类;带握手、带协商、带加密会话的是 IPSec 那一类。技术没有高下,但排障思路完全不同:无状态隧道不通,先查底层路由;有状态隧道不通,才先看会话协商。知道「VXLAN 没有心跳」本身就是一条排障信息——等着日志里出现隧道断开告警的人,往往会错过处置故障的最早窗口。

企业存储选型参考|贵州诚鑫致达

做海量监控接入与长期归档,群晖机型参考:HD6500 · RS3621xs+ · DS2422+。需要选型建议或上门评估,搜「诚鑫致达」即可找到我们。