在 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、一個網橋掛載多個網卡的情況,及 網橋的使用場景后續分析。