首页 > 其他 > 详细

网络班第九周

时间:2021-01-24 21:58:16      阅读:45      评论:0      收藏:0      [点我收藏+]

1.总结ip分类以及每个分类可以分配的IP数量

1.1 IP地址组成

它们可唯一标识 IP 网络中的每台设备 ,每台主机(计算机、网络设备、外围设备)必须具有唯一的地址

IP地址由两部分组成

网络ID:标识网络,每个网段分配一个网络ID,处于高位

主机 ID:标识单个主机,由组织分配给各设备,处于低位

IPv4地址格式:点分十进制记法

技术分享图片

 

 

 

1.2 IP地址分类

技术分享图片

 

 

 

A类:

  0 0000000 - 0 1111111.X.Y.Z : 0-127.X.Y.Z

  网络ID位是最高8位,主机ID是24位低位

  网络数:126=2^7(可变是的网络ID位数)-2

  每个网络中的主机数:2^24-2=16777214

  默认子网掩码:255.0.0.0

  私网地址:10.0.0.0

  范例:114.114.114.114,8.8.8.8,1.1.1.1,58.87.87.99,119.29.29.29

B类:

  10 000000 - 10 111111.X.Y.Z:128-191.X.Y.Z

  网络ID位是最高16位,主机ID是16位低位

  网络数:2^14=16384

  每个网络中的主机数:2^16-2=65534

  默认子网掩码:255.255.0.0

  私网地址:172.16.0.0-172.31.0.0

  范例:180.76.76.76,172.16.0.1

C类:

  110 0 0000 - 110 1 1111.X.Y.Z: 192-223.X.Y.Z

  网络ID位是最高24位,主机ID是8位低位

  网络数:2^21=2097152

  每个网络中的主机数:2^8-2=254

  默认子网掩码:255.255.255.0

  私网地址:192.168.0.0-192.168.255.0

  范例: 223.6.6.6

D类:组(多)播,1110 0000 - 1110 1111.X.Y.Z: 224-239.X.Y.Z

E类:保留未使用,240-255

1.3公共和私有IP地址

私有IP地址:不直接用于互联网,通常在局域网中使用

技术分享图片

 

 

 公共IP地址:互联网上设备拥有的唯一地址

技术分享图片

 

 

 

1.4 特殊地址

0.0.0.0
0.0.0.0不是一个真正意义上的IP地址。它表示所有不清楚的主机和目的网络
255.255.255.255
限制广播地址。对本机来说,这个地址指本网段内(同一广播域)的所有主机
127.0.0.1~127.255.255.254
本机回环地址,主要用于测试。在传输介质上永远不应该出现目的地址为“127.0.0.1”的 数据包
224.0.0.0到239.255.255.255
组播地址,224.0.0.1特指所有主机,224.0.0.2特指所有路由器。224.0.0.5指OSPF 路由器,地址多用于一些特定的程序以及多媒体程序
169.254.x.x
如果Windows主机使用了DHCP自动分配IP地址,而又无法从DHCP服务器获取地址,系统会为主机分配这样地址

1.5 保留地址

技术分享图片

 

 

 

范例:

172.16.0.0 网络中的两个地址:172.16.0.0 172.16.255.255

1.6 子网掩码

CIDR:无类域间路由目前的网络已不再按A,B,C类划分网段,可以任意指定网段的范围

CIDR 无类域间路由表示法:IP/网络ID位数,如:172.16.0.100/16
netmask子网掩码:32位或128位(IPv6)的数字,和IP成对使用,用来确认IP地址中的网络ID和主机ID,对应网络ID的位为1,对应主机ID的位为0,范例:255.255.255.0 ,表现为连续的高位为1,连续的低位为0

技术分享图片

 子网掩码的八位

技术分享图片

 

 

 

相关公式:

一个网络的最多的主机数=2^主机ID位数-2
网络(段)数=2^网络ID中可变的位数
网络ID=IP与netmask

判断对方主机是否在同一个网段:

用自已的子网掩码分别和自已的IP及对方的IP相与,比较结果,相同则同一网络,不同则不同网段

 

范例:一个主机:172.16.1.100/28
1、此主机所在的网段最多有多少主机?主机数=2^(32-28)-2=14
2、网络ID? IP和子网掩码相与,172.16.1.96
3、此网段的主机中最小的IP:172.16.1.97,最大的IP?172.16.1.110

范例:一个主机:203.110.228.200/28

203.110.228.200/28

28: 255.255.255.1111 0000

200: 1100 1000

203.110.228.1100 0000

 

203.110.228.192

2^(32-28)-2=14

203.110.228.193

203.11.228.206

1.7 划分子网

划分子网:将一个大的网络(主机数多)划分成多个小的网络(主机数少),主机ID位数变少,网络ID位数变多,网络ID位向主机ID位借位

范例:

中国移动10.0.0.0/8 给32个各省公司划分对应的子网
1)每个省公司的子网的netmask?
2^5>=32 借5位网络ID
8+5=13
255.248.0.0

2)每个省公司的子网的主机数有多少?
2^(32-13)-2=524286

3)河南省得到第10个子网,网络ID?
10.00000 000.0.0/13
10.01001 000.0.0/13
10.72.0.0/13

4)河南省得到第10个子网的最小IP和最大的IP?
10.01001 000.0.1
10.01001 111.11111111.11111110
10.72.0.1---10.79.255.254

5)所有子网中最大,最小的子网的netid?
10.00000 000.0.0/13 10.0.0.0/13
10.11111 000.0.0/13 10.248.0.0/13

2. 总结IP配置方法

修改配置一般几种方式

1,命令修改

2,工具修改

3,文件修改

4,图形化界面修改

当然,无论哪种方式都是通过不同的途径修改配置文件

1.命令修改,这个命令是临时修改,重启失效

ifconfig
? 实例
??#禁用eth1网卡
??ifconfig eth1 down
??#配置IP地址
??ifconfig eth1 192.168.1.125/24
??#清除IP地址
??ifconfig eth1 0.0.0.0
??#保留原地址虚拟一个新的IP地址2
??ifconfig eth1:2 192.168.1.126/24
??#删除虚拟的地址2
??ifconfig eth1:2 down

ip
?实例
??#修改网卡名为ens33的IP地址为192.168.232.100
??ip addr add 192.168.232.100/24 dev ens33
??#保留原地址虚拟一个新的IP地址2(ip addr add 缩写为ip a a)
??ip a a 192.168.232.101/24 dev ens33 label ens33:2
??#删除一个ens33上的10.10.10.10的IP地址
??ip a d 10.10.10.10/24 dev ens33
??#清除ens33上的所有IP地址
??ip a f dev eth1

2.setup工具

永久配置IP地址(红帽专用),这种方式虽然简单,但是不建议使用这种方式。

setup工具的安装和配置

1. 安装setuptool
#yum install setuptool
2. 安装防火墙设置
 yum install system-config-securitylevel-tui
3. 安装网络设置
#yum install system-config-network-tui
4. 安装系统服务管理
#yum install ntsysv 
安装完成之后,
运行 setup命令,然后就可以进入setup操作界面了
1.输入setup命令
2.选择网络服务
3.进行设备配置
4.进行相关参数配置
5.保存后
执行 service network restart
命令重启网络服务

3.文件修改

ubuntu,网络配置文件在这个目录下

/etc/network/interfaces

centos一般网络配置文件是在这个目录下面,网卡名可能不一样,centos6默认是eth0,centos7默认是ens33

/etc/sysconfig/network-scripts/

技术分享图片

 

 

 

配置文件说明:

 NAME:图形界面的网卡名

 DEVICE:此配置文件应用到的设备

 ONBOOT:在系统引导时是否激活此设备

 TYPE:接口类型;常见有的Ethernet, Bridge

 UUID:设备的惟一标识

 BOOTPROTO:激活此设备时使用的地址配置协议,常用的dhcp, static, none, bootp

 IPADDR:指明IP地址

 PREFIX:以CIDR表示表示子网掩码如255.255.255.0就可以写成24

 NETMASK:子网掩码

 GATEWAY: 默认网关

 DNS1:第一个DNS服务器指向

 DNS2:第二个DNS服务器指向

 HWADDR:对应的设备的MAC地址

 NM_CONTROLLED:NM是NetworkManager的简写,此网卡是否接受NM控制;建议CentOS6为“no”

 USERCTL:普通用户是否可控制此设备

 PEERDNS:如果BOOTPROTO的值为“dhcp”,YES将允许dhcp server分配的dns服务器信息直接覆盖                                     至/etc/resolv.conf文件,NO不允许修改resolv.conf

修改后需 重启网卡

centos 6及之前系统版本的重启命令
/etc/init.d/network restart
或者service netword restart 

centos 7重启网卡命令
systemctl restart network

4.图形化界面修改

图形化的linux系统,配置ip方式和windows类似

3. 使用nmcli实现bonding

3.1网络配置工具 nmcli

图形工具:

nm-connection-editor
字符配置 tui工具:

nmtui

nmtui-connect
nmtui-edit
nmtui-hostname

命令行工具:

nmcli以上工具都依赖NetworkManager服务,此服务是管理和监控网络设置的守护进程

# 查看NetworkManager服务
[root@centos7 ~]# systemctl status NetworkManager
● NetworkManager.service - Network Manager
   Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:NetworkManager(8)
[root@centos7 ~]# 

nmcli命令

nmcli命令相关术语
设备即网络接口
连接是对网络接口的配置,一个网络接口可有多个连接配置,但同时只有一个连接配置生效
格式:

nmcli [ OPTIONS ] OBJECT { COMMAND | help }
    device - show and manage network interfaces
    nmcli device help
    connection - start, stop, and manage network connections
    nmcli connection help

修改IP地址等属性 :

nmcli connection modify IFACE [+|-]setting.property value
setting.property: ipv4.addresses ipv4.gateway ipv4.dns1 ipv4.method manual |
auto

修改配置文件执行生效:

nmcli con reload
nmcli con up con-name
修改IP地址等属性 :
nmcli connection modify IFACE [+|-]setting.property value
setting.property: ipv4.addresses ipv4.gateway ipv4.dns1 ipv4.method manual |
auto
修改配置文件执行生效:
nmcli con reload
nmcli con up con-name
# 查看帮助
nmcli con add help
# 使用nmcli配置网络
nmcli con show
# 显示所有活动连接
nmcli con show --active
# 显示网络连接配置
nmcli con show "System eth0“
# 显示设备状态
nmcli dev status
# 显示网络接口属性
nmcli dev show eth0
# 创建新连接default,IP自动通过dhcp获取
nmcli con add con-name default type Ethernet ifname eth0
# 删除连接
nmcli con del default
# 创建新连接static ,指定静态IP,不自动连接
nmcti con add con-name static ifname eth0 autoconnect no type Ethernet
ipv4.addresses 172.25.X.10/24 ipv4.gateway 172.25.X.254
# 启用static连接配置
nmcli con up static
# 启用default连接配置
nmcli con up default
# 修改连接设置
nmcli con mod “static” connection.autoconnect no
nmcli con mod “static” ipv4.dns 172.25.X.254
nmcli con mod “static” +ipv4.dns 8.8.8.8
nmcli con mod “static” -ipv4.dns 8.8.8.8
nmcli con mod “static” ipv4.addresses “172.16.X.10/24 172.16.X.254”
nmcli con mod “static” +ipv4.addresses 10.10.10.10/16
# DNS设置存放在/etc/resolv.conf,PEERDNS=no 表示当IP通过dhcp自动获取时,dns仍是手动设置,不自动获取等价于下面命令
nmcli con mod “system eth0” ipv4.ignore-auto-dns yes

备注:一般情况下CentOS7默认最小化安装,此时如果要命令行tab补全需要安装一个叫做“bash-completion” 的软件包

nmcli命令与配置文件对应关系

技术分享图片

 

 

 

nmcli 命令集

显示当先网络设备状态:nmcli dev

显示所有网络连接:nmcli con show

显示活动网络连接:nmcli con show -active

显示指定网络连接的详情:nmcli con show eno16777728

显示网络设备连接状态:nmcli dev status

显示所有网络设备的详情:nmcli dev show

显示指定网络设备的详情:nmcli dev show eno16777728

 

启用网络连接:nmcli con up eno16777728

停用网络连接(可被自动激活):nmcli con down eno33554960

禁用网卡,防止被自动激活:nmcli dev dis eth0

删除网络连接的配置文件:nmcli con del eno33554960

重新加载配置网络配置文件:nmcli con reload

 

动态获取IP方式的网络连接配置:nmcli con add con-name eno16777728 type ethernet ifname eno16777728

指定静态IP方式的网络连接配置:nmcli con add con-name eno16777728 ifname eno16777728 autoconnect yes type ethernet ip4 10.1.254.254/16 gw4 10.1.0.1

 

启用/关闭所有的网络连接:nmcli net on/off

禁用网络设备并防止自动激活:nmcli con dis eno33554960

查看添加网络连接配置的帮助:nmcli con add help

 

修改网络连接单项参数

nmcli con mod IF-NAME connection.autoconnect yes修改为自动连接

nmcli con mod IF-NAME ipv4.method manual | dhcp修改IP地址是静态还是DHCP

nmcli con mod IF-NAME ipv4.addresses “172.25.X.10/24 172.25.X.254”修改IP配置及网关

nmcli con mod IF-NAME ipv4.gateway 10.1.0.1修改默认网关

nmcli con mod IF-NAME +ipv4.addresses 10.10.10.10/16添加第二个IP地址

nmcli con mod IF-NAME ipv4.dns 114.114.114.114添加dns1

nmcli con mod IF-NAME +ipv4.dns  8.8.8.8添加dns2

nmcli con mod IF-NAME -ipv4.dns  8.8.8.8删除dns

 

nmcli命令修改所对应的文件条目

nmcli con mod           ifcfg-* 文件

ipv4.method manual       BOOTPROTO=none

ipv4.method auto         BOOTPROTO=dhcp

connection.id eth0        NAME=eth0

(ipv4.addresses          IPADDR0=192.0.2.1

“192.0.2.1/24           PREFIX0=24

192.0.2.254”)           GATEWAY0=192.0.2.254

ipv4.dns 8.8.8.8        DNS0=8.8.8.8

pv4.dns-search example.com   DOMAIN=example.com

pv4.ignore-auto-dns true    PEERDNS=no

connection.autoconnect yes   ONBOOT=yes

connection.interface-name eth0 DEVICE=eth0

802-3-ethernet.mac-address... HWADDR=...

3.2 多网卡 bonding

将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。直接给两块网卡设置同一IP
地址是不可以的。通过 bonding,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC地址

3.2.1Bonding 工作模式

技术分享图片

 

 

 

共7种模式:0-6 Mode

# Linux的bond支持7种工作模式,可以参考内核源码包文件
# 模式1:mode=0 ,即:(balance-rr) Round-robin policy(平衡轮循策略)
特点:传输数据包顺序是依次传输(即:第1个包走eth0,下一个包就走eth1….一直循环下去,直到最后一个传输完毕),此模式提供负载平衡和容错能力;但是我们知道如果一个连接或者会话的数据包从不同的接口发出的话,中途再经过不同的链路,在客户端很有可能会出现数据包无序到达的问题,而无序到达的数据包需要重新要求被发送,这样网络的吞吐量就会下降。

# 模式2:mode=1,即: (active-backup) Active-backup policy(主-备份策略)
特点:只有一个设备处于活动状态,当一个宕掉另一个马上由备份转换为主设备。mac地址是外部可见得,从外面看来,bond的MAC地址是唯一的,以避免switch(交换机)发生混乱。此模式只提供了容错能力;由此可见此算法的优点是可以提供高网络连接的可用性,但是它的资源利用率较低,只有一个接口处于工作状态,在有 N 个网络接口的情况下,资源利用率为1/N

# 模式3:mode=2,即:(balance-xor) XOR policy(平衡策略)
特点:基于指定的传输HASH策略传输数据包。缺省的策略是:(源MAC地址 XOR 目标MAC地址) % slave数量。其他的传输策略可以通过xmit_hash_policy选项指定,此模式提供负载平衡和容错能力。

# 模式4:mode=3,即:broadcast(广播策略)
特点:在每个slave接口上传输每个数据包,此模式提供了容错能力。

# 模式5:mode=4,即:(802.3ad) IEEE 802.3adDynamic link aggregation(IEEE 802.3ad 动态链接聚合)
特点:创建一个聚合组,它们共享同样的速率和双工设定。根据802.3ad规范将多个slave工作在同一个激活的聚合体下。

外出流量的slave选举是基于传输hash策略,该策略可以通过xmit_hash_policy选项从缺省的XOR策略改变到其他策略。需要注意的是,并不是所有的传输策略都是802.3ad适应的,尤其考虑到在802.3ad标准43.2.4章节提及的包乱序问题。不同的实现可能会有不同的适应性。

必要条件:

条件1:ethtool支持获取每个slave的速率和双工设定 

条件2:switch(交换机)支持IEEE 802.3ad Dynamic link aggregation 

条件3:大多数switch(交换机)需要经过特定配置才能支持802.3ad模式

# 模式6:mode=5,即:(balance-tlb) Adaptive transmit load balancing(适配器传输负载均衡)
特点:不需要任何特别的switch(交换机)支持的通道bonding。在每个slave上根据当前的负载(根据速度计算)分配外出流量。如果正在接受数据的slave出故障了,另一个slave接管失败的slave的MAC地址。

该模式的必要条件:ethtool支持获取每个slave的速率。

# 模式7:mode=6,即:(balance-alb) Adaptive load balancing(适配器适应性负载均衡)
特点:该模式包含了balance-tlb模式,同时加上针对IPV4流量的接收负载均衡(receive load balance, rlb),而且不需要任何switch(交换机)的支持。接收负载均衡是通过ARP协商实现的。bonding驱动截获本机发送的ARP应答,并把源硬件地址改写为bond中某个slave的唯一硬件地址,从而使得不同的对端使用不同的硬件地址进行通信。

说明:
active-backup、balance-tlb 和 balance-alb 模式不需要交换机的任何特殊配置。其他绑定模式需要配
置交换机以便整合链接。如:Cisco 交换机需要在模式 0、2 和 3 中使用 EtherChannel,但在模式4中
需要 LACP和 EtherChannel

3.2.2 Bonding配置

创建bonding设备的配置文件

/etc/sysconfig/network-scripts/ifcfg-bond0
TYPE=bond
DEVICE=bond0
BOOTPROTO=none
IPADDR=10.0.0.100
PREFIX=8
#miimon指定链路监测时间间隔。如果miimon=100,那么系统每100ms 监测一次链路连接状态,如果有一
条线路不通就转入另一条线路
BONDING_OPTS="mode=1 miimon=100"


/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes


/etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes

查看bond0状态:

/proc/net/bonding/bond0

删除bond0

ifconfig bond0 down
rmmod bonding

3.3 nmcli实现bonding

# 添加bonding接口
nmcli con add type bond con-name mybond0 ifname mybond0 mode active-backup
# 添加从属接口
nmcli con add type bond-slave ifname ens7 master mybond0
nmcli con add type bond-slave ifname ens3 master mybond0
注:如无为从属接口提供连接名,则该名称是接口名称加类型构成
# 启动从属接口
nmcli con up bond-slave-eth0
nmcli con up bond-slave-eth1
# 启动绑定
nmcli con up mybond0
# 关闭并删除bond
nmcli con down mybond0
rm –f /etc/sysconfig/network-scripts/ifcfg-*bond*
nmcli connection reload

3.4网络组 Network Teaming

网络组:是将多个网卡聚合在一起方法,从而实现冗错和提高吞吐量

网络组不同于旧版中bonding技术,提供更好的性能和扩展性

网络组由内核驱动和teamd守护进程实现

 

多种方式 runner

broadcast

roundrobin

activebackup

loadbalance

lacp (implements the 802.3ad Link Aggregation Control Protocol)

网络组特点

启动网络组接口不会自动启动网络组中的port接口

启动网络组接口中的port接口总会自动启动网络组接口

禁用网络组接口会自动禁用网络组中的port接口

没有port接口的网络组接口可以启动静态IP连接

启用DHCP连接时,没有port接口的网络组会等待port接口的加入

# 创建网络组接口
nmcli con add type team con-name CNAME ifname INAME [config JSON]
CNAME 连接名
INAME 接口名
JSON 指定runner方式,格式:{"runner": {"name": "METHOD"}}
METHOD 可以是broadcast, roundrobin, activebackup, loadbalance, lacp
# 创建port接口
nmcli con add type team-slave con-name CNAME ifname INAME master TEAM
CNAME 连接名,连接名若不指定,默认为team-slave-IFACE
INAME 网络接口名
TEAM 网络组接口名
# 断开和启动
nmcli dev dis INAME
nmcli con up CNAME
INAME 设备名 CNAME 网络组接口名或port接口

网络组示例

nmcli con add type team con-name myteam0 ifname team0 config {"runner":
{"name": "loadbalance"}} ipv4.addresses 192.168.1.100/24 ipv4.method manual
nmcli con add con-name team0-eth1 type team-slave ifname eth1 master team0
nmcli con add con-name team0-eth2 type team-slave ifname eth2 master team0
nmcli con up myteam0
nmcli con up team0-eth1
nmcli con up team0-eth2


teamdctl team0 state
ping -I team0 192.168.0.254
nmcli dev dis eth1
teamdctl team0 state
nmcli con up team0-port1
nmcli dev dis eth2
teamdctl team0 state
nmcli con up team0-port2
teamdctl team0 state

管理网络组配置文件

/etc/sysconfig/network-scripts/ifcfg-team0
DEVICE=team0
DEVICETYPE=Team
TEAM_CONFIG="{\"runner\": {\"name\": \"broadcast\"}}"
BOOTPROTO=none
IPADDR0=172.16.0.100
PREFIX0=24
NAME=team0
ONBOOT=yes

管理网络组配置文件

/etc/sysconfig/network-scripts/ifcfg-team0-eth1
DEVICE=eth1
DEVICETYPE=TeamPort
TEAM_MASTER=team0
NAME=team0-eth1
ONBOOT=yes

删除网络组

nmcli connection down team0
teamdctl team0 state
nmcli connection show
nmcli connectioni delete team0-eth0
nmcli connectioni delete team0-eth1
nmcli connection show

练习:centos7使用nmcli 实现主备模式active-backup

# 查看当前网卡配置
[root@centos7 ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:32:b5:7e brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.10/8 brd 10.255.255.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe32:b57e/64 scope link 
       valid_lft forever preferred_lft forever
[root@centos7 ~]# 
# 在虚拟机上添加一块网卡,并查看添加后的网卡配置
[root@centos7 ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:32:b5:7e brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.10/8 brd 10.255.255.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe32:b57e/64 scope link 
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 00:0c:29:32:b5:88 brd ff:ff:ff:ff:ff:ff
[root@centos7 ~]# 
# 安装命令行tab补全包“bash-completion”
[root@centos7 ~]# yum -y install bash-completion
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
file:///mnt/cdrom/repodata/repomd.xml: [Errno 14] curl#37 - "Couldn‘t open file /mnt/cdrom/repodata/repomd.xml"
Trying other mirror.
Package 1:bash-completion-2.1-8.el7.noarch already installed and latest version
Nothing to do
[root@centos7 ~]# 
# 安装NetworkManager-tui包,并开启NetworkManager服务
[root@centos7 ~]# yum install NetworkManager-tui  -y
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
file:///mnt/cdrom/repodata/repomd.xml: [Errno 14] curl#37 - "Couldn‘t open file /mnt/cdrom/repodata/repomd.xml"
Trying other mirror.
Package 1:NetworkManager-tui-1.18.8-2.el7_9.x86_64 already installed and latest version
Nothing to do
[root@centos7 ~]# systemctl stop NetworkManager
[root@centos7 ~]# systemctl status NetworkManager
● NetworkManager.service - Network Manager
   Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; disabled; vendor preset: enabled)
   Active: inactive (dead) since Sun 2021-01-24 20:21:47 CST; 2s ago
     Docs: man:NetworkManager(8)
  Process: 1514 ExecStart=/usr/sbin/NetworkManager --no-daemon (code=exited, status=0/SUCCESS)
 Main PID: 1514 (code=exited, status=0/SUCCESS)

[root@centos7 ~]#
# 添加bonding接口
[root@centos7 ~]# nmcli connection add type bond con-name bond0 ifname bond0 mode active-backup
Connection bond0 (21860d27-483c-4d6d-a72e-1ee8d166064f) successfully added.
[root@centos7 ~]# 
[root@centos7 ~]# nmcli connection modify bond0 ipv4.method manual ipv4.addresses 10.0.0.123/24 ipv4.gateway 10.0.0.2
[root@centos7 ~]#
# 添加从属接口
nmcli connection add type bond-slave ifname eth0 master bond0
nmcli connection add type bond-slave ifname eth1 master bond0
# 要启动绑定,则必须首先启动从属接口
nmcli  connection  up  bond-slave-eth0
nmcli  connection  up  bond-slave-eth1
# 启动绑定
nmcli connection up bond0
# 重新加载配置网络配置文件
nmcli connection reload
# 查看bond0状态
cat /proc/net/bonding/bond0
[root@centos7 ~]# 
[root@centos7 ~]# cat cat /proc/net/bonding/bond0
cat: cat: No such file or directory
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: fault-tolerance (active-backup)  // 绑定模式: 当前是mode 1
Primary Slave: None
Currently Active Slave: eth1
MII Status: up        // 接口状态: up(MII是Media Independent Interface简称, 接口的意思)
MII Polling Interval (ms): 100  // 接口轮询的时间隔(这里是100ms)
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth1    // 备接口: eth1
MII Status: up           // 接口状态: up(MII是Media Independent Interface简称, 接口的意思)
Speed: 1000 Mbps         // 端口的速率是1000 Mpbs
Duplex: full             // 全双工
Link Failure Count: 0    // 链接失败次数: 0 
Permanent HW addr: 00:0c:29:32:b5:88   // 永久的MAC地址
Slave queue ID: 0
[root@centos7 ~]#
# 测试丢包状况
[root@centos7 ~]# ping 10.0.0.88
PING 10.0.0.88 (10.0.0.88) 56(84) bytes of data.
64 bytes from 10.0.0.88: icmp_seq=1 ttl=64 time=0.521 ms
64 bytes from 10.0.0.88: icmp_seq=2 ttl=64 time=2.21 ms
64 bytes from 10.0.0.88: icmp_seq=3 ttl=64 time=0.383 ms
64 bytes from 10.0.0.88: icmp_seq=4 ttl=64 time=0.366 ms
64 bytes from 10.0.0.88: icmp_seq=5 ttl=64 time=0.747 ms
64 bytes from 10.0.0.88: icmp_seq=6 ttl=64 time=0.383 ms
64 bytes from 10.0.0.88: icmp_seq=7 ttl=64 time=1.30 ms
64 bytes from 10.0.0.88: icmp_seq=8 ttl=64 time=0.420 ms
^C
--- 10.0.0.88 ping statistics ---
8 packets transmitted, 8 received, 0% packet loss, time 7005ms
rtt min/avg/max/mdev = 0.366/0.791/2.214/0.614 ms
[root@centos7 ~]# 
# 在虚拟机上断开eth0网卡,测试丢包状况

[root@centos7 ~]# ping 10.0.0.88
PING 10.0.0.88 (10.0.0.88) 56(84) bytes of data.
64 bytes from 10.0.0.88: icmp_seq=1 ttl=64 time=0.373 ms
64 bytes from 10.0.0.88: icmp_seq=2 ttl=64 time=0.349 ms
64 bytes from 10.0.0.88: icmp_seq=3 ttl=64 time=1.58 ms
64 bytes from 10.0.0.88: icmp_seq=4 ttl=64 time=0.384 ms
64 bytes from 10.0.0.88: icmp_seq=5 ttl=64 time=0.607 ms
64 bytes from 10.0.0.88: icmp_seq=6 ttl=64 time=0.677 ms
^C
--- 10.0.0.88 ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 5003ms
rtt min/avg/max/mdev = 0.349/0.662/1.584/0.431 ms
[root@centos7 ~]#

技术分享图片

 

 技术分享图片

 

 技术分享图片

 

 技术分享图片

 

 技术分享图片

 

 备注:重新加载配置网络文件(即执行nmcli connection reload命令)后才可使用xshell连接,注意此时的id为10.0.0.123。

 

网络班第九周

原文:https://www.cnblogs.com/linux1305803172/p/14322336.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!