Here we are going to discuss about Network Teaming and Link Aggregation. Here Teaming will combine two network interfaces link to provide better performance in redundancy and throughput.
We can link Network Interface Card ( NIC ) together logically thorough Network Teaming method for higher throughput and failover condition.
teamd is the service and linux kernel driver which worked in teaming . In teaming, a runner manage load balancing and active backup . Teamd support runner , which consist of these method roundrobin, broadcast, activebackup, loadbalancer, lacp.
Check Existing Network Interfaces :
Display the existing available network interfaces . ip link command will be show the existing interface.
# ip link
Add the team interface and Configuring teaming :
In the teaming all the network interaction will be go through the team interface. Which will create by multiple network port interfaces . Here we will create team interface and apply the IPV4 parameters through nmcli tool utility.
Run the below command will create a team interface connection .
# nmcli con add type team con-name “connection–name” ifname “Interface Name”
In the above command we can also add runner configuration, which is based on JSON format , runner and json can be specifies like below command.
# nmcli con add type team con-name “CONNECTION NAME” ifname “INTERFACE NAME” team.config ‘{runner”:{name”: “OPTION”}}’
Runner having one different option method like broadcast, roundrobin, activebackup, loadbalance, lacp.
Below I have create my team interface with connection name team1 and interface name team1.
# nmcli con add type team con-name team1 ifname team1
If you want to add runner in config , you can pass in option section
# nmcli con add type team con-name team1 ifname team1 config ‘{“runner”:{name”: “ roundrobin”}}’
Assign Static ipv4 attributes on the team interface.
The below command will assign a static ipv4 address to the team0 interface.
#nmcli con mod team1 ipv4.address 192.168.0.11/24
#nmcli con mod team1 ipv4.method manual
Here in the team ipv4 assignment the ipv4 address should be assigned before to declearation of manual .
Create and Assign the port interfaces:
Here we are creating each of the port interfaces with below syntax.
# nmcli con add type team-slave con-name CONNECTTION NAME ifname INTERFACE_NAME master TEAM NAME
Where CONNECTION NAME will be the name to the port, INTERFACE NAME is the name of an existing interface and TEAM NAME will be the connection name of the network team interface.
#nmcli con add type team-slave ifname enp0s8 con-name team1-port master team1
#nmcli con add type team-slave ifname enp0s3 con-name team1-port2 master team1
Down and UP the team and port interfaces.
Here nmcli will also be used to manage team and port interfaces connection with below command.
# nmcli dev dis INTERFACE NAME
# nmcli con up CONNECTION NAME
Display the team interface status.
When the team interface will be up and we can check through below command status of team interfaces.
# teamdctl team1 state
#nmcli con show
#nmcli con show --active
Check the local network gateway through network team interface. Use another terminal and ping the local gateway thorugh ping command thorugh the team1 interface.
# ping –I team1 192.168.0.254
Uses of teamnl and teamdctl command :
Teamnl and teamdctl command is very useful command to check network teams, these command will only work on active teams interfaces.
- To Show team ports of the team1 interfaces :
# teamnl team1 ports
- To check active port of team1 :
# teamnl team0 getoption activeport
- To check status of team1 interface :
# teamdctl team1 state
I am a professional freelance contributor and the founder of Tech Transit. I hold certifications in Linux, Ansible, and OpenShift from Red Hat, as well as CPanel and ITIL certifications. With a passion for education, culture, and community, I love writing and sharing knowledge. Since 2009, I’ve been actively using, setting up, supporting, and maintaining Linux systems. Linux truly rocks!