[Linux] 네트워크 본딩 [CentOS 7]

리눅스는 여러 물리적 ‘네트워크 인터페이스 카드(NIC)’를 묶어 하나의 본딩 된 채널로 만들 수 있습니다. 하나의 논리적 인터페이스처럼 사용할 수 있는 것을 네트워크 본딩이라고 합니다.

예를 들어 1기가(Gbps) 속도의 네트워크 포트 4개를 묶으면, 합쳐서 4기가 속도처럼 쓸 수 있어 더 빠릅니다.

또한, 하나의 포트나 케이블, 스위치에 문제가 생겨도 나머지가 대신해서 네트워크가 끊기지 않도록 안전하게 만들어 줍니다. 대역폭 확장보다는 장애 대비 목적으로 많이 사용됩니다.

네트워크 본딩은 여러 네트워크 장비와 운영체제에서 다양한 이름으로 불립니다.

  • 이더넷 본딩 (Ethernet Bonding)
  • 포트 트렁킹 (Port Trunking)
  • 채널 티밍 (Channel Teaming)
  • NIC 티밍 (NIC Teaming)
  • 링크 통합 (Link Aggregation)

✅ 네트워크 스위치 이중화 구성

단순하게 구성 예스로 만든 네트워크 스위치 이중화 구성입니다.

네트워크 스위치 이중화 (기본) - 네트워크 본딩 구성

네트워크 스위치, 회선, 포트 등에서 장애가 발생할 경우를 대비해 서버에서 본딩을 통해 이중화를 구성합니다.

CentOS에서는 본딩 설정 시 Active Backup (mode: 1) 방식을 많이 사용합니다. 예를 들어, Active Switch와 연결된 인터페이스가 eth0 Standby Switch와 연결된 인터페이스가 eth1일 때 eth0을 Primary로 지정해야 정상적으로 통신이 유지됩니다.

✅ 본딩 모드

본딩 모드는 본딩으로 묶일 예정인 여러 slave 장치들을 효율적으로 묶기 위한 여러가지 장치를 어떻게 묶고 동작 시킬지 결정하는 방식입니다.

보통 Round-robin 모드와 Active Backup 모드를 사용해서 네트워크 스위치가 802.3ad를 제공하고 스위치를 컨트롤이 가능한 경우 802.3ad를 사용합니다.

본딩의 여러 모드는 목적(속도 향상, 이중화 등)에 따라 다르게 작동합니다.

mode

이름(방법)

설명

0

Round-robin

· 기본값
· 순차적으로 트래픽 분산 (속도↑, 이중화)

1

Active-backup

· 자주 사용됨
· 하나는 사용, 하나는 대기 (이중화 전용)

2

XOR

· 해시 방식
· 특정 규칙에 따라 분산

3

Broadcast

모든 NIC에 동일 데이터 전송

4

802.3ad (LACP)

· 스위치 802.3ad 요구
· 스위치와 협력해 트래픽 분산 (속도↑, 이중화)

5

Adaptive transmit load balancing

송신 부하 분산

6

Adaptive load balancing

송수신 부하 분산

802.3ad“는 IEEE(국제전기전자학회)에서 정한 이더넷 링크 집계(Link Aggregation) 표준입니다. 숫자 802.3은 이더넷 표준을 정의하는 IEEE 작업 그룹 번호, 그 뒤의 ad는 부가적인 기능(Amendment)을 뜻합니다.

  • 802.3: 유선 이더넷 표준 전체를 의미
  • ad: 링크 집계(Link Aggregation)를 다룬 확장 규약
802.3ad = LACP (Link Aggregation Control Protocol) 와 동일한 의미로 사용되며, 여러 개의 네트워크 인터페이스를 하나의 논리적 인터페이스로 묶어서 트래픽을 자동으로 분산·이중화해주는 표준입니다.

✅ CentOS 7 네트워크 본딩 설정: nmtui

nmtui 방식으로 네트워크 본딩 설정을 진행해 보겠습니다. (mode: 1)

CentOS
    └── 네트워크 본딩 (bonding 1)
        ├── enp0s3(어댑터 1)   스위치 A
        └── enp0s8(어댑터 2)   스위치 B

🔲 VirtualBox 본딩 환경 만들기

VirtualBox 네트워크 본딩 테스트 위한 어댑터2 추가

🔲 본딩 구성 원칙

nmcli d 명령으로 현재 네트워크 인터페이스를 확인 후 nmtui를 실행합니다.

기존 이더넷 인터페이스에 IP 설정이 남아 있으면 본딩 설정과 충돌하거나 중복 IP 문제가 생길 수 있습니다.

따라서 본딩 구성 전에는 기존 개별 이더넷 인터페이스의 IP 설정을 삭제 후 본딩 인터페이스에만 IP를 할당하는 것이 안전합니다.

항목설정 방식설명
bond1수동 IP (Static) 또는 DHCPIP는 이 논리 인터페이스에만 설정
enp0s3, enp0s8“IPv4 없음”, “IPv6 없음”슬레이브이므로 IP를 직접 설정하지 않음
슬레이브 설정본딩에 종속(slave)으로 지정연결만 되게 해두고, IP는 받지 않음

🔲 본딩

[root@localhost ~]# nmcli d
DEVICE  TYPE      STATE          CONNECTION  
enp0s3  ethernet  연결됨         enp0s3      
enp0s8  ethernet  연결됨         유선 연결 1 
lo      loopback  관리되지 않음  --          
[root@localhost ~]# nmtui
nmtui 네트워크 본딩 설정 1

기존 유선 연결을 enp0s8로 변경했습니다.

nmtui 네트워크 본딩 설정 2
nmtui 네트워크 본딩 설정 3
nmtui 네트워크 본딩 설정 4_

프로파일 이름과 장치 이름을 설정합니다.

nmtui 네트워크 본딩 설정 5
nmtui 네트워크 본딩 설정 7
nmtui 네트워크 본딩 설정 6
nmtui 네트워크 본딩 설정 8
nmtui 네트워크 본딩 설정 9_모드 선택
nmtui 네트워크 본딩 설정 10_활성백업(Active-backup)_본딩1
nmtui 네트워크 본딩 설정 11_Primary 인터페이스 설정

수동 네트워크를 설정합니다.

nmtui 네트워크 본딩 설정 11_2_수동 네트워크 설정

저장이 안되어 확인 해 보느 [프로파일 이름]과 [장치]의 입력 값이 동일하면 [OK]가 활성화 되지 않습니다.

nmtui 네트워크 본딩 설정 12_저장
nmtui 네트워크 본딩 설정 13_완료

✅ 본딩 확인

systemctl restart network
nmcli d
CentOS 7_네트워크 본딩 확인

Similar Posts

  • 리눅스 백그라운드(Back Ground)&포그라운드(Fore Ground): 프로세스 제어하기

    리눅스의 프로세스는 백그라운드(Back Ground)와 포그라운드(Fore Ground) 두 가지의 모드로 작동됩니다. 리눅스 백그라운드 작업을 하는 이유는 일반적인 쉘 명령어를 실행했을 때 프로세스가 종료될 때까지 기다리면서 다른 작업을 하지 못하는 경우가 있기 때문입니다. 목차✅ 네트워크 스위치 이중화 구성✅ 본딩 모드✅ CentOS 7 네트워크 본딩 설정: nmtui🔲 VirtualBox 본딩 환경 만들기🔲 본딩 구성 원칙🔲 본딩✅ 본딩…

  • Apache&Nginx에 Varnish Cache 설치 및 설정

    기존 Apache와 Nginx 조합의 서버에 Varnish Cache를 추가로 설치하고 적용 해 보도록 하겠습니다. Nginx에 Varnish Cache를 추가로 설정하는 작업이기 때문에 기존의 서버에 적용된 사항을 체크 해 보겠습니다. AlmaLinux release 9.4 버전에 Apache/2.4.57, nginx/1.28.0 , PHP 8.3.22를 사용하기 때문에, 설치는 varnish, collectd-varnish, varnish-modules 총 3개의 모듈 설치를 진행합니다. 목차✅ 네트워크 스위치 이중화 구성✅ 본딩…

  • HTTP 503 에러(Service Unavailable) 원인과 해결

    웹사이트에 접속했을 때 발생하는 HTTP 503 에러(Service Unavailable)의 원인은 서버 측에서 발생하는 에러입니다. 서버 과부하, 서버 구성 오류 등 다양한 원인이 있습니다. 목차✅ 네트워크 스위치 이중화 구성✅ 본딩 모드✅ CentOS 7 네트워크 본딩 설정: nmtui🔲 VirtualBox 본딩 환경 만들기🔲 본딩 구성 원칙🔲 본딩✅ 본딩 확인✅ HTTP 503 에러 로그 확인하기 먼저 503 error이…

  • 리눅스 패키지(Linux Packag)란 무엇인가?

    리눅스 패키지(Linux Packag)를 윈도우와 비교하자면, 윈도우의 인스톨러 파일(.msi, .exe)는 소프트웨어를 설치하는 데 사용되며, 리눅스에서는 비슷한 개념으로 패키지 관리자를 이용하여 소프트웨어를 설치합니다. 리눅스 패키지는 실행파일, 라이브러리, 설정 파일 등을 하나의 패키지로 묶어 제공하며, 패키지 관리자를 통해 해당 패키지를 다운로드하고 시스템에 설치합니다. 윈도우의 인스톨러와 유사하게, 리눅스는 패키지 관리자를 통해 사용자가 소프트웨어를 쉽게 설치, 업데이트, 삭제할…

  • 리눅스 커널(Kernel)이란? | 커널 버전

    리눅스 커널과 커널은 같은 뜻을 가지고 있습니다. 커널을 말할 때 리눅스 커널을 이야기 하는 것입니다. 핵심(&알맹이)이라는 뜻을 가진 커널(Kernel)은 내부 계층에 속하며, Shell 명령과 하드웨어를 연결해 주는 역할을 합니다. 목차✅ 네트워크 스위치 이중화 구성✅ 본딩 모드✅ CentOS 7 네트워크 본딩 설정: nmtui🔲 VirtualBox 본딩 환경 만들기🔲 본딩 구성 원칙🔲 본딩✅ 본딩 확인리눅스 커널(Kernel)의…

  • 리눅스 Rsync 명령어

    Rsync (Remote Sync) 는 네트워크를 통해 파일과 디렉터리를 효율적으로 동기화하는 백업 방식입니다. 전체 데이터를 매번 복사하는 대신 변경된 부분만 증분 방식으로 전송하여 빠르고 안정적인 동기화를 지원합니다. 또한 다양한 옵션을 통해 압축, 암호화, 권한 유지, 삭제 동기화 등 세밀한 제어가 가능하며, 백업과 서버 간 데이터 전송에 널리 사용됩니다. 특히 네트워크 대역폭을 절약하고, 재 전송…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 2   +   8   =