vxlan报文 wireshark_Linux VXLAN

VXLAN协议VXLAN是Virtual eXtensible Local Area Network的缩写,RFC 7348的标题“A Framework for Overlaying Virtualized Layer 2 Networks over Layer 3 Networks”,说明了VXLAN是一个在传统Layer 3网络上架设出来的Layer 2 overlay网络。RFC Abst...
摘要由CSDN通过智能技术生成

VXLAN协议

VXLAN是Virtual eXtensible Local Area Network的缩写,RFC 7348的标题“A Framework for Overlaying Virtualized Layer 2 Networks over Layer 3 Networks”,说明了VXLAN是一个在传统Layer 3网络上架设出来的Layer 2 overlay网络。RFC Abstract如下:

This document describes Virtual eXtensible Local Area Network (VXLAN), which is used to address the need for overlay networks within virtualized data centers accommodating multiple tenants.  The scheme and the related protocols can be used in networks for cloud service providers and enterprise data centers.  This memo documents the deployed VXLAN protocol for the benefit of the Internet community.

在下面的场景中有两服务器,由三层物理网络连接。这两台服务器可能在同一个机架上,或者在不同的机架上,亦或在物理距离相距甚远的不同数据中心里。有4个VxLAN overlay网络,标识分别为VNI 22, 34, 74, 98。来看看Server 1上的虚拟机VM1-1和Server 2上的虚拟机VM2-4,它们属于相同的标识为VNI 22的VXLAN overlay网络。虚拟机并不知道overlay网络,也不知道VxLAN报文的封装和解封过程,因为这些过程都由物理服务器上的VTEP完成。看到这里,即使你没听说过VTEP这个概念,也大概知道它的作用了吧,VTEP (VXLAN Tunnel End Point), An entity that originates and/or terminates VXLAN tunnels,VTEP负责VxLAN的封装和解封装。

这种部署方法是基于物理机能够感知VXLAN协议,从而可以作为VxLAN的封装和解封点(VTEP) 。另外一种部署方法是把VTEP设备的位置放在网络设备中,比如交换机,可以作为一个VXLAN网络来负责VxLAN报文的封装和解封。在数据中心的部署中,物理机作为VTEP的部署方式能更好地和物理网络设备解耦,并且更加方便运维。

Linux上对VXLAN的支持

快速搭建和理解VXLAN的方法之一就是利用Linux。从内核3.7版本开始,Linux就开始支持VXLAN。到了内核3.12版本,Linux对VXLAN的支持已经完备,支持单播和组播,IPv4和IPv6。利用man查看ip的link子命令,可以查看是否有vxlan type,如下:

$ man ip-link

搜索vxlan,可以看到如下描述,可以利用ip link add增加类型为VXLAN的link。

VXLAN Type Support

For a link of type VXLAN the following additional arguments are supported:

ip link add DEVICE type vxlan id VNI [ dev PHYS_DEV ] [ { group | remote } IPADDR ] [ local { IPADDR | any } ] [ ttl TTL ] [ tos TOS ] [ dstport PORT ] [ srcport MIN

MAX ] [ [no]learning ] [ [no]proxy ] [ [no]rsc ] [ [no]l2miss ] [ [no]l3miss ] [ [no]udpcsum ] [ [no]udp6zerocsumtx ] [ [no]udp6zerocsumrx ] [ ageing SECONDS ] [ maxad‐

dress NUMBER ] [ gbp ]

下面的实验在如下环境中完成:

操作系统版本:CentOS Linux release 7.4.1708 (Core)

内核版本:3.10.0-693.2.2.el7.x86_64

云虚机vm1 eth0网络接口IP 172.31.0.106,云虚机vm2 eth0网络接口IP 172.31.0.107

场景1: 最简单的点对点VXLAN

创建简单的点对点VXLAN环境非常简单。如下图所示,只需要在两个机器(物理机或者虚拟机都可以,本实验中是云上的虚拟机环境)中各创建一个vxlan类型的网络接口即可,vxlan类型的接口vxlan1可以作为上文中提到的VTEP。

在上面的环境中,注意我们将vxlan网络接口配置上IP地址,在10.0.0.0/24网段内。在IP地址分配后,Linux系统的路由表就会创建一条路由,去往10.0.0.0/24网段的报文走网络接口vxlan1出去。vm1上去往10.0.0.0/24的报文,在vxlan1上会做VXLAN封装

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值