RedHat系Linux的網絡配置是分別通過每個網卡的單獨配置實現的,雖然也可以用ifconfig配置,但重啟后會丟失。 相關的配置文件
/etc/hosts
配置主機名和IP地址的對應(在/etc/resolv.conf前生效)/etc/sysconfig/network
配置主機名和網關/etc/sysconfig/network-scripts/ifcfg-eth0
eth0的配置文件
- 網卡配置
#/etc/sysconfig/network
NETWORKING=yes
HOSTNAME=TEST
GATEWAY=192.168.2.50
#/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.2.36
NETMASK=255.255.255.0
NM_CONTROLLED=yes
DNS1=8.8.8.8
2.單網卡綁定多個IP 如果要為一個網卡配置兩個IP,如將兩個端口假定為eth0:0
和eth0:1
,然后在/etc/sysconfig/network-scripts
目錄下分別建立ifcfg-eth0:0
和ifcfg-eth0:1
兩個文件,里面按照需要配置就可以了。
3.多個網卡綁定成一塊邏輯網卡 為了提高網絡的高可用性,有時需要將多塊網卡綁定成一塊邏輯網卡對外提供服務,這樣即使其中一塊網卡出現故障,也不會導致連接中斷。如可以將eth0
和eth1
綁定成bond0
- 1.在
/etc/sysconfig/network-scripts/
下創網卡bond0
的配置文件ifcfg-bond0
,內容如下DEVICE=bond0TYPE=EthernetONBOOT=yesBOOTPROTO=noneBROADCAST=192.168.168.255IPADDRESS=192.168.168.250NETMASK=255.255.255.0GATEWAY=192.168.168.0USERCTL=no
- 2.分別修改
eth0
和eth1
的配置文件#ifcfg-eth0 DEVICE=eth0 BOOTPROTO=none ONBOOT=yes USERCTL=NO MASTER=bond0 SLAVE=yes
因為Linux的邏輯網卡是在內核模塊中實現的,所以需要安裝的時候已經裝好該module,在#ifcfg-eth1 DEVICE=eth1 BOOTPROTO=none ONBOOT=yes USERCTL=NO MASTER=bond0 SLAVE=yes
/etc/modules.conf
文件中添加如下內容(如沒有該文件,則重新創建)alias bond0 bonding options bond0 miimon=100 mode=1 primary=eth0
miimon=100
表示每100ms檢查一次鏈路狀態,如果不通則會切換物理網卡。mode=1
表示主備模式,也就是只有一個網卡處於激活狀態,只提供失效保護。mode=0
則是負載均衡模式的,所有的網卡都是激活狀態。primary=eth0
表示主備模式下,默認eth0是激活的網卡。 - 3.最后在
/etc/rc.local
中加入modeprobe bonding miimon=100 mode=1
重啟機器后可以看到虛擬網卡已經生效,可以通過插拔兩個物理網卡的網線來進行測試。