高级网络配置,网卡捆绑和网络桥接

链路聚合

平衡轮循:传输速率块
主动备份:提高网卡稳定性

bond接口

bond最多支持两块网卡
1)进入虚拟机管理。给虚拟机添加网卡,确保虚拟机有两个网卡

2)删除所有网络接口



3)设定bond接口


 

watch -n 1 cat /proc/net/bonding/bond0  ##可用此命令监控以下操作

nmcli connection add con-name bond0 ifname bond0 type bond mode active -backup ip4 172.25.254.123/24

##创建一个bonding,设定bond主设备模式
#也可以写为nmcli connection add type bond con-name bond0 ifname bond0 mode active -backup ip4 172.25.254.123/24  

#表示添加了一个名字叫bond0的bond,其使用的接口名字是bond0(ifname(interface的缩写))

nmcli connection add con-name eth0 ifname eth0 type bond-slave master bond0  ##添加网卡eth0到bond0接口

nmcli connection add con-name eth1 ifname eth1 type bond-slave master bond0  ##添加网卡eth1到bond0接口

 


 

nmcli connection show               ##查看网卡接口信息
nmcli connection delete             ##删除网卡接口
ifconfig eth0 down | up             ##关闭|打开网卡


4)当关闭eth0网卡时会发现eth1会继续顶替eth0继续工作



5)当再次打开eth0网卡时eth0并不顶替eth1,而当关闭eth1时会发现eth0又顶替eth1继续工作

删除创建的bond
 

显示所有的网络模式和接口

nmcli con sh
#等效于nmcli connection show

去除bond中绑定的eth0网卡

nmcli con del eth0

nmcli con del eth1


删除bond绑定

nmcli con del bond0

 

team接口

team功能与bond类似,team最多支持八块网卡
1)与bond一样,确保虚拟机有两个网卡,然后删除所有网络接口



2)设定

watch -n 1 teamdctl team0 state      ##监控
nmcli connection add con-name team0 ifname team0 type team config '{"runner":{"name":"activebackup"}}' ip4 172.25.254.114/24              ##建立team接口
nmcli connection add con-name eth0 ifname eth0 type team-slave master team0         ##往team0上添加eth0
nmcli connection add con-name eth1 ifname eth1 type team-slave master team0         ##往team0上添加eth1


此时可以ping通真机

3)与bond相同,关闭一个网卡,另一个顶替继续工作

删除创建的team

显示所有的网络模式和接口

nmcli con sh

去除bond中绑定的eth0网卡(bond和team模式不能同时使用,所以不会出现去掉bond模式上的eth0这种情况(不用指定))

nmcli con del eth0

nmcli con del eth1

team同理:

nmcli con del team0

桥接

2.1   桥接的概念

简单来说,桥接就是把一台机器上的若干个网络接口“连接”起来。其结果是,其中一个网口收到的报文会被复制给其他网口并发送出去。以使得网口之间的报文能够互相转发。

交换机就是这样一个设备,它有若干个网口,并且这些网口是桥接起来的。于是,与交换机相连的若干主机就能够通过交换机的报文转发而互相通信。

如:主机A发送的报文被送到交换机S1的eth0口,由于eth0与eth1、eth2桥接在一起,故而报文被复制到eth1和eth2,并且发送出 去,然后被主机B和交换机S2接收到。而S2又会将报文转发给主机C、D。

 

交换机在报文转发的过程中并不会篡改报文数据,只是做原样复制。然而桥接却并不是在物理层实现的,而是在数据链路层。交换机能够理解数据链路层的报文,所 以实际上桥接却又不是单纯的报文转发。

交换机会关心填写在报文的数据链路层头部中的Mac地址信息(包括源地址和目的地址),以便了解每个Mac地址所代表的主机都在什么位置(与本交换 机的哪 个网口相连)。在报文转发时,交换机就只需要向特定的网口转发即可,从而避免不必要的网络交互。这个就是交换机的“地址学习”。但是如果交换机遇到一个自 己未学习到的地址,就不会知道这个报文应该从哪个网口转发,则只好将报文转发给所有网口(接收报文的那个网口除外)。

比如主机C向主机A发送一个报文,报文来到了交换机S1的eth2网口上。假设S1刚刚启动,还没有学习到任何地址,则它会将报文转发给eth0 和 eth1。同时,S1会根据报文的源Mac地址,记录下“主机C是通过eth2网口接入的”。于是当主机A向C发送报文时,S1只需要将报文转发 到 eth2网口即可。而当主机D向C发送报文时,假设交换机S2将报文转发到了S1的eth2网口(实际上S2也多半会因为地址学习而不这么做),则 S1会 直接将报文丢弃而不做转发(因为主机C就是从eth2接入的)。

然而,网络拓扑不可能是永不改变的。假设我们将主机B和主机C换个位置,当主机C发出报文时(不管发给谁),交换机S1的eth1口收到报文,于是交换机 S1会更新其学习到的地址,将原来的“主机C是通过eth2网口接入的”改为“主机C是通过eth1网口接入的”。

但是如果主机C一直不发送报文呢?S1将一直认为“主机C是通过eth2网口接入的”,于是将其他主机发送给C的报文都从eth2转发出去,结果报 文就发 丢了。所以交换机的地址学习需要有超时策略。对于交换机S1来说,如果距离最后一次收到主机C的报文已经过去一定时间了(默认为5分钟),则S1需要忘 记 “主机C是通过eth2网口接入的”这件事情。这样一来,发往主机C的报文又会被转发到所有网口上去,而其中从eth1转发出去的报文将被主机C收 到。

2.2  linux的桥接实现

linux内核支持网口的桥接(目前只支持以太网接口)。但是与单纯的交换机不同,交换机只是一个二层设备,对于接收到的报文,要么转发、要么丢 弃。小型 的交换机里面只需要一块交换芯片即可,并不需要CPU。而运行着linux内核的机器本身就是一台主机,有可能就是网络报文的目的地。其收到的 报文除了转 发和丢弃,还可能被送到网络协议栈的上层(网络层),从而被自己消化。

linux内核是通过一个虚拟的网桥设备来实现桥接的。这个虚拟设备可以绑定若干个以太网接口设备,从而将它们桥接起来。

搭建网桥

在真机中的操作:

1)为了方便恢复原来网卡配置文件,先把/etc/sysconfig/network-scripts/中相关网卡配置文件移到/mnt/中



2)打开网络图形管理删除网络 只留下virbr0和virbr1



3)创建相关配置文件

创建网卡配置文件

 

 

systemctl restart  network            ##重启网络

 

 

3)可以看到br0和enp3s0生成

临时桥接搭建

1)删除虚拟机所有网络接口



2)搭建临时网桥


 

brctl addbr br0      ##建立br0
ifconfig br0 172.25.254.123/24
brctl addif br0 eth0
brctl show

删除临时网桥

 

 

开启周期性自动保存命令:autosave interval on 设置自动保存周期命令:autosave intervaltime 参数time为指定周期的时间周期(参数:time取值应大于10 min) 开启定时自动保存命令:autosave time on 设置定时保存命令:autosave time time-value 参数time-value为自动保存的时间点 下次启动的配置文件夹设置命令:startup saved-configuration configuration-file 参数configuration-file为指定配置文件 当前配置与下次启动配置文件差异查看命令:compare configuration 查看当前文件下命令:dir[/all][filename|directory] all表示查看当前命令下的文件和目录,参数filename表示待查看文件的名称; directory表示待查看目录的路径 所在目录查询命令:pwd 新建目录的命令:mkdir directory 参数directory表示需要创建的目录(创建文件夹) 复制并重命名文件:copysource-fliename destinction-filename 参数source-fliename表示被复制文件的路径及源文件名: destinction-filename表示目标文件的路径及其目标文件名。 修改当前工作路径命令:cd directory 删除文件命令:delete 【/unreserved】[/force]filename /unerserved表示彻底删除指定文件,删除的文件将不可恢复 /force 表示无需确认直接删除文件 参数filename表示删除的文件名 注解:如果不适用/unreserved,则delete命令删除的文件将被保存到回收站中。 恢复回收站中的文件命令:undelete 彻底删除回收站中的所有文件命令:reset recycle-bin TFTP文件传输命令:tftp tftp-server{get|put}source-filename[destination-filename] 参数tftp-server表示TFTP服务器的IP地址;get表示从TFTP服务器下载文件到TFTP客户端;Put表示TFTP客户端上传文件到TFTP服务 器。source-filename表示源文件名;destination-filename表示目标文件名。 TELNET 配置Telnet的验证方式为密码验证方式: authentication-mode password ste authentication password cipher (密码) 远程登录设备命令:Telnet ip-address 参数ip-address为登录设备IP地址 FTP 建立FTP连接命令:ftp host-ip 【port-nuber】 参数host-ip表示FTP服务器的IP地址;port-number表示FTP服务器的端口号。 从FTP服务器下载文件到FTP客户端命令:getsource-filename【destination-filename】 从FTP客户端上传文件到FTP服务器命令:putsource-filename【destination-filename】 查看FTP服务器文件夹状态查询命令:ls
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值