练习:配置bond1 (两个网卡必须物理上在一个网段)
1、service NetworkManager stop
2、vim ifcfg-bond0
DEVICE=bond0
IPADDR=192.168.30.100
PREFIX=24
GATEWAY=192.168.30.1
BONDING_OPTS=”miimon=100 mode=1”
3、vim ifcfg-eth0
DEVICE=eth0
MASTER=bond0
SLAVE=yes
4、vim ifcfg-eth1
DEVICE=eth1
MASTER=bond0
SLAVE=yes
5、重启网络服务
ip a
可见ip地址在bond0上,且eth0和eth1共用一个物理MAC地址
cat /proc/net/bonding/bond0 能看到bond0的状态!
删除bond0方法:
1、lsmod 显示所有加载的驱动模块,lsmod | grep bond 查询bond的驱动模块是什么。
2、ifconfig bond0 down 禁用bond0
3、modprobe -r bonding 卸载bonding驱动模块
4、卸载完驱动模块后,ifconfig -a 看不到bond0了
5、rm -f ifcfg-bond0
6、修改ifcfg-eth0和ifcfg-eth1.
重启网络服务!
nmcli命令
nmcli device status 查询网卡的连接的状态
上图中的eth0代表物理设备网卡,而与之对应的connection 1 代表着一套配置文件,有点像ifcfg-eth0。由于在centos7上我们将来有可能针对一个网卡在不同的场合下配置不同的网络设置,所以这时候有可能一个网卡对应多个connection。相当于一个网卡给它生成多个配置文件,多个配置文件同一时间只有一个有效,随时进行切换,如何实现呢?使用nmcli connection命令
nmcli connection show查看物理网卡与配置文件的对应关系
显然connection 1 和 connection 2 这两套配置文件在/etc/sysconfig/network-scripts/下并没有生成,虽然没有,但是connection 1和connection 2是在内存中放着,Wired connection 1和Wired connection 2这个名字是系统自动生成的,我们也可以针对某一个网卡自己创建相应的配置文件。
nmcli connection delete ens33 将上图中的ens33配置文件删除
现在我想真对eth1单独再创建个配置文件:
nmcli connection add con-name office-eth1 ifname eth1 type ethernet ipv4.method auto connection.autoconnect yes
con-name:起个名字 ifname:针对哪个网卡 type:网卡的类型 ipv4.method:获取ip地址的方式(相当于BOOTPROTO=dhcp) connection.autoconnect yes:(相当于ONBOOT=yes)
nmcli connection show显示如下
nmcli connection up office-eth1将office-eth1这套配置文件启用
nmcli connection show显示如下
将上图中的Wired connection 2这个文件修改下,比方说改个名字
nmcli connection modify Wired\ connection\ 2 con-name home-eth1 modify:修改
此时ls /etc/sysconfig/network-scripts/,显示如下
cat ifcfg-office-eth1,显示如下
如果我想将ifcfg-home-eth1修改为手工指定地址
nmcli connection modify home-eth1 ipv4.addresses 172.20.0.7/16 ipv4.gateway 172.20.0.1 ipv4.dns 223.5.5.5 ipv4.method manual ipv4.method manual:获取ip地址为静态的意思
nmcli connection up home-eth1 启用home-eth1这个配置文件
ifconfig 显示
说明静态ip已经生效!!!
用nmcli命令是间接生成ifcfg-配置文件,所以我也可以直接在这个文件里面改,例如:
cp ifcfg-home-eth1 ifcfg-home2-eth1
vim ifcfg-home2-eth1,只修改下面一条
由于我是复制文件这种方法修改,所以nmcli connection show 看不到home2-eth1,想让它生效,方法:nmcli connection reload 重新加载
删除home-eth1配置文件:nmcli connection delete home-eth1 对应的在
/etc/sysconfig/network-scripts里的配置文件也就删掉了
nmcli device disconnect eth1 断开eth1的网络,使用ifconfig能够看到eth1但是没有网址。使用ip a 也能看到,且显示up状态。
nmcli device connect eth1 连接eth1的网络。
nmcli connection show eth0 显示eth0的详细信息
地址配置工具: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
修改配置文件执行生效:systemctl restart network
nmcli con reload
nmcli命令生效: nmcli con down eth0 ;nmcli con up eth0
使用nmcli配置网络
NeworkManager是管理和监控网络设置的守护进程
设备即网络接口,连接是对网络接口的配置。一个网络接口可有多个连接配置,但同时只有一个连接配置生效
显示所有包括不活动连接: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 type Ethernet ipv4.addresses 172.25.X.10/24 ipv4.gateway 172.25.X.254 ipv4 ipv4.method manual
启用static连接配置:nmcli con up static
启用default连接配置:nmcli con up default
查看帮助:nmcli con add help
修改连接设置
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.25.X.10/24 172.25.X.254”
nmcli con mod “static” +ipv4.addresses 10.10.10.10/16 在static加一个地址,使用cat命令查看
发现IPADDR=X.X.X.X IPADDR1=X.X.X.X
如果是修改文件的方式,先nmcli connection reload,再nmcli connection up 。。。ip a 才能显示。
DNS设置,存放在/etc/resolv.conf文件中
PEERDNS=no 表示当IP通过dhcp自动获取时,dns仍是手动设置,不自动获取。等价于下
面命令:nmcli con mod “system eth0” ipv4.ignore-auto-dns yes
练习:创建网络组,功能类似与之前讲过的bonding
1、 nmcli connection add type team con-name team0 ifname team0 config ‘{“runner”:{“name”:”activebackup”}}’ ipv4.method manual ipv4.address 192.168.30.7/24
2、nmcli connetion add type team-slave con-name team0-eth0 ifname eth0 master team0
3、nmcli connetion add type team-slave con-name team0-eth1 ifname eth1 master team0
4、nmcli connection up team0-eth0
5、nmcli connection up team0-eth1
teamdctl team0 state 查看team0的状态。
删除的方法:
第一种方法:将/etc/sysconfig/network-scripts对应的文件删除。
第二种方法命令删除:nmcli connection delete team0 team0-eth0 team0-eth1
本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/97607