네트워크

네트워크 인터페이스를 병합하거나 "bonding" 할 때 사용되는 ifenslave에 대해 알아보겠습니다.

forward error correction Circle 2023. 9. 6. 09:51
반응형

Ⅰ. ifenslave 란 ?

ifenslave 명령어는 리눅스에서 사용되는 네트워크 인터페이스를 병합하거나 "bonding"하는데 사용됩니다. 이것은 고가용성, 로드 밸런싱 및 장애 조치를 구현하는 데 도움이 되는 네트워크 구성을 제공합니다.

보통 ifenslave 명령어는 두 개 이상의 네트워크 인터페이스를 하나의 가상 인터페이스로 결합하는 데 사용됩니다. 이것을 "bonded interface" 또는 "bond interface"라고 합니다. 이러한 bond 인터페이스는 기본 네트워크 인터페이스의 결합을 통해 더 높은 대역폭과 가용성을 제공합니다.

 

Ⅱ. ifenslave 사용법
ifenslave 명령어의 사용법은 다음과 같습니다:

ifenslave bond0 [인터페이스명#1] [인터페이스명#2]

bond0는 생성할 bond 인터페이스의 이름입니다.
인터페이스1, 인터페이스2, 등은 결합할 기본 네트워크 인터페이스의 이름입니다.


ifenslave를 사용하려면 해당 시스템에 bonding 모듈이 로드되어 있어야 하고, 설정은 /etc/network/interfaces 또는 /etc/sysconfig/network-scripts/ifcfg-bond0와 같은 네트워크 설정 파일에서 구성됩니다.


* bonding 모듈 확인 방법
1) lsmod 명령어 사용:
다음 명령어를 터미널에서 실행하여 현재 로드된 커널 모듈을 나열합니다.
lsmod | grep bonding
이 명령어를 실행하면 bonding 모듈이 로드되어 있으면 관련 정보가 나타납니다.

2)/proc 파일 시스템 검사:
/proc 파일 시스템은 리눅스 커널의 정보를 제공하는 가상 파일 시스템입니다. bonding 모듈이 로드되어 있는지 확인하려면 다음 명령어를 사용할 수 있습니다.
cat /proc/net/bonding/bond0
이 명령어는 bond0 또는 다른 bond 인터페이스 이름에 따라 해당 인터페이스에 대한 정보를 표시합니다. 만약 bonding 모듈이 로드되어 있지 않거나 해당 bond 인터페이스가 없다면 이 파일은 존재하지 않을 것입니다.

3) modprobe 명령어 사용:
다음 명령어를 사용하여 bonding 모듈을 수동으로 로드할 수 있습니다.
modprobe bonding
이 명령어를 실행하면 bonding 모듈이 로드되고, lsmod | grep bonding 명령어로 확인할 수 있습니다.

 

Ⅲ. 본딩 상태 확인 및 Active Slave 변경
   1. cat /proc/net/bonding/bond0 

        해당 파일은 리눅스에서 bond0 또는 다른 bond 인터페이스에 대한 bonding 드라이버의 정보를 포함하는 가상 파일입

        니다. 이 파일을 통해 bond 인터페이스의 상태와 구성에 관한 정보를 확인 할 수 있습니다.

   
Ethernet Interfaces bond 인터페이스에 소속된 이더넷 인터페이스의 목록 및 관련 정보
Bonding Mode bond 모드 (예: balance-rr, active-backup, balance-xor 등)
Currently Active Slave 현재 활성화된 슬레이브 인터페이스
MII Status 모든 슬레이브 인터페이스의 MII(매체 독립적 인터페이스) 상태
Link Failure Count 슬레이브 인터페이스의 링크 실패 횟수
Primary Slave 주 슬레이브 인터페이스
Aggregator ID Aggregator ID (만약 802.3ad(LACP) 모드를 사용한다면)
Number of Slaves bond 인터페이스에 속한 슬레이브 인터페이스의 수
ARP Targets ARP 목표 주소 목록 (보통 active-backup 모드에서 사용)
ARP Interval  ARP 요청 간격

   2. Active - Slave 변경

ifenslave -c bond0 [인터페이스명#2]

* Bond0 이라는 본딩 내 설정되어있는 인터페이스들 중 Primary 로 설정할 인터페이스명 입력

    3. cat /proc/net/bonding/bond0 

Active 및  slave 값 확인


.

반응형