스크립트로 본딩하기
-스크립트내용-
#!/bin/bash
N_DIR=/etc/sysconfig/network-scripts/
read -p "device_name : " device
read -p "IPADDR : " IP
read -p "NETMASK : " NETMASK
read -p "GATEWAY : " GATEWAY
cp ${N_DIR}ifcfg-${device}0 ${N_DIR}${device}0.back
cp ${N_DIR}ifcfg-${device}1 ${N_DIR}${device}1.back
echo "DEVICE=${device}0" > ${N_DIR}ifcfg-${device}0
echo "TYPE=Ethernet" >> ${N_DIR}ifcfg-${device}0
echo "ONBOOT=yes" >> ${N_DIR}ifcfg-${device}0
echo "NM_CONTROLLED=no" >> ${N_DIR}ifcfg-${device}0
echo "BOOTPROTO=none" >> ${N_DIR}ifcfg-${device}0
echo "SLAVE=yes" >> ${N_DIR}ifcfg-${device}0
echo "MASTER=bond0" >> ${N_DIR}ifcfg-${device}0
echo "DEVICE=${device}1" > ${N_DIR}ifcfg-${device}1
echo "TYPE=Ethernet" >> ${N_DIR}ifcfg-${device}1
echo "ONBOOT=yes" >> ${N_DIR}ifcfg-${device}1
echo "NM_CONTROLLED=no" >> ${N_DIR}ifcfg-${device}1
echo "BOOTPROTO=none" >> ${N_DIR}ifcfg-${device}1
echo "SLAVE=yes" >> ${N_DIR}ifcfg-${device}1
echo "MASTER=bond0" >> ${N_DIR}ifcfg-${device}1
echo "DEVICE=bond0" > ${N_DIR}ifcfg-bond0
echo "TYPE=Ethernet" >> ${N_DIR}ifcfg-bond0
echo "ONBOOT=yes" >> ${N_DIR}ifcfg-bond0
echo "NM_CONTROLLED=no" >> ${N_DIR}ifcfg-bond0
echo "BOOTPROTO=static" >> ${N_DIR}ifcfg-bond0
echo "USERCTL=no" >> ${N_DIR}ifcfg-bond0
echo "IPADDR=${IP}" >> ${N_DIR}ifcfg-bond0
echo "NETMASK=${NETMASK}" >> ${N_DIR}ifcfg-bond0
echo "GATEWAY=${GATEWAY}" >> ${N_DIR}ifcfg-bond0
echo "BONDING_MASTER=yes" >> ${N_DIR}ifcfg-bond0
echo "alias bond0 bonding" > /etc/modprobe.d/bonding.conf
echo "options mode=1 miimon=100" >> /etc/modprobe.d/bonding.conf
-스크립트실행시-
device_name 쪽은 장치명을 적습니다. [ ex ) eth ]
IPADDR 쪽은 bond에 들어갈 ip주소를 적습니다. [ ex ) 192.168.189.10 ]
NETMASK 쪽은 NETMASK를 적습니다 [ ex ) 255.255.255.0 ]
GATEWAY 쪽은 GATEWAY IP를 적습니다 [ ex ) 192.168.189.254 ]
[root@centos6 ~]# sh bonding.sh
device_name : eth
IPADDR : 192.168.189.10
NETMASK : 255.255.255.0
GATEWAY : 192.168.189.254
[root@centos6 ~]# service network restart
-스크립트 실행후 확인-
bond0으로 IP올라온것 확인가능
기존의 네트워크 설정은 네트워크 설정 경로의 .back파일로 만들어집니다. [ ex ) eth0.back , eth1.back ]
[root@centos6 ~]# ifconfig
bond0 Link encap:Ethernet HWaddr 08:00:27:77:7A:F5
inet addr:192.168.189.10 Bcast:192.168.189.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe77:7af5/64 Scope:Link
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:73 errors:0 dropped:0 overruns:0 frame:0
TX packets:62 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:9587 (9.3 KiB) TX bytes:10370 (10.1 KiB)
eth0 Link encap:Ethernet HWaddr 08:00:27:77:7A:F5
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:1016 errors:0 dropped:0 overruns:0 frame:0
TX packets:629 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:86154 (84.1 KiB) TX bytes:66298 (64.7 KiB)
eth1 Link encap:Ethernet HWaddr 08:00:27:77:7A:F5
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:5 errors:0 dropped:0 overruns:0 frame:0
TX packets:34 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:300 (300.0 b) TX bytes:4864 (4.7 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:28 errors:0 dropped:0 overruns:0 frame:0
TX packets:28 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2180 (2.1 KiB) TX bytes:2180 (2.1 KiB)
가끔식 네트워크 시작이 0이아닌 1로 되는 경우도있으니 상황에 따라 수정해주세요
'리눅스' 카테고리의 다른 글
[Centos6,heartbeat] heartbeat을 이용한 이중화 방법 (0) | 2020.05.31 |
---|---|
[Python] 파이썬으로 첨부파일 메일보내기 feat.리눅스 (0) | 2020.05.24 |
[리눅스] 쉘 스크립트 이용해서 DB백업하기 (0) | 2020.05.17 |
[리눅스] 커맨드 기록하기 (0) | 2020.05.17 |
서버 원격 접속프로그램 추천 [ MobaXterm ] (0) | 2020.05.10 |