一、 基础环境
使用VmWare虚拟两台Linux机器。CentOS 7,Linux内核如下:
4.5.3-1.el7.elrepo.x86_64
如果内核版本太低,是不支持VxLan的。可以使用一下命令进行内核升级

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

  1. rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
  2. yum --enablerepo=elrepo-kernel install  kernel-ml-devel kernel-ml -y

升级后重启选择新内核。

二、 组网图

两台虚机VM1和VM2,eth2为虚机上的网卡。vxlan10是创建的虚拟网卡,用来处理vxlan。veth1和veth0是创建的一对虚拟口。br-vx是创建的网桥。
三、 配置命令
VM1:

  1. #创建网桥br-vx并使其up
  2. brctl addbr br-vx
  3. ip link set br-vx up
  4. #增加一个类型为vxlan,vni-id为100的,名字为vxlan10的虚拟网卡,指明对端地址为192.168.233.190,
  5. #(此地址为VM2的eth2的地址)出接口为本端的eth2
  6. ip link add vxlan10 type vxlan id 100 remote 192.168.233.190 dstport 4789 dev eth2
  7. ip link set vxlan10 up
  8. #把vxlan10加入到网桥中
  9. brctl addif br-vx vxlan10
  10. #创建一对虚拟网卡,设置其中的veth0的地址为192.167.1.6,并把veth1绑到网桥br-vx中。从veth0
  11. #发出的报文将会发给veth1,由于veth1在网桥中,会被进入到vxlan10中通过vxlan隧道发送给对端
  12. ip link add type veth
  13. ifconfig veth0 192.167.1.6/24 up
  14. ifconfig veth0 mtu 1450
  15. ifconfig veth1 up
  16. ifconfig veth1 mtu 1450
  17. brctl addif br-vx veth1

VM2:

  1. #创建网桥br-vx并使其up
  2. brctl addbr br-vx
  3. ip link set br-vx up
  4. #增加一个类型为vxlan,vni-id为100的,名字为vxlan10的虚拟网卡,指明对端地址为192.168.233.180,
  5. #(此地址为VM2的eth2的地址)出接口为本端的eth2
  6. ip link add vxlan10 type vxlan id 100  remote 192.168.233.180 dstport 4789 dev eth2
  7. ip link set vxlan10 up
  8. #把vxlan10加入到网桥中
  9. brctl addif br-vx vxlan10
  10. #创建一对虚拟网卡,设置其中的veth0的地址为192.167.1.7,并把veth1绑到网桥br-vx中。从veth0
  11. #发出的报文将会发给veth1,由于veth1在网桥中,会被进入到vxlan10中通过vxlan隧道发送给对端
  12. ip link add type veth
  13. ifconfig veth0 192.167.1.7/24 up
  14. ifconfig veth0 mtu 1450
  15. ifconfig veth1 up
  16. ifconfig veth1 mtu 1450
  17. brctl addif br-vx veth1

四、 验证
搭建好后,可以在VM1上使用ping命令来验证:VM1: ping 192.167.1.7,通过tcpdump抓报文看结构。

参考文章:http://blog.csdn.net/xingyeping/article/details/51353321

使用CentOS Linux Bridge搭建Vxlan环境的更多相关文章

  1. CentOS linux系统搭建LAMP环境

    准备工作: 1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables-A INPUT -m state –state NEW -m tcp -p tcp –dpo ...

  2. linux下搭建lamp环境以及安装swoole扩展

    linux下搭建lamp环境以及安装swoole扩展   一.CentOS 6.5使用yum快速搭建LAMP环境 准备工作:先更新一下yum源  我安装的环境是:apache2.2.15+mysql5 ...

  3. 理解 neutron(15):Neutron Linux Bridge + VLAN/VXLAN 虚拟网络

    学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GR ...

  4. 基于CentOS与VmwareStation10搭建hadoop环境

    基于CentOS与VmwareStation10搭建hadoop环境     目 录 1. 概述.... 1 1.1. 软件准备.... 1 1.2. 硬件准备.... 1 2. 安装与配置虚拟机.. ...

  5. Linux 下搭建 Kafka 环境

    Linux 下搭建 Kafka 环境 作者:Grey 原文地址: 博客园:Linux 下搭建 Kafka 环境 CSDN:Linux 下搭建 Kafka 环境 环境要求 操作系统:CentOS 7 下 ...

  6. Linux 下搭建 Hadoop 环境

    Linux 下搭建 Hadoop 环境 作者:Grey 原文地址: 博客园:Linux 下搭建 Hadoop 环境 CSDN:Linux 下搭建 Hadoop 环境 环境要求 操作系统:CentOS ...

  7. Linux 下搭建 Hive 环境

    Linux 下搭建 Hive 环境 作者:Grey 原文地址: 博客园:Linux 下搭建 Hive 环境 CSDN:Linux 下搭建 Hive 环境 前置工作 首先,需要先完成 Linux 下搭建 ...

  8. Linux下搭建PHP环境

    转载于: http://www.uxtribe.com/php/405.html 该站下有系列PHP文章. 在Linux下搭建PHP环境比Windows下要复杂得多.除了安装Apache,PHP等软件 ...

  9. Java学习心得之 Linux下搭建Java环境

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Java学习心得之 Linux下搭建Java环境 1.前言2.JDK安装3.配置环境变量4. ...

随机推荐

  1. git gui提交无法获知你的身份 20

    刚刚学习,请说的详细一些,谢谢 callct | 浏览 3382 次 我有更好的答案 1条回答 你没有定义你的名字和邮箱.你打开git console/shell, #输入下面两句,并且替换成你的名字 ...

  2. Redis 数据结构与内存管理策略(下)

    Redis 数据结构与内存管理策略(下) 标签: Redis Redis数据结构 Redis内存管理策略 Redis数据类型 Redis类型映射 Redis 数据类型特点与使用场景 String.Li ...

  3. ios VS android

    本来是学习IOS的,但是最近接到的是有关于安卓的项目,害怕弄混,所以在这个技术博客里写一下对比. IOS                                                 ...

  4. c#目录以及子目录下图片批量缩放,像素不变,图像大小改变

    采用多线程,整体效果 图像根目录黏贴或者手工选择,点击开始,进行目录底下图片筛查.采用多线程,点击开始按钮,开启线程,这样UI不会卡住 private void button2_Click(objec ...

  5. 序列化和Json

    实现了python与python程序之间内存的交互 常用场景: 1 把内存的数据写到磁盘 2 socket只能传字符串,二进制,通过序列化 ============================== ...

  6. underscore.js 源码阅读 准备

    本次阅读是初次阅读源码,参考了以下几篇文章: https://github.com/hanzichi?language=javascript&page=5&tab=stars http ...

  7. JavaScript ES6 let、const

    在ES6中,增加了2个声明变量的关键字:let 和 const.在这里将详细介绍let与var的区别.Babel对let的处理以及const的简单使用. 1. let 在ES6规范中增加了 let 关 ...

  8. junit4X系列--Runner解析

    前面我整理了junit38系列的源码,那junit4X核心代码也基本类似.这里我先转载一些关于junit4X源码解析的好文章.感谢原作者的分享.原文地址:http://www.blogjava.net ...

  9. Linux实践篇--linux软件的安装,更新与卸载

    本文出处:http://www.cnblogs.com/lhj588/archive/2012/07/17/2595328.html,感谢作者分享. Linux常见的安装为tar,zip,gz,rpm ...

  10. java编程中常用英语单词

    JAVA 省略语与名词解释 -------------------------------- J2EETM----JavaTM 2PlatformEnterpriseEdition : J2EE(JA ...