4.3. nmcli를 사용하여 NIC 팀 구성
명령줄에서 NIC(네트워크 인터페이스 컨트롤러) 팀을 구성하려면 nmcli
유틸리티를 사용합니다.
NIC 팀은 Red Hat Enterprise Linux 9에서 더 이상 사용되지 않습니다. 서버를 RHEL의 향후 버전으로 업그레이드하려는 경우 커널 본딩 드라이버를 대안으로 사용하는 것이 좋습니다. 자세한 내용은 네트워크 본딩 구성을 참조하십시오.
사전 요구 사항
-
teamd
및NetworkManager-team
패키지가 설치됩니다. - 서버에 두 개 이상의 실제 또는 가상 네트워크 장치가 설치되어 있습니다.
- 이더넷 장치를 팀의 포트로 사용하려면 물리적 또는 가상 이더넷 장치를 서버에 설치하고 스위치에 연결해야 합니다.
본딩, 브리지 또는 VLAN 장치를 팀의 포트로 사용하려면 팀을 생성하는 동안 이러한 장치를 만들거나 에 설명된 대로 미리 생성할 수 있습니다.
절차
팀 인터페이스를 생성합니다.
# nmcli connection add type team con-name team0 ifname team0 team.runner activebackup
이 명령은
activebackup
러너를 사용하는team0
이라는 NIC 팀을 생성합니다.선택 사항: 링크 감시자를 설정합니다. 예를 들어
team0
연결 프로필에서ethtool
링크 감시자를 설정하려면 다음을 수행합니다.# nmcli connection modify team0 team.link-watchers "name=ethtool"
링크 감시자는 다양한 매개 변수를 지원합니다. 링크 감시자의 매개변수를 설정하려면
name
속성에 공백을 지정합니다. name 속성은 따옴표로 묶어야 합니다. 예를 들어ethtool
링크 감시자를 사용하여delay-up
매개변수를2500
밀리초(2.5초)로 설정하려면 다음을 수행합니다.# nmcli connection modify team0 team.link-watchers "name=ethtool delay-up=2500"
여러 링크 감시자와 각 링크 감시자를 특정 매개 변수로 설정하려면 링크 감시자를 쉼표로 구분해야 합니다. 다음 예제에서는
source-host
및target-host
매개변수를 사용하여delay-up
매개변수 및arp_ping
링크 감시자를 사용하여ethtool
링크 감시자를 설정합니다.# nmcli connection modify team0 team.link-watchers "name=ethtool delay-up=2, name=arp_ping source-host=192.0.2.1 target-host=192.0.2.2"
네트워크 인터페이스를 표시하고 팀에 추가할 인터페이스의 이름을 확인합니다.
# nmcli device status DEVICE TYPE STATE CONNECTION enp7s0 ethernet disconnected -- enp8s0 ethernet disconnected -- bond0 bond connected bond0 bond1 bond connected bond1 ...
이 예제에서는 다음을 수행합니다.
-
enp7s0
및enp8s0
은 구성되지 않습니다. 이러한 장치를 포트로 사용하려면 다음 단계에서 연결 프로필을 추가합니다. 연결에 할당되지 않은 팀의 이더넷 인터페이스만 사용할 수 있습니다. -
bond0
및bond1
에는 기존 연결 프로필이 있습니다. 이러한 장치를 포트로 사용하려면 다음 단계에서 프로필을 수정합니다.
-
포트 인터페이스를 팀에 할당합니다.
팀에 할당하려는 인터페이스가 구성되지 않은 경우 해당 인터페이스에 대한 새 연결 프로필을 생성합니다.
# nmcli connection add type ethernet slave-type team con-name team0-port1 ifname enp7s0 master team0 # nmcli connection add type ethernet slave--type team con-name team0-port2 ifname enp8s0 master team0
이러한 명령은
enp7s0
및enp8s0
에 대한 프로필을 생성하여team0
연결에 추가합니다.기존 연결 프로필을 팀에 할당하려면 다음을 수행합니다.
이러한 연결의
master
매개변수를team0
으로 설정합니다.# nmcli connection modify bond0 master team0 # nmcli connection modify bond1 master team0
이러한 명령은
bond0
및bond1
이라는 기존 연결 프로필을team0
연결에 할당합니다.연결을 다시 활성화합니다.
# nmcli connection up bond0 # nmcli connection up bond1
IPv4 설정을 구성합니다.
이 팀 장치를 다른 장치의 포트로 사용하려면 다음을 입력합니다.
# nmcli connection modify team0 ipv4.method disabled
- DHCP를 사용하려면 작업이 필요하지 않습니다.
정적 IPv4 주소, 네트워크 마스크, 기본 게이트웨이 및 DNS 서버를
team0
연결로 설정하려면 다음을 입력합니다.# nmcli connection modify team0 ipv4.addresses '192.0.2.1/24' ipv4.gateway '192.0.2.254' ipv4.dns '192.0.2.253' ipv4.dns-search 'example.com' ipv4.method manual
IPv6 설정을 구성합니다.
이 팀 장치를 다른 장치의 포트로 사용하려면 다음을 입력합니다.
# nmcli connection modify team0 ipv6.method disabled
- SLAAC(stateless address autoconfiguration)를 사용하려면 작업이 필요하지 않습니다.
정적 IPv6 주소, 네트워크 마스크, 기본 게이트웨이 및 DNS 서버를
team0
연결로 설정하려면 다음을 입력합니다.# nmcli connection modify team0 ipv6.addresses '2001:db8:1::1/64' ipv6.gateway '2001:db8:1::fffe' ipv6.dns '2001:db8:1::fffd' ipv6.dns-search 'example.com' ipv6.method manual
연결을 활성화합니다.
# nmcli connection up team0
검증
팀의 상태를 표시합니다.
# teamdctl team0 state setup: runner: activebackup ports: enp7s0 link watches: link summary: up instance[link_watch_0]: name: ethtool link: up down count: 0 enp8s0 link watches: link summary: up instance[link_watch_0]: name: ethtool link: up down count: 0 runner: active port: enp7s0
이 예제에서는 두 포트가 모두 up입니다.
추가 리소스
- 기본 게이트웨이를 제공하기 위해 특정 프로필을 사용하지 않도록 NetworkManager 구성
- teamd 서비스, 러너 및 link-watchers 이해
-
nm-settings(5) 도움말
페이지 -
teamd.conf(5)
man page