Linux--网卡聚合简单脚本(bond0)
生活随笔
收集整理的這篇文章主要介紹了
Linux--网卡聚合简单脚本(bond0)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
#!/bin/bash
#by:cai#修改系統(tǒng)語言包,將zh_CN.UTF-8?改成?zh_CN.GB18030
#輸入命令:如vi??/etc/sysconfig/i18n?(注意改好之后必須重啟一下系統(tǒng)才行)
sed?-i?-e?'s/^/#/g'?-e?1i\LANG="zh_CN.GB18030"?/etc/sysconfig/i18n
source?/etc/sysconfig/i18n
echo?"##########################################################"
echo?"注意:如果在輸入的過程中輸錯,請按ctrl+backspace鍵刪除。"
echo?"##########################################################"bond_explain?()?{echo?"#########################################################################"echo?"mode=0表示load?balancing?(round-robin)為負載均衡方式,兩塊網(wǎng)卡都工作。mode=1表示fault-tolerance?(active-backup)提供冗余功能,工作方式是主備的工作方式,也就是說默認情況下只有一塊網(wǎng)卡工作,另一塊做備份.mode=2表示balance-x,提供負載均衡和冗余功能。mode=3表示broadcast,這個模式提供容錯性。mode=4表示802.3ad,提供了ethtool的迅速,以及使用了802.3ad模式mode=5表示balance-tlb,自動適應負載均衡,自動切換故障。在此基礎上Ethtool支持驅動。mode=6表示在5模式的基礎上優(yōu)化了arp的廣播信息。"echo?"###########################################################################"read?-p?"請你輸入一種你要的聚合方式(mode=1):"?MODE?read?-p?"請問你要創(chuàng)建聚合的名稱(bond0):"?BONDread?-p?"請輸入你要設置的ip(192.168.0.10):"?IPread?-p?"請輸入你要設置的netmask(255.255.255.0):"?NETMASKread?-p?"?請輸入你要設置的gateway(192.168.0.1):"?GATEWAY
}
bond_explain
network_explain?()?{echo?"###############################################"echo?"您現(xiàn)階段可以用的網(wǎng)卡,如下:"
# echo?`ifconfig?-a?|?grep???-i??link?|?awk??'{print?$1}'?`echo?`ifconfig?-a?|?grep???-i??"Link?encap"?|?awk?'{print?$1}'?`echo?"################################################"read?-p???"麻煩你選擇你要的網(wǎng)卡做聚合(eth0?eth1):"??NICecho?$NIC?>>?.tmp.txtNIC_num=`awk?'{print?NF?}'?.tmp.txt`for?i?in?`seq?$NIC_num`doNIC_true=`awk?-v??a=$i?'{?print?$a?}'?.tmp.txt`DIR_NIC=/etc/sysconfig/network-scriptsif?[?$NIC_true?==?$NIC_true?];thencp?$DIR_NIC/ifcfg-$NIC_true??$DIR_NIC/ifcfg-$NIC_true.bak
# cat?/dev/null?>?$DIR_NIC/ifcfg-$NIC_true# cat?>>?$DIR_NIC/ifcfg-$NIC_true?<<EOF
# BOOTPROTO=none
# TYPE=Ethernet
# DEVICE=$NIC_true
# ONBOOT=yes
# MASTER=$BOND
# SLAVE=yes
#EOF
#### 或者echo?"DEVICE=$NIC_trueMASTER=$BONDSLAVE=yes"?>>?$DIR_NIC/ifcfg-$NIC_true
# sed?-i?-e?"/^ONBOOT/"d?-e?/^DEVICE/a\ONBOOT=yes?$DIR_NIC/ifcfg-$NIC_truesed?-i?-e?"/^NM_CONTROLLED/"d?-e?/^DEVICE/a\NM_CONTROLLED=no?$DIR_NIC/ifcfg-$NIC_truesed?-i?-e?"/^BOOTPROTO/"d?-e?/^DEVICE/a\BOOTPROTO=none?$DIR_NIC/ifcfg-$NIC_truefi
donerm?-rf?.tmp.txt
# ?cat?>>$DIR_NIC/ifcfg-$BOND<<EOF
#
# DEVICE=$BOND
# ONBOOT=yes
# NM_CONTROLLED=no
# BOOTPROTO=static
#???????????????IPADDR=$IP
#???????????????NETMASK=$NETMASK
#???????????????GATEWAY=$GATEWAY
#EOF
#或者echo????"DEVICE=$BONDONBOOT=yesNM_CONTROLLED=noBOOTPROTO=staticIPADDR=$IPNETMASK=$NETMASKGATEWAY=$GATEWAY"?>>?$DIR_NIC/ifcfg-$BOND#echo?"?modify?modprobe.d/bond.conf"
echo?"#####?for?bond?configure?######"?>>?/etc/modprobe.d/bond.conf
echo?"alias?${BOND}?bonding"?>>?/etc/modprobe.d/bond.conf
echo?"options?${BOND}?miimon=100?${MODE}"?>>?/etc/modprobe.d/bond.conf
}
network_explain
echo?"全部配置完成,等待重啟網(wǎng)卡中。(ok)"
sleep?3
service?network?restart
轉載于:https://blog.51cto.com/chuny/1909276
總結
以上是生活随笔為你收集整理的Linux--网卡聚合简单脚本(bond0)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么设置路由器控制别人网速 怎么设置路由
- 下一篇: linux 其他常用命令