TEAM2BOND(1)

πŸ“¦ version 1.31, in centos-stream 9

πŸ’… TEAM2BOND(1) β€” the team-to-bonding conversion tool, bestie edition

okay so this is team2bond, and it lives in manual section 1, and honestly? it's giving "glow-up for your network config" ✨


πŸ¦‹ NAME

team2bond β€” converts a team configuration into a NetworkManager bond configuration. yes, literally a whole personality transplant for your network device πŸ’–


🌸 SYNOPSIS

team2bond [options]

that's it. that's the whole vibe. options or bust πŸŽ€


✨ DESCRIPTION

team2bond is a tool that converts team options into bonding options. during the conversion, team2bond tries to create a bond configuration that has the same or similar functionality as the team β€” like, it's not a perfect clone, but it's the same energy, y'know? 🫢

so here's the deal: this tool converts a team JSON format configuration file into NetworkManager nmcli commands that you can use to set up a network bonding device. after you've verified the commands and deleted the corresponding team device, you run the nmcli commands manually β€” or with the parameter --exec β€” to create the NetworkManager connection profile. main character move: verify first, execute second πŸ”₯

Important: bestie, listen to me. deleting the team device makes this connection unavailable until you recreate the bond. like, fully gone. don't say I didn't warn you 😭

πŸŽ€ OPTIONS

  • --config <team json config file> β€” specifies the team JSON format configuration file to convert. use the 'teamdctl <TEAMNAME> config dump [actual]' command to create that JSON file. iykyk πŸ’…
  • --rename <interface> β€” a convenient option to replace the original interface name with the specified name. for example, use --rename bond0 to change the interface name to bond0. so chill, so easy. but β€” note that firewall rules, alias interfaces, and so on, that are tied to the original interface name can break after the renaming of an interface, because the tool only changes the NetworkManager profile. it's not doing magic, it's doing one thing πŸ™ˆ
  • --help β€” prints a help text to console and exits. the classic. the icon. 🧚

πŸ’€ DANGEROUS OPTION

  • --exec β€” executes the generated nmcli commands and adds the connections directly, instead of printing them to the screen. this parameter is NOT recommended. like, for real for real. double-check the generated commands before you apply them, no cap ⚠️

🌈 EXAMPLE STEPS

  1. save the current 'team0' ip addresses, firewall rules, alias, etc. (yes, all of it, don't skip this part πŸ“)
  2. dump the current 'team0' configuration to a JSON file. using the 'actual' option, team2bond dumps the actual config instead of the initial config:
# teamdctl team0 config dump actual > team0.json
  1. run the team2bond utility in dry-run mode to display nmcli commands that set up a network bond with similar settings as the team device:
# team2bond --config team0.json

to convert the current 'team0' configuration to a bonding connection profile and rename the interface name to 'bond0':

# team2bond --config team0.json --rename bond0
  1. examine these generated nmcli commands, and make sure all parameters are correct. be a responsible icon, check your work πŸ‘‘
  2. delete the team0 device by using the teamd or nmcli utility to avoid a device conflict. then execute the commands the team2bond utility displayed in the previous step manually, or use the --exec option:
# team2bond --config team0.json --rename bond0 --exec

⭐ CAVEATS

the tool will not convert any other configuration which might be tied to the current setup. for instance: IP addresses, firewall rules, alias interfaces, bridges, and so on. it does one job and it does it well, bestie β€” everything else is on you πŸ’œ


πŸ¦‹ AUTHOR

Hangbin Liu <haliu@redhat.com>


🌸 SEE ALSO

nmcli(1), teamdctl(8), teamd.conf(5).


and that's the whole page, periodt πŸ’… this came to you from libteam, dated 2021-07-20 β€” mwah, go forth and bond responsibly πŸ«Άβœ¨πŸŽ€

πŸ“¦ where this page comes from