在 centos 7.2 系统内,
网卡的配置文件在: /etc/sysconfig/network-scripts/ 下。
命名规则: ifcfg-xxxx。 xxx为设备名称。
通过分析 network 服务的执行脚本: /etc/rc.d/init.d/network 整理网卡配置文件的内容:
1 TYPE=Ethernet 设备类型,缺省为 Ethernet, 支持: xDSL,Bridge,IPSEC。 可以不进行配置 2 BOOTPROTO=manual BOOT 启动方式, dhcp(自动获取), static(手动配置) 3 DEFROUTE=yes 4 PEERDNS=yes 5 PEERROUTES=yes 6 IPV4_FAILURE_FATAL=no 7 IPV6INIT=yes 8 IPV6_AUTOCONF=yes 9 IPV6_DEFROUTE=yes 10 IPV6_PEERDNS=yes 11 IPV6_PEERROUTES=yes 12 IPV6_FAILURE_FATAL=no 13 NAME=eno16777736 14 UUID=d0d3289e-9c2c-45f7-a569-c55aca9f0e8a 15 DEVICE=eno16777736 16 ONBOOT=yes
以上是系统自动创建的。
network 服务,扫描 /etc/sysconfig/network-scripts/ 目录下以 ifcfg- 开始的文件名,作为网卡配置文件,读取配置项,通过 ifup device boot 启动网卡
通过brctl 添加的网桥及接口,重启系统后,会被删除掉。下面通过添加网桥配置文件方式,建立网桥。
静态添加网桥:
1、建立网桥 br0
touch /etc/sysconfig/network-scripts/ifcfg-br0
建立网桥配置文件ifcfg-br0
vi /etc/sysconfig/network-scripts/ifcfg-br0
1 TYPE=Bridge 2 BOOTPROTO=dhcp 3 DEFROUTE=yes 4 PEERDNS=yes 5 PEERROUTES=yes 6 IPV4_FAILURE_FATAL=no 7 #IPV6INIT=yes 8 #IPV6_AUTOCONF=yes 9 #IPV6_DEFROUTE=yes 10 #IPV6_PEERDNS=yes 11 #IPV6_PEERROUTES=yes 12 #IPV6_FAILURE_FATAL=no 13 #NAME=eno16777736 14 #UUID=d0d3289e-9c2c-45f7-a569-c55aca9f0e8a 15 DEVICE=br0 16 ONBOOT=yes
注意: TYPE 为 Bridge,不是Ethernet
BOOTPROTO 为 static,需要添加 IPADD=XXXX 配置IP地址及网关
DEVICE 为设备名称
以上三项为必有项。
ONBOOT 系统启动时,是否启动。yes 启动,no 不启动。 no时需要手动启动 ifup br0
创建好网桥配置文件后,重启网络或br0
# service network restart
或
#ifup br0
最好使用后者,前者会重启所有网络,由于其他网卡配置文件不正确,导致重启失败。
通过 命令查看 网桥是否存在:
#ip a
或 # ifconfig
2、添加网卡到网桥
把ens37和eth1两网卡添加到网桥中。
修改ens37网卡配置文件
vi /etc/sysconfig/network-scripts/ifcfg-ens37
1 TYPE=Ethernet 2 BOOTPROTO=dhcp 3 DEFROUTE=yes 4 PEERDNS=yes 5 PEERROUTES=yes 6 IPV4_FAILURE_FATAL=no 7 IPV6INIT=yes 8 IPV6_AUTOCONF=yes 9 IPV6_DEFROUTE=yes 10 IPV6_PEERDNS=yes 11 IPV6_PEERROUTES=yes 12 IPV6_FAILURE_FATAL=no 13 NAME=eno16777736 14 UUID=d0d3289e-9c2c-45f7-a569-c55aca9f0e8a 15 DEVICE=ens37 16 ONBOOT=yes 17 BRIDGE=br0
在原有网卡配置文件内容的基础上,在最后增加一个 BRIDGE=br0, br0即网桥的名称
重启网络或重启ens37网卡,是配置生效。
#service network restart
#ifdown ens37
#ifup ens37
建议使用后者。
通过 brctl show 查看网卡是否挂载到 网桥上。
1 [root@centos7 network-scripts]# brctl show 2 bridge name bridge id STP enabled interfaces 3 br0 8000.000c299f0234 no ens37 4 br1 8000.000000000000 no 5 virbr0 8000.52540088fbd8 yes virbr0-nic
2、网桥上配置ip
可以通过 ifconfig 进行配置ip。 通过此种方式配置的ip,重启网络后,ip会消失。
ifconfig br0 10.17.55.200
修改配置文件方式,设置ip。
配文件中 BOOTPROTO=dhcp 为自动获取ip。 BOOTPROTO=static 为手动设置ip地址, 设置IPADDR=X.X.X.X 及 GATEWAY=X.X.X.X 。 网关有时候可以不进行设置。
修改完毕配置文件后,需要重启网络服务。仅仅重启网桥,无设置的ip无效。
1 TYPE=Bridge 2 BOOTPROTO=static 3 IPADDR=10.17.55.200 4 DEFROUTE=yes 5 PEERDNS=yes 6 PEERROUTES=yes 7 IPV4_FAILURE_FATAL=no 8 #IPV6INIT=yes 9 #IPV6_AUTOCONF=yes 10 #IPV6_DEFROUTE=yes 11 #IPV6_PEERDNS=yes 12 #IPV6_PEERROUTES=yes 13 #IPV6_FAILURE_FATAL=no 14 #NAME=eno16777736 15 #UUID=d0d3289e-9c2c-45f7-a569-c55aca9f0e8a 16 DEVICE=br0 17 ONBOOT=yes
注意: 没有挂载网卡的网桥,无法设置ip地址。通过ifconfig设置后ip地址后,导致整个网络不同。通过配置文件设置static ip地址,可以看到,到无法使用。
3、 挂载到网桥上的网卡,无法在设置IP地址。即使配置文件设置了ip地址,也无效。
4、一个网桥挂载多个网卡的情况,及 网桥的使用场景后续分析。