Help with boned adapter and DHCP ISC integration
So i have a bonded ethernet Adapter. The bond0 interface is working 100% correctly but the DHCP server refuses to hand out an IP when using a 2nd ethernet ethernet port for 77.77.77.1
For example i have a Dell R720XD with a 10GB SFP ethernet card with 2 ports.
My bond0 adapter is bonded across eths1-5.
Once i connect an ethernet cable into any of those 5 bonded ethernet ports to a client computer, i get an IP address with no problems.....
But as soon as i attempt to add a 2nd ethernet cable to eth ports 1-5 i do not get an IP.
It seems as if DHCP client IP address assignment is stopped halfway in-between the process.
I have confirmed the bonding is working with no problems and i have tried all bonding modes.
Anyone happen to know any good ways of debugging the kernel and the DHCP ISC server to see exactly where the problem is?
Also if i cant get this working with ICS DHCP is there another fast, high volume DHCP server i can use?
THE PROBLEM
DHCP ISC only allows me to only use 1 physical port for the set router in dhcpd.conf file regardless of the fact that 77.77.77.1 is the bond0 with the 5 selected ethernet ports.
THE GOALS
A
Get DHCP ISC working with a bonded interface while maintaining a single subnet
OR
B
Configure eth ports 1-5 as a switch pointing to, binded or bridged with 77.77.77.1 while maintaining a single subnet. I pretty much need to get the DHCP server running on ports 1-5. I need to somehow make ports 1-5 part of the 77.77.77.1 router without creating multiple router IPs for each port.
Why?
1. This allows me to have a 10GB DHCP network without purchasing a switch for an ungodly amount of money...
2. I do backups very often that exceed 1TB and sometimes i use my other R720XD to recover broken raids and i have to send the recovered data back over the network to my other R720XD that acts as my server and router.
3. I want to maintain a single small subnet for both performance and simplicity.
/etc/conf.d/net config
Tried with null setting enabled and disabled
Code:
#config_eth1="null"
#config_eth2="null"
#config_eth3="null"
#config_eth4="null"
#config_eth5="null"
slaves_bond0="eth1 eth2 eth3 eth4 eth5"
config_bond0="77.77.77.1 netmask 255.255.255.0"
mode_bond0="balance-alb"
/etc/dhcp/dhcpd.conf
Code:
subnet 77.77.77.0 netmask 255.255.255.0
{
range 77.77.77.2 77.77.77.254;
option routers 77.77.77.1;
option broadcast-address 77.77.77.255;
option domain-name FIXAPC;
option domain-name-servers 77.77.77.1, 8.8.8.8, 1.1.1.1;
default-lease-time -1;
max-lease-time -1;
}
My /etc/conf.d/dhcpd
I have set to bond only to bond0 interface or all interfaces involved in bonding.
Code:
# /etc/conf.d/dhcpd: config file for /etc/init.d/dhcpd
# If you require more than one instance of dhcpd you can create symbolic
# links to dhcpd service like so
# cd /etc/init.d
# ln -s dhcpd dhcpd.foo
# cd ../conf.d
# cp dhcpd dhcpd.foo
# Now you can edit dhcpd.foo and specify a different configuration file.
# You'll also need to specify a pidfile in that dhcpd.conf file.
# See the pid-file-name option in the dhcpd.conf man page for details.
# If you wish to run dhcpd in a chroot, uncomment the following line
# DHCPD_CHROOT="/var/lib/dhcp/chroot"
# All file paths below are relative to the chroot.
# You can specify a different chroot directory but MAKE SURE it's empty.
# Specify a configuration file - the default is /etc/dhcp/dhcpd.conf
# DHCPD_CONF="/etc/dhcp/dhcpd.conf"
# Configure which interface or interfaces to for dhcpd to listen on.
# List all interfaces space separated. If this is not specified then
# we listen on all interfaces.
DHCPD_IFACE="bond0 eth1 eth2 eth3 eth4 eth5"
# Insert any other dhcpd options - see the man page for a full list.
# DHCPD_OPTS=""
Output of route -n
Code:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 47.183.193.1 0.0.0.0 UG 9 0 0 eth0
47.183.193.0 0.0.0.0 255.255.255.0 U 9 0 0 eth0
77.77.77.0 0.0.0.0 255.255.255.0 U 0 0 0 bond0
127.0.0.0 127.0.0.1 255.0.0.0 UG 0 0 0 lo
Output of ifconfig
Code:
bond0: flags=5187<UP,BROADCAST,RUNNING,MASTER,MULTICAST> mtu 1500
inet 77.77.77.1 netmask 255.255.255.0 broadcast 77.77.77.255
inet6 fe80::92b1:1cff:fe45:368 prefixlen 64 scopeid 0x20<link>
ether 90:b1:1c:45:03:68 txqueuelen 1000 (Ethernet)
RX packets 2107785 bytes 285018996 (271.8 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 7209388 bytes 9992799492 (9.3 GiB)
TX errors 0 dropped 6 overruns 0 carrier 0 collisions 0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 47.183.193.110 netmask 255.255.255.0 broadcast 47.183.193.255
inet6 fe80::1301:bd2e:1dd2:8c2f prefixlen 64 scopeid 0x20<link>
ether 90:b1:1c:45:03:67 txqueuelen 1000 (Ethernet)
RX packets 7540142 bytes 10034797552 (9.3 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2090695 bytes 435261352 (415.0 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 41
eth1: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST> mtu 1500
ether 90:b1:1c:45:03:68 txqueuelen 1000 (Ethernet)
RX packets 2104771 bytes 284286007 (271.1 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 7162619 bytes 9925116701 (9.2 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 44
eth2: flags=6147<UP,BROADCAST,SLAVE,MULTICAST> mtu 1500
ether 90:b1:1c:45:03:68 txqueuelen 1000 (Ethernet)
RX packets 3014 bytes 732989 (715.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 46769 bytes 67682791 (64.5 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 45
eth3: flags=6147<UP,BROADCAST,SLAVE,MULTICAST> mtu 1500
ether 90:b1:1c:45:03:68 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 62
eth4: flags=6147<UP,BROADCAST,SLAVE,MULTICAST> mtu 1500
ether 90:b1:1c:45:03:68 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eth5: flags=6147<UP,BROADCAST,SLAVE,MULTICAST> mtu 1500
ether 90:b1:1c:45:03:68 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 1445347 bytes 230974708 (220.2 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1445347 bytes 230974708 (220.2 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0