vlan:https://www.cnblogs.com/du-z/p/10802786.html

trunk:https://www.cnblogs.com/du-z/p/10804773.html

KVM网络模式--Bridge网桥

网桥架构图

Linux Bridge : 基本原理就是创建一个桥接接口 br0 ,在物理网卡和虚拟网络接口之间传递数据,此种方式host却可以和vm联通。

vim /etc/sysconfig/network-scripts/ifcfg-eth0 

...
TYPE=Ethernet
NAME=eth0
DEVICE=eth0
ONBOOT=yes
BRIDGE=br0
...
vim /etc/sysconfig/network-scripts/ifcfg-br0 

...
TYPE=Bridge
NAME=br0
DEVICE=br0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.137.134
PREFIX=24
GATEWAY=192.168.137.2
DNS=8.8.8.8
DNS2=114.114.114.114
...

brchl 网桥管理命令

## yum install bridge-utils -y
##brctl show 查看网桥配置 [root@localhost ~]# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.000c294ea15a no ens33
virbr0 8000.525400eb441b yes virbr0-nic ##brctl 命令帮助手册 [root@localhost ~]# brctl --help
Usage: brctl [commands]
commands:
addbr <bridge> add bridge #添加网桥
delbr <bridge> delete bridge #删除网桥
addif <bridge> <device> add interface to bridge #向网桥添加接口
delif <bridge> <device> delete interface from bridge #删除网桥上接口
hairpin <bridge> <port> {on|off} turn hairpin on/off
setageing <bridge> <time> set ageing time
setbridgeprio <bridge> <prio> set bridge priority
setfd <bridge> <time> set bridge forward delay
sethello <bridge> <time> set hello time
setmaxage <bridge> <time> set max message age
setpathcost <bridge> <port> <cost> set path cost
setportprio <bridge> <port> <prio> set port priority
show [ <bridge> ] show a list of bridges #查看网桥列表
showmacs <bridge> show a list of mac addrs #查看物理地址列表
showstp <bridge> show bridge stp info
stp <bridge> {on|off} turn stp on/off

Linux Bridge实现Vlan

第一步:查看核心是否提供vlan功能,并载入8021q模块

[root@localhost ~]# lsmod |grep 8021q
[root@localhost ~]# modprobe 8021q
[root@localhost ~]# lsmod |grep 8021q
8021q 33104 0
garp 14384 1 8021q
mrp 18542 1 8021q

第二步:设置开机载入8021q模块(可选)

# 在/etc/sysconfig/modules下增加一个8021q.modules文件

[root@localhost ~]# vim /etc/sysconfig/modules/8021q.modules
...
modprobe 8021q
...

第三步:安装vlan配置工具--vconfig

[root@localhost ~]# rpm -ivh vconfig-1.9-16.el7.x86_64.rpm   #需用网络源

[root@localhost ~]# rpm -qa |grep vconfig
vconfig-1.9-16.el7.x86_64

第四步:在设备器上再添加一块网卡ens38


[root@localhost ~]# ifconfig ens38: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.137.137 netmask 255.255.255.0 broadcast 192.168.137.255
inet6 fe80::f34c:437:4b83:f0b4 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:30:5c:f9 txqueuelen 1000 (Ethernet)
RX packets 12004 bytes 915163 (893.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1195 bytes 233853 (228.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 ## 注意:修改网卡配置文件中:BOOTPROTO=static

第五步:用vlan管理工具vconfig添加vlan

# vconfig add ens38 10
# vconfig add ens38 10

第六步:撰写vlan接口文件,vlan网桥文件

vlan接口文件:

# vim ifcfg-ens38.10

VLAN=yes    #启用vlan
TYPE=vlan #类型vlan
PHYSDEV=ens38vlan #物理设备网卡
VLAN_ID=10 #vlan_id
ONBOOT=yes # 自启
ZONE=trusted #开启作用域
DEVICE=ens38.10 #设备名
BRIDGE=brvlan10 #网桥 # vim ifcfg-ens38.20 VLAN=yes
TYPE=vlan
PHYSDEV=ens38
VLAN_ID=20
ONBOOT=yes
ZONE=trusted
DEVICE=ens38.20
BRIDGE=brvlan20

vlan网桥文件:

## vim ifcfg-brvlan-10

YPE=bridge
BOOTPROTO=static
NAME=brvlan-10
DEVICE=brvlan-10
ONBOOT=yes ## vim ifcfg-brvlan-20 TYPE=bridge
BOOTPROTO=static
NAME=brvlan-20
DEVICE=brvlan-20
ONBOOT=yes

第七步:给vlan网桥添加接口

# brctl addif brvlan-10 ens38.10
# brctl addif brvlan-20 ens38.20

第八步:重启网卡

# systemctl restart network

网卡配置bond(绑定)

常用的有三种:

  • mode=0:平衡负载模式,有自动备援,但需要”Switch”支援及设定。
  • mode=1:自动备援模式,其中一条线若断线,其他线路将会自动备援。
  • mode=6:平衡负载模式,有自动备援,不必”Switch”支援及设定。

第一步:eth1,eth2,eth3都配置绑定为bond0,例如:

# cat ifcfg-eth1

TYPE=Ethernet
BOOTPROTO=none
DEVICE=eth1
ONBOOT=yes
MASTER=bond0
SLAVE=yes
# 载入bond模块:
# modprobe bonding

第二步:查看bond0,并桥接到br1

# cat ifcfg-bond0

DEVICE=bond0
TYPE=Bond
NAME=bond0
BONDING_MASTER=yes
BOOTPROTO=static
USERCTL=no
ONBOOT=yes
#IPADDR=192.168.10.10
#PREFIX=24
#GATEWAY=192.168.10.19
BONDING_OPTS="mode=6 miimon=100"
BRIDGE=br1

第三步:查看网桥br0

# cat ifcfg-br1

TYPE=Bridge
DEVICE=br1
ONBOOT=yes
IPADDR=192.168.10.1
IPADDR1=192.168.20.1
IPADDR2=192.168.30.1
IPADDR3=192.168.40.1
IPADDR4=192.168.50.1
PREFIX3=24
PREFIX4=24
#GATEWAY=172.16.0.1
#DNS1=172.16.254.251
#DNS2=223.5.5.5

第四步:重启系统

# 查看网卡信息:
ethtool bond0

KVM (虚拟化网络管理)的更多相关文章

  1. KVM虚拟化网络管理(4)

    一.Linux Bridge网桥管理 网络虚拟化是虚拟化技术中最复杂的部分,也是非常重要的资源.第一节中我们创建了一个名为br0的linux-bridge网桥,如果在此网桥上新建一台vm,如下图: V ...

  2. kvm虚拟化网络管理(5)

    一.Linux Bridge网桥管理 网络虚拟化是虚拟化技术中最复杂的部分,也是非常重要的资源. 第一节中我们创建了一个名为br0的linux-bridge网桥,如果在此网桥上新建一台vm,如下图: ...

  3. kvm虚拟化网络管理

    Linux Bridge 网桥管理 VM2 的虚拟网卡 vnet1 也连接到了 br0 上. 现在 VM1 和 VM2 之间可以通信,同时 VM1 和 VM2 也都可以与外网通信 # Vlan LAN ...

  4. [原] KVM 虚拟化原理探究(1)— overview

    KVM 虚拟化原理探究- overview 标签(空格分隔): KVM 写在前面的话 本文不介绍kvm和qemu的基本安装操作,希望读者具有一定的KVM实践经验.同时希望借此系列博客,能够对KVM底层 ...

  5. [原] KVM 虚拟化原理探究 —— 目录

    KVM 虚拟化原理探究 -- 目录 标签(空格分隔): KVM KVM 虚拟化原理探究(1)- overview KVM 虚拟化原理探究(2)- QEMU启动过程 KVM 虚拟化原理探究(3)- CP ...

  6. [原] KVM 虚拟化原理探究(6)— 块设备IO虚拟化

    KVM 虚拟化原理探究(6)- 块设备IO虚拟化 标签(空格分隔): KVM [toc] 块设备IO虚拟化简介 上一篇文章讲到了网络IO虚拟化,作为另外一个重要的虚拟化资源,块设备IO的虚拟化也是同样 ...

  7. [原] KVM 虚拟化原理探究(5)— 网络IO虚拟化

    KVM 虚拟化原理探究(5)- 网络IO虚拟化 标签(空格分隔): KVM IO 虚拟化简介 前面的文章介绍了KVM的启动过程,CPU虚拟化,内存虚拟化原理.作为一个完整的风诺依曼计算机系统,必然有输 ...

  8. [原] KVM 虚拟化原理探究(4)— 内存虚拟化

    KVM 虚拟化原理探究(4)- 内存虚拟化 标签(空格分隔): KVM 内存虚拟化简介 前一章介绍了CPU虚拟化的内容,这一章介绍一下KVM的内存虚拟化原理.可以说内存是除了CPU外最重要的组件,Gu ...

  9. [原] KVM 虚拟化原理探究(3)— CPU 虚拟化

    KVM 虚拟化原理探究(3)- CPU 虚拟化 标签(空格分隔): KVM [TOC] CPU 虚拟化简介 上一篇文章笼统的介绍了一个虚拟机的诞生过程,从demo中也可以看到,运行一个虚拟机再也不需要 ...

  10. [原] KVM 虚拟化原理探究(2)— QEMU启动过程

    KVM 虚拟化原理探究- QEMU启动过程 标签(空格分隔): KVM [TOC] 虚拟机启动过程 第一步,获取到kvm句柄 kvmfd = open("/dev/kvm", O_ ...

随机推荐

  1. 最全总结 | 聊聊 Python 办公自动化之 PPT(中)

    1. 前言 上一篇文章简单地介绍了 PPT 的文档结构,并使用 python-pptx 这个依赖库完成对 PPT 文档最基本的操作 最全总结 | 聊聊 Python 办公自动化之 PPT(上) 作为 ...

  2. 第十一章节 BJROBOT PS3 手柄控制【ROS全开源阿克曼转向智能网联无人驾驶车】

    1.把小车架空平放在地板上.   2.用 USB 线将 PS3 蓝牙手柄连接至小车主控端,初次连接手柄上的 4 个红色指示灯会同时闪烁; 3.按下手柄中间的圆形配对键,然后等待红灯闪烁至停止. 4.此 ...

  3. 5.汇编实现裸机LED

    首先:操作LED就要操作GPIO  alpha的芯片是NXP的IMX6ULL  其GPIO和STM32的命名有所区别 可以看到IMX6ULL的GPIO以其功能进行命名,对应上图中PAD之后的部分 即G ...

  4. Python之 time 与 datetime模块

    time与datetime模块 一.time 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏 ...

  5. Head First 设计模式 —— 03. 装饰器 (Decorator) 模式

    思考题 有如下类设计: 如果牛奶的价钱上扬,怎么办?新增一种焦糖调料风味时,怎么办? 造成这种维护上的困难,违反了我们之前提过的哪种设计原则? P82 取出并封装变化的部分,让其他部分不收影响 多用组 ...

  6. NOIP初赛篇——07信息编码表示

    一.基本概念 编码 ​ 计算机要处理的数据除了数值数据以外,还有各类符号.图形.图像和声音等非数值数据.而计算机只能识别两个数字0,1.要使计算机能处理这些信息,首先必须要将各类信息转换成0与1表示的 ...

  7. 手把手教你用C语言编写一个哈希表

    原文链接:https://www.swack.cn/wiki/001558681974020669b912b0c994e7090649ac4846e80b2000/001572849111298ae3 ...

  8. PHP 清除缓存文件

    /*清除缓存文件*/ public function clearRuntime() { $this->delFileByDir(RUNTIME_PATH); $this->success( ...

  9. Kubernetes K8S之kube-prometheus概述与部署

    Kubernetes K8S之kube-prometheus概述与部署 主机配置规划 服务器名称(hostname) 系统版本 配置 内网IP 外网IP(模拟) k8s-master CentOS7. ...

  10. 使用K8s的一些经验和体会

    坑 Java应用程序的奇怪案例 ​ 在微服务和容器化方面,工程师倾向于避免使用 Java,这主要是由于 Java 臭名昭著的内存管理.但是,现在情况发生了改变,过去几年来 Java 的容器兼容性得到了 ...