- NEW초롱이의 하루
- kisa
- 길은 가면, 뒤에 있다
- C언어 예술가
- Zer0 day - Zer0 day
- Information Security
- Secure-EDU
- 앙큼한유채's 일상 Story
- Library of Ezbeat (잠정 폐쇄)
- The Factory
- 안드
- 모후모후의 커뮤니티
- 공학도의 잡다한 시선
- 안드2
- IT속에 코코아
- IP주소검색(whois)
- IP주소검색(좌표포함)
- 소프트웨어 경력 관리
- 해저 케이블 지도
- MAC주소검색
- IANA
- 포트번호검색
- 자신의IP확인
- 웹페이퍼캡처
- 나의패스워드보안등급
- 웹 취약점 분석
- IT용어정리
- GitHub
- 라이브러리 모음
- 웹마당넷
- 시스템콜참고
- BCD 변환
- 보안뉴스
- 코딩도장(C, Python)
- 백준알고리즘
- 코딩테스트 연습
- 웹 사이트 테스트
- 스크립트꾸미기
- ctf대회목록
- 전자신문
- hash 크랙
- CVE
- 도메인등록
- N클라우드
- BugBountyList
- 칼리공식사이트
- CR4FTING BOX
- 아스키코드 변환
- 웹 사이트 통계 및 평가
- PDF변환
- AWS 및 클라우드 정보
- 가상화 및 서버관련
- 티오리
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- RaspberryPi
- Linux
- synology
- API
- 쉘 스크립트 기초
- 쉘 스크립트
- 라즈베리파이
- 클라우드
- System
- Python
- 리눅스
- docker
- LEVIATHAN
- ACL
- Java
- 쉘 스크립트 if문
- JSP
- Shell script
- 프로젝트
- 자바
- Android
- 그라파나
- Tkinter
- nginx
- 메소드
- GUI
- centos docker
- 네트워크
- GPIO
- 안드로이드
- Today
- Total
IT창고
리눅스 본딩(Bonding) 본문
리눅스서버를 사용하면 네트워크를 연결하고 서비스를 하는데 네트워크 카드가 망가지거나 오류가 날수있습니다.
본딩(Bonding)은 리눅스에서 네트워크 카드를 두개 이상 사용해야만 사용할수있고 네트워크 카드(MIC)를 이중화할 수 있습니다. bonding의 장점은 대역폭을 확장할수있고 네트워크 카드가 하나 망가지면 다른 하나로 대처할수 있습니다.
본딩(bonding)을 설정하는 법을 알아보겠습니다. 본딩을 고정ip로 잡아보겠습니다.
1. 본딩을 사용하기위해서 네트워크 카드가 2개를 추가합니다.
만약 VMware를 사용한다면 Settings에 들어가 Add를 누르면 네트워크 어뎁터 추가가 있습니다. 거기서 NAT로 추가해줍니다. ifconfig -a을 입력해서 네트워크 카드가 추가 됬는지 확인해봅니다(eth1 확인)
2.네트워크 설정 파일을 수정 및 생성합니다.
cd /etc/sysconfig/network-scripts 의 디렉토리로 들어가서 파일 3개를 생성하고 수정해야합니다. 파일목록은 ifcfg-eth0 , ifcfg-eth1 , ifcfg-bond0 3개의 파일입니다. 아래의 내용을 vi편집기로 수정 및 생성해줍니다.
ifcfg-eth0 파일
DEVICE=eth0 //장치명
TYPE=Ethernet //통신타입
ONBOOT=yes //부팅시 활성화 여부
BOOTPROTO=none //IP할당방식(사용안함)
NM_CONTROLLED=no // 네트워크 매니저 데몬으로 해당장치 제어 여부
SLAVE=yes // SLAVE bonding 구성멤버로 동작
MASTER=bond0 // MASTER bonding에 실제 사용되는 장치명
ifcfg-eth1 파일
DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=none
NM_CONTROLLED=no
SLAVE=yes
MASTER=bond0
ifcfg-bond0 파일
DEVICE=bond0
TYPE=Ethernet
BOOTPROTO=static
ONBOOT=yes
USERCTL=no
NM_CONTROLLED=no
IPADDR=100.100.100.110 //bond0에 사용할 IP주소
NETMASK=255.255.255.0 //고정ip를 위한 설정
GATEWAY=100.100.100.2
BONDING_MASTER=yes // Bonding 주체 여부
BONDING_OPTS="mode=1 miimon=100" // 본딩 옵션 mode=1 (Active/Backup) miimon=100 모니터링 주기 (ms)
DNS1=8.8.8.8
DNS2=8.8.4.4
3. /etc/modprobe.d/bonding.conf 파일을 생성합니다.
bonding.conf파일은 커널에게 전달할 본딩 설정을 저장하고 있는 파일로 커널은 시스템에 적용할 기능이 있다면 해당 디렉토리에 위치한 .conf파일의 내용을 커널이 읽어 시스템에 작동을 합니다.
vi /etc/modprobe.d/bonding.conf 를 입력해서 맨아래 아래와 같이 입력하고 저장합니다.
alias bond0 bonding
options bond0 mode=1 miimon=100
이 두줄만 추가합니다.
4. 커널에 본딩(bonding) 기능을 사용합니다.
modprobe bond0 을 입력합니다. modprobe bonding 대신에 bond0를 사용하도록 alias가 설정되고 실제 사용하는 모듈은 bonding입니다. modprobe는 커널에게 사용할 기능(모듈)을 추가해주는 명령어 입니다.
5. 네트워크 데몬을 재시작합니다.
service network restart를 입력해서 본딩설정을 적용해줍니다.
6. 설정을 확인합니다.
먼저 ifconfig로 확인해봅니다. cat /proc/net/bonding/bond0 로 확인해볼수있습니다.
eth0가 네트워크 카드1번 eth1이 네트워크 카드 2번 입니다.
확인해보면 Active/Backup 모드로 설정되어있고 두개의 네트워크 카드가 본딩으로 설정되어있는 모습을 확인할수있습니다.
7. 본딩 절체 테스트를 해봅니다.
ssh로 세션을 두개 정도 열어두고 하나는 ping으로 계속 신호를 보내고 다른 세션에 watch -d -n 1 "cat /proc/net/bonding/bond0"으로 상태를 계속 확인해볼수있습니다. 실제 물리적 네트워크 카드라면 랜선을 하나 뽑아보고 VMware라면 네트워크 카드 하나를 연결종료해봅니다. 네트워크 카드 하나가 오작동을 해도 정상적으로 네트워크를 사용할수있음을 확인할수있습니다.
'서버운영 > Linux' 카테고리의 다른 글
리눅스 DNS 고급설정 (0) | 2017.09.19 |
---|---|
리눅스 DNS 설정 (0) | 2017.09.18 |
리눅스 DHCP (0) | 2017.09.15 |
리눅스 NTP (0) | 2017.09.14 |
리눅스 원격 접속 프로그램 (0) | 2017.09.13 |