본문 바로가기
리눅스

리눅스 Bonding 방법

by 오자동K 2022. 11. 3.
반응형
SMALL

Bonding 이란?

여러개의 NIC (Network Interface Controller) 를 논리적으로 한개로 묶는 것이다.

 

Bonding 설정 방법 (실습예제)

VMware 셋팅

VMware 에서 CentOS7를 설치하고 기본 설정을 해줍니다. (리눅스 기본환경글 참조) https://kwonoj.tistory.com/20

저는 VMware 에서 랜카드를 두개 만들어줬어요. 방법은 세팅에 들어가서 랜카드를 추가해줬습니다.

저는 MobaXterm이라는 ssh 연결 프로그램으로 연결을 해주었습니다.

처음부터 ip를 알 수 없었으면 VMware에서 접속한 후에 ip addr명령어를 치면 ip 주소가 나옵니다.

ssh 연결 프로그램에 IP 정보와 22 포트 정보를 넣어주고 접속해줍니다.

ID와 PWD를 넣어주고 접속합니다.

네트워크 정보 확인하기

ip 정보를 ifconfig로 확인을 해줍니다.

ifconfig

그러면 ens33과 ens34가 등록이 되어있는것을 확인할 수 있습니다.

각각의 IP는 고정 또는 등록이 되어있습니다. 

네트워크 환경설정 변경

네트워크 환경설정을 위해서 network-scripts 경로로 가줍니다.

[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# ls -al
합계 248
drwxr-xr-x. 2 root root  4096 11월  1 18:08 .
drwxr-xr-x. 6 root root  4096 11월  1 17:18 ..
-rw-r--r--. 1 root root   330 11월  1 17:23 ifcfg-ens33
-rw-r--r--. 1 root root   303 11월  1 17:24 ifcfg-ens34
...
...
...

설정을 해줄 수 있는 두개의 NIC 가 있습니다.

각각의 설정값이 이미 들어있는데, 다음의 항목을 추가 또는 변경해줍니다.

[root@localhost network-scripts]# vi ifcfg-ens33
====================ens33=======================
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none <-------------------------변경
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33 <-------------------------변경
UUID=8bb0ef15-d95b-421a-9957-183c23726548
DEVICE=ens33 <-------------------------변경
ONBOOT=yes <-------------------------변경
MASTER=bond0 <-------------------------변경
SLAVE=yes <-------------------------변경
[root@localhost network-scripts]# vi ifcfg-ens34
==========================ens34======================
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp <-------------------------변경
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens34 <-------------------------변경
UUID=9b60b213-2af5-4400-8133-83df4a3c1784
DEVICE=ens34 <-------------------------변경
ONBOOT=yes <-------------------------변경
MASTER=bond0 <-------------------------변경
SLAVE=yes <-------------------------변경

두개의 파일을 변경했으면 bonding 설정 파일도 만들어줍니다.

[root@localhost network-scripts]# vi ifcfg-bond0
====================bond0======================
BOOTPROTO=none
NAME=bond0
DEVICE=bond0
ONBOOT=yes
TYPE=Bond
IPADDR=172.21.128.110
NETMASK=255.255.0.0
GATEWAY=172.21.0.2
BONDING_OPTS="mode=1 miimon=10 primary=ens33 fail_over_mac=1"

본딩 모듈 적재하기

적재가 제대로 되면 error 가 발생하지 않습니다. 저는 이미 만들었기 때문에 이미 커널이 존재한다고 에러가 발생했습니다.

[root@localhost network-scripts]# modprobe --first-time bonding
modprobe: ERROR: could not insert 'bonding': Module already in kernel

본딩 설정 적용 및 확인하기

[root@localhost network-scripts]# systemctl restart network

네트워크를 재시작 해주면 적용이 완료되었습니다. 이제 올바르게 본딩이 구성되었는지 확인해봅니다.

본딩 후 ifconfig

본딩을 마친 후에 제대로 설정이 되어있는지 확인을 해주도록 합니다.

여기서 본딩 옵션이 잘 적용되었는지 확인해주도록 합니다.

[root@localhost network-scripts]# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: fault-tolerance (active-backup) (fail_over_mac active)
Primary Slave: ens33 (primary_reselect always)
Currently Active Slave: ens33
MII Status: up
MII Polling Interval (ms): 10
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: ens33
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:0c:29:ed:38:9a
Slave queue ID: 0

Slave Interface: ens34
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:0c:29:ed:38:a4
Slave queue ID: 0

 

반응형
LIST

'리눅스' 카테고리의 다른 글

리눅스 서버 간 파일 복사 및 이동  (0) 2022.11.22
리눅스 기본환경 설정  (0) 2022.11.03
apache WEB WAS 연결하기  (0) 2022.06.28
CentOS7에서 Node.js 설치하기  (0) 2022.06.17
[Tomcat] Tomcat에 WAR 배포하기  (0) 2022.05.12

댓글