####高级网络控制###


1.链路聚合:bond接口和team接口


实验前提:

   打开networkmanager 才能使用nmcli

   systemctl status NetworkManager   ##查看网络记录服务是否开启,如没开启则需先开启服务

   先增加到两个网卡,真机输入virt-manager ——> add ——> net ——> vir


bond:


    注意:该环境需要至少两块网卡,请添加网卡后实验!

    bond 两块网卡  team 八块网卡 没有网卡,虚拟接口用不了


bonding内核模块合成为通道绑定接口的特殊网络接口将多个网络接口绑定到一个通道


以太网绑定模式:

   模式0(平衡轮循)-轮循策略,所有接口都采用轮循方式在所有Slave中传输封包;任何Slave都可以接收

   模式1(主动备份)—容错。一次只能使用一个Slave接口,但是如果该接口出现故障,另一个Slave将接替它


(1)建立:(建立之前删除eth0和eth1)

   systemctl start NetworkManager

   nmcli connection add con-name bond0 ifname bond0 type bond mode active-backup ip4 172.25.254.110/24  ##建立链路聚合bond0

      

linux聚合口多vlan_linux聚合口多vlan

   watch -n 1 "cat /proc/net/bonding/bond0"  ##监控


   nmcli connection add con-name eth0 ifname eth0 type bond-slave master bond0         ##建立eth0

   nmcli connection add con-name eth1 ifname eth1 type bond-slave master bond0         ##建立eth1

      

linux聚合口多vlan_工作模式_02

 

(2)测试:

      ping 172.25.254.110   ##可以ping通

     在shell里面输入命令:ifconfig eth0 down

     网络依旧能够ping通,只不过工作的就是eth1

      

linux聚合口多vlan_桥接_03

 

(3)删除网卡及bond接口

   nmcli connection delete bond0

   nmcli connection delete eth0

   nmcli connection delete eth1

   ifconfig

      

linux聚合口多vlan_工作模式_04

 

(4)查看bond接口工作:

    cat /proc/net/bonding/bond0
   此时网卡eth0工作,当eth0出现问题,eth1马上接续工作

   注意:

    mode网卡阵列类型 
    bond-slave   ##实现网卡阵列服务
    master       ##指定接口 bond0
    active-backup  ##主备式,一个网卡工作,剩下的网卡备用,当工作的网卡down掉了,备用的网卡立刻就会工作,备份立刻转换为主设备

team:


(1)建立:(建立之前删除eth0和eth1)

   nmcli connection add con-name team0 ifname team0 type team config '{"runner":{"name":"activebackup"}}' ip4 172.25.254.110/24  

   nmcli connection add con-name eth0 ifname eth0 type team-slave master team0

   nmcli connection add con-name eth1 ifname eth1 type team-slave master team0


   runner:team      ##接口工作模式

   activebackup     ##主备式,一个网卡工作,另一网卡备用

   roundrobin       ##平衡轮询式,谁闲着谁做

   broadcast        ##广播容错

   loadbalance      ##负载均衡

      

linux聚合口多vlan_配置文件_05

 

(2)测试:

  ping 172.25.254.110   ##可以ping通

     在shell里面输入命令:ifconfig eth0 down

     网络依旧能够ping通,只不过工作的就是eth1

      

linux聚合口多vlan_linux聚合口多vlan_06

 

(3)删除:

   nmcli connection delete team0

   nmcli connection delete eth0

   nmcli connection delete eth1

   ifconfig


(4)查看team接口工作:teamdctl team0 stat

      

linux聚合口多vlan_配置文件_07

 

注意:bond和team接口,添加网卡后,网络通畅;实验环境为主备式,一块网卡出现异常,另一块网卡马上工作,并且网络服务不会停止

2.网桥:

   cd /etc/sysconfig/network-scripts/

   mkdir /backup

   mv ifcfg-br0 ifcfg-enp0s25   /backup   ##备份网络配置文件

        ^             ^

     桥接配置文件   真机网卡配置文件


自己搭建网桥(自己安装的系统没有br0):

文件的方式(永久):

      

linux聚合口多vlan_linux聚合口多vlan_08

      

linux聚合口多vlan_桥接_09

    没有编辑新的主机ip和网桥的配置文件时,ping 172.25.254.110时,显示连接不上

      

linux聚合口多vlan_linux聚合口多vlan_10

 

(1)cd /etc/sysconfig/network-scripts/

    vim ifcfg-westos(真机网卡配置文件)

    BOOTPROTO=none     ##网卡工作模式(none静态)(dchp动态)

    DEVICE=westos     ##网卡设备名称

    ONBOOT=yes         ##网络服务启动时自动激活

    BRIDGE=br0         ##桥接接口br0

      

linux聚合口多vlan_配置文件_11

 

 注意:重起网络:查看虚拟机安装界面,没有桥接接口

   注意:此时建立虚拟机,从virbr0接口进入,经过br0地址转换

      

linux聚合口多vlan_配置文件_12

 

(2)vim ifcfg=br0(桥接配置文件)

    DEVICE=br0     ##接口使用设备

    TYPE=Bridge    ##接口类型,桥接(默认ethernet)

    BOOTPROTO=none     ##网卡工作模式(none静态)(dchp动态)

    ONBOOT=yes

    IPADDR=172.25.254.10   ##IP地址

    PREFIX=24      ##子网掩码

    systemctl restart network

      

linux聚合口多vlan_工作模式_13

      

   注意:重启网络,查看虚拟机安装界面,存在桥接接口

   注意:当桥接接口添加网卡后,网络通畅,否则网络不通

      

linux聚合口多vlan_桥接_14

 

   注意:每次删除建立ifcfg文件重启服务以后,都要先设置一下虚拟机的ip,否则我有好几次发现我文件什么都编辑完成了,但是总是ping不通,因为没有ip


查看:brctl show


3.brctl的应用

   brctl addr br0    ##建立桥接接口

   ifconfig          ##可以查看到桥接接口

   ifconfig br0 172.25.254.110/24

   ifconfig br0            ##临时的

   ping 172.25.254.110


   brctl show

   brctl delbr br0

      

linux聚合口多vlan_linux聚合口多vlan_15

 

桥接用于和虚拟机连接,当删除了网桥的时候,重新添加网卡的时候就没有桥接这一个选项,不用桥接接口的只能用nat