Hi Daniel,
Basically, I am almost certain that I have the bonding configuration set correctly. It seems to be in line with what Paul Mellors and the Centos documentation provides and it was in use for a long time with Centos 6.6 (and remains to be in use with other Centos 7.1 servers I am using). The files in /etc/sysconfig/network-scripts are:
-
ifcfg-bond0
DEVICE=bond0
ONBOOT=yes
TYPE=Ethernet
BONDING_OPTS='mode=802.3ad miimon=100’
BRIDGE=br0
NM_CONTROLLED=no
BOOTPROTO=none
IPV6INIT=no
NOZEROCONF=yes
-
ifcfg-br0
DEVICE=br0
ONBOOT=yes
TYPE=Bridge
IPADDR=192.168.12.10
NETMASK=255.255.255.0
GATEWAY=192.168.12.1
DNS1=192.168.12.1
NM_CONTROLLED=no
NOZEROCONF=yes
-
ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
USERCTRL=no
SLAVE=yes
MASTER=bond0
BOOTPROTO=none
HWADDR=00:25:90:C7:B5:32
NM_CONTROLLED=no
-
ifcfg-eth1
DEVICE=eth1
TYPE=Ethernet
USERCTRL=no
SLAVE=yes
MASTER=bond0
BOOTPROTO=none
HWADDR=00:25:90:C7:B5:33
NM_CONTROLLED=no
This configuration used to work with FreePBX12 and it does still work with similar servers running Centos 7.1. In line with this, the switch does think that a Link Aggregation Group is running. At Centos, package bridge-utils is present and current, of course. Ifcfg output:
bond0 Link encap:Ethernet HWaddr 00:25:90:C7:B5:32
inet6 addr: fe80::225:90ff:fec7:b532/64 Scope:Link
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:1125 errors:0 dropped:0 overruns:0 frame:0
TX packets:814 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:122959 (120.0 KiB) TX bytes:341828 (333.8 KiB)
br0 Link encap:Ethernet HWaddr 00:25:90:C7:B5:32
inet addr:192.168.12.10 Bcast:192.168.12.255 Mask:255.255.255.0
inet6 addr: fe80::225:90ff:fec7:b532/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1093 errors:0 dropped:0 overruns:0 frame:0
TX packets:710 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:102549 (100.1 KiB) TX bytes:334652 (326.8 KiB)
eth0 Link encap:Ethernet HWaddr 00:25:90:C7:B5:32
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:242 errors:0 dropped:0 overruns:0 frame:0
TX packets:100 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:27926 (27.2 KiB) TX bytes:23414 (22.8 KiB)
Memory:fe120000-fe13ffff
eth1 Link encap:Ethernet HWaddr 00:25:90:C7:B5:32
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:883 errors:0 dropped:0 overruns:0 frame:0
TX packets:714 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:95033 (92.8 KiB) TX bytes:318414 (310.9 KiB)
Memory:fe100000-fe11ffff
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:570 errors:0 dropped:0 overruns:0 frame:0
TX packets:570 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:52567 (51.3 KiB) TX bytes:52567 (51.3 KiB)
The firewall does see all interfaces including bond and bridge and one can move all of them into the external zone. System Admin -> Network Settings is practically out of the loop.
What may indicate the problem cause is that whenever one does open a terminal, the following red error message is shown:
[Whoops\Exception\ErrorException]
file_get_contents(/sys/class/net/bonding_masters/type): failed to open stream: file or directory not found
I do not really understand this but I sense that sysfs is now involved in bonding and as far as I understand that is not as stable and persistent as the classical method.
Regards,
Michael
P.S.: One edit, because I did happen to turn off one of the interfaces at the switch during testing. This is now corrected - with the key error message remaining, though.