본문 바로가기
IT적응기

서버 본딩(Bonding) 완벽 가이드 – 랜카드 2개로 속도·안정성 동시에 잡는 설정 방법 6가지 모드

by IT적응기 2026. 4. 18.

랜카드 2개로 속도·안정성 동시에 잡는 설정 방법 6가지 모드 참고이미지
서버 본딩(Bonding) 완벽 가이드

서버 본딩(Bonding) 완벽 가이드 – 랜카드 2개로 속도·안정성 동시에 잡는 설정 방법 6가지 모드

"서버 본딩"을 제대로 설정하면, 물리 랜카드 한 장이 죽어도 서비스 다운 없이 계속 동작하고, 여러 장의 랜카드를 묶어서 대역폭을 늘릴 수 있다.

서버 구축하다 보면 반드시 마주치는 게 본딩이다. 10Gbps 랜카드 두 장 꽂아놓고 묶으면 20Gbps처럼 쓸 수 있을 것 같고, 하나 장애 나도 다른 걸로 이어받으면 될 것 같다. 맞다. 근데 모드가 7가지나 있고, 스위치 설정이랑 맞아야 하고, 잘못 설정하면 오히려 트래픽이 끊기는 상황이 생긴다. 이 글에서 그 복잡함을 정리했다.

📌  목차

  • 서버 본딩이란 무엇인가 – 왜 랜카드를 묶는가
  • 본딩 모드 6가지 – 어떤 상황에 무엇을 써야 하나
  • Active-Backup vs LACP(802.3ad) – 현장에서 가장 많이 쓰는 두 가지
  • 리눅스에서 본딩 설정하는 방법 (실전 예시)
  • 스위치 설정과 연동 – LACP 구성 시 주의사항
  • 본딩 설정 후 모니터링 방법
  • 정리

🔗 서버 본딩이란 무엇인가 – 왜 랜카드를 묶는가

"서버 본딩(Server Bonding)"은 여러 개의 물리 네트워크 인터페이스를 하나의 논리 인터페이스로 묶는 기술이다. 리눅스 커널에서는 bonding 드라이버가 이 기능을 담당하고, 결과물로 bond0 같은 가상 인터페이스가 생긴다.

왜 묶는가? 두 가지 목적이다.

고가용성(HA, High Availability) 랜카드 하나가 물리적으로 고장나거나, 스위치 포트에 문제가 생기거나, 케이블이 빠져도 다른 랜카드가 트래픽을 이어받는다. 서비스 중단 없이 계속 운영된다.

대역폭 증가 여러 랜카드의 대역폭을 합쳐서 더 넓은 파이프를 만든다. 1Gbps 랜카드 4장을 묶으면 이론상 4Gbps 대역폭을 낼 수 있다. (실제로는 로드밸런싱 알고리즘에 따라 다르다)

서버실에서 본딩 안 된 서버는 SPOF(단일 장애점)를 안고 있는 거다. 중요한 서버라면 본딩은 기본 중의 기본이다.


🔢 본딩 모드 6가지 – 어떤 상황에 무엇을 써야 하나

리눅스 본딩은 mode 0부터 mode 6까지 7가지 모드를 지원한다.

Mode 0 – round-robin 패킷을 순서대로 각 인터페이스에 번갈아가며 보낸다. 로드밸런싱과 장애 조치가 모두 된다. 근데 문제가 있다. 패킷 순서가 뒤바뀔 수 있어서, TCP에서 성능 저하나 통신 오류가 발생할 수 있다. 스위치 설정이 필요 없지만, 실무에서는 잘 안 쓴다.

Mode 1 – active-backup 하나의 인터페이스만 활성화되고, 나머지는 대기 상태다. 활성 인터페이스가 장애나면 대기 중이던 인터페이스가 넘겨받는다. 가장 단순하고 안전하다. 대역폭 증가는 없다. 스위치에 특별한 설정이 필요 없다.

Mode 2 – balance-xor XOR 연산으로 어떤 인터페이스로 보낼지 결정한다. 출발지-목적지 MAC을 기반으로 하거나 IP 기반으로 해싱한다. 같은 목적지로 가는 패킷은 항상 같은 인터페이스로 나간다.

Mode 3 – broadcast 모든 인터페이스로 동시에 같은 패킷을 보낸다. 특수한 목적이 아니면 쓰지 않는다.

Mode 4 – 802.3ad (LACP) IEEE 표준 LACP(Link Aggregation Control Protocol)를 사용한다. 스위치와 협상해서 링크를 묶는다. 여러 인터페이스를 하나의 논리 채널로 묶어 대역폭을 늘린다. 스위치에서도 LACP 설정이 필요하다. 실무에서 가장 많이 쓰는 방식 중 하나다.

Mode 5 – balance-tlb (Adaptive Transmit Load Balancing) 스위치 지원 없이 송신(TX) 로드밸런싱을 한다. 현재 인터페이스 부하에 따라 어느 인터페이스로 보낼지 결정한다. 수신(RX)은 하나의 인터페이스만 사용.

Mode 6 – balance-alb (Adaptive Load Balancing) Mode 5에 수신 로드밸런싱까지 추가한다. ARP 협상을 이용해서 수신도 분산시킨다. 스위치 설정이 필요 없으면서 송신·수신 모두 로드밸런싱이 된다.


⚡ Active-Backup vs LACP(802.3ad) – 현장에서 가장 많이 쓰는 두 가지

현실에서는 Mode 1(active-backup)과 Mode 4(LACP) 중 하나를 선택하는 경우가 대부분이다.

Active-Backup(Mode 1)을 선택하는 경우

  • 스위치 설정 권한이 없거나, 관리 포인트를 줄이고 싶을 때
  • 순수하게 장애 조치(Failover)만 목적일 때
  • 서로 다른 스위치에 연결할 때 (Multi-homing) → LACP는 보통 같은 스위치끼리 묶어야 해서

LACP(Mode 4)를 선택하는 경우

  • 대역폭 확장이 필요할 때
  • 스위치에서 LAG(Link Aggregation Group) 설정이 가능할 때
  • 엔터프라이즈 환경에서 표준 방식을 따르고 싶을 때

주의사항: LACP를 쓸 때 서버와 스위치를 서로 다른 스위치에 연결하면 안 된다. LACP는 같은 LAG 그룹으로 인식할 수 없기 때문이다. 이때는 스위치 스택(Stack) 또는 MLAG 기술이 필요하다.


🛠️ 리눅스에서 본딩 설정하는 방법 (실전 예시)

RHEL/CentOS 계열에서 NetworkManager를 사용하는 방식:

# bond 인터페이스 생성
nmcli connection add type bond con-name bond0 ifname bond0 bond.options "mode=active-backup,miimon=100"

# 물리 인터페이스를 slave로 추가
nmcli connection add type ethernet con-name bond0-slave1 ifname ens3 master bond0
nmcli connection add type ethernet con-name bond0-slave2 ifname ens4 master bond0

# IP 주소 설정
nmcli connection modify bond0 ipv4.addresses 192.168.1.100/24 ipv4.method manual

# 활성화
nmcli connection up bond0

LACP(Mode 4) 방식으로 바꾸려면:

nmcli connection add type bond con-name bond0 ifname bond0 \
  bond.options "mode=802.3ad,miimon=100,lacp_rate=fast"

miimon 값은 링크 상태 체크 주기(ms)다. 100이면 100ms마다 체크한다. 값이 작을수록 장애 감지가 빠르지만 CPU 부하가 약간 올라간다.

본딩 상태 확인:

cat /proc/net/bonding/bond0

이 파일에서 현재 활성 인터페이스가 어떤 건지, 각 슬레이브 상태가 어떤지 볼 수 있다.


🔁 스위치 설정과 연동 – LACP 구성 시 주의사항

"서버 본딩"에서 LACP를 쓸 때 스위치 설정을 같이 해야 한다.

시스코 스위치 예시:

interface GigabitEthernet0/1
 channel-group 1 mode active

interface GigabitEthernet0/2
 channel-group 1 mode active

interface Port-channel1
 switchport mode trunk

스위치에서 mode active는 LACP를 능동적으로 협상한다는 의미다. 서버 측에서 LACP(mode=802.3ad)로 설정하면 양쪽이 협상해서 LAG가 구성된다.

주의할 점:

  • 서버의 두 랜카드를 서로 다른 스위치에 연결하면 일반 LACP로는 안 된다
  • 이 경우 스위치 스택(Stack)이나 MLAG/vPC 같은 기술로 논리적으로 하나의 스위치처럼 만들어야 한다
  • 케이블 연결 전에 스위치 포트 설정 먼저 하는 게 좋다. 순서가 꼬이면 스패닝 트리가 포트를 차단할 수 있다

📊 본딩 설정 후 모니터링 방법

"서버 본딩" 설정 후에는 실제로 제대로 동작하는지 확인해야 한다.

# 실시간 본딩 상태 확인
watch -n 1 cat /proc/net/bonding/bond0

# 트래픽 통계
ip -s link show bond0

# 특정 슬레이브 인터페이스 강제 다운으로 failover 테스트
ip link set ens3 down
# → 이후 bond0 상태에서 ens4가 Active가 됐는지 확인
ip link set ens3 up

장애 테스트는 실제 운영 투입 전에 반드시 해야 한다. 케이블을 직접 뽑아보거나, 스위치 포트를 shutdown해서 Failover가 실제로 일어나는지, 서비스가 이어지는지 확인하자.


"서버 본딩"은 서버 인프라에서 안정성과 성능을 동시에 잡을 수 있는 기술이다. 목적에 맞게 모드를 선택하고, 스위치와 연동을 제대로 하고, 장애 테스트까지 마쳐야 진짜 완성이다. 처음 세팅할 때 귀찮더라도 확실히 해두면, 새벽 2시에 장애 전화 받을 일이 줄어든다.


출처 및 참고


소개 및 문의 · 개인정보처리방침 · 면책조항

© 2026 깜짝,황금이 아빠 IT적응기

서치어드바이저