3.3. nmcli를 사용하여 네트워크 본딩 구성
명령줄에서 네트워크 본딩을 구성하려면 nmcli 유틸리티를 사용합니다.
사전 요구 사항
- 두 개 이상의 물리적 또는 가상 네트워크 장치가 서버에 설치됩니다.
- 이더넷 장치를 본딩의 포트로 사용하려면 물리적 또는 가상 이더넷 장치를 서버에 설치해야 합니다.
브리지 또는 VLAN 장치를 본딩 포트로 사용하려면 본딩을 생성하는 동안 이러한 장치를 생성하거나 다음에 설명된 대로 미리 생성할 수 있습니다.
프로세스
본딩 인터페이스를 생성합니다.
# nmcli connection add type bond con-name bond0 ifname bond0 bond.options "mode=active-backup"이 명령은
active-backup모드를 사용하는bond0이라는 본딩을 생성합니다.미디어 독립 인터페이스(MII) 모니터링 간격을 추가로 설정하려면
miimon=interval옵션을bond.options속성에 추가합니다. 예를 들면 다음과 같습니다.# nmcli connection add type bond con-name bond0 ifname bond0 bond.options "mode=active-backup,miimon=1000"네트워크 인터페이스를 표시하고 본딩에 추가할 인터페이스의 이름을 확인합니다.
# nmcli device status DEVICE TYPE STATE CONNECTION enp7s0 ethernet disconnected -- enp8s0 ethernet disconnected -- bridge0 bridge connected bridge0 bridge1 bridge connected bridge1 ...이 예제에서는 다음을 수행합니다.
-
enp7s0및enp8s0은 구성되어 있지 않습니다. 이러한 장치를 포트로 사용하려면 다음 단계에서 연결 프로필을 추가합니다. -
bridge0및bridge1에는 기존 연결 프로필이 있습니다. 이러한 장치를 포트로 사용하려면 다음 단계에서 프로필을 수정합니다.
-
본딩에 인터페이스를 할당합니다.
본딩에 할당하려는 인터페이스가 구성되지 않은 경우 새 연결 프로필을 생성합니다.
# nmcli connection add type ethernet port-type bond con-name bond0-port1 ifname enp7s0 controller bond0 # nmcli connection add type ethernet port-type bond con-name bond0-port2 ifname enp8s0 controller bond0이러한 명령은
enp7s0및enp8s0에 대한 프로필을 생성하고bond0연결에 추가합니다.기존 연결 프로필을 본딩에 할당하려면 다음을 수행합니다.
이러한 연결의
컨트롤러매개변수를bond0으로 설정합니다.# nmcli connection modify bridge0 controller bond0 # nmcli connection modify bridge1 controller bond0이러한 명령은
bridge0및bridge1이라는 기존 연결 프로필을bond0연결에 할당합니다.연결을 다시 활성화합니다.
# nmcli connection up bridge0 # nmcli connection up bridge1
IPv4 설정을 구성합니다.
정적 IPv4 주소, 네트워크 마스크, 기본 게이트웨이, DNS 서버를
bond0연결로 설정하려면 다음을 입력합니다.# nmcli connection modify bond0 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- DHCP를 사용하려면 작업이 필요하지 않습니다.
- 이 본딩 장치를 다른 장치의 포트로 사용하려는 경우 작업이 필요하지 않습니다.
IPv6 설정을 구성합니다.
정적 IPv6 주소, 네트워크 마스크, 기본 게이트웨이, DNS 서버를
bond0연결로 설정하려면 다음을 입력합니다.# nmcli connection modify bond0 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- SLAAC(stateless address autoconfiguration)를 사용하려면 작업이 필요하지 않습니다.
- 이 본딩 장치를 다른 장치의 포트로 사용하려는 경우 작업이 필요하지 않습니다.
선택 사항: 본딩 포트에서 매개변수를 설정하려면 다음 명령을 사용합니다.
# nmcli connection modify bond0-port1 bond-port.<parameter> <value>연결을 활성화합니다.
# nmcli connection up bond0포트가 연결되어 있고
CONNECTION열에 포트의 연결 이름이 표시되는지 확인합니다.# nmcli device DEVICE TYPE STATE CONNECTION ... enp7s0 ethernet connected bond0-port1 enp8s0 ethernet connected bond0-port2연결의 포트를 활성화하면 NetworkManager도 본딩을 활성화하지만 다른 포트는 활성화하지 않습니다. 본딩이 활성화되면 Red Hat Enterprise Linux에서 모든 포트를 자동으로 사용하도록 구성할 수 있습니다.
본딩 연결의
connection.autoconnect-ports매개변수를 활성화합니다.# nmcli connection modify bond0 connection.autoconnect-ports 1브리지를 다시 활성화합니다.
# nmcli connection up bond0
검증
네트워크 장치 중 하나에서 네트워크 케이블을 일시적으로 제거하고 본딩의 다른 장치가 트래픽을 처리하고 있는지 확인합니다.
소프트웨어 유틸리티를 사용하여 링크 실패 이벤트를 적절하게 테스트할 방법은 없습니다.
nmcli와 같은 연결을 비활성화하는 도구는 본딩 드라이버의 포트 구성 변경 사항만 표시하고 실제 링크 실패 이벤트는 표시하지 않습니다.본딩 상태를 표시합니다.
# cat /proc/net/bonding/bond0