相關的配置檔案
/ect/hosts 配置主機名和IP地址的對應
/etc/sysconfig/network 配置主機名和閘道器
/etc/sysconfig/network-scripts/ifcfg-eth0 eth0配置檔案,eth1則檔名為ifcfg-eth1,以此類推
一、網路卡配置
假設我們要配置主機名為test,eth0的IP地址192.168.168.1/24,閘道器地址192.168.168.250
則/etc/sysconfig/network檔案內容如下:
NETWORKING=yes
HOSTNAME=test
GATEWAY=192.168.168.250
eth0對應的配置檔案/etc/sysconfig/network-scripts/ifcfg-eth0內容如下:
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.168.1
NETMASK=255.255.255.0
TYPE=Ethernet
ONBOOT=yes
二、單網路卡繫結多個IP
有時,我們需要在一塊網路卡上配置多個IP,例如,在上面的例子中,我們還需要為eth0配置IP 192.168.168.2和192.168.168.3。那麼需要再在/etc/sysconfig/network-scripts下新建兩個配置檔案:
ifcfg-eth0:0內容如下:
DEVICE=eth0:0
BOOTPROTO=static
IPADDR=192.168.168.2
NETMASK=255.255.255.0
ONBOOT=yes
ifcfg-eth0:1內容如下:
DEVICE=eth0:1
BOOTPROTO=static
IPADDR=192.168.168.3
NETMASK=255.255.255.0
ONBOOT=yes
三、多個網路卡繫結成一塊虛擬網路卡
為了提供網路的高可用性,我們可能需要將多塊網路卡繫結成一塊虛擬網路卡對外提供服務,這樣即使其中的一塊物理網路卡出現故障,也不會導致連線中斷。比如我們可以將eth0和eth1繫結成虛擬網路卡bond0
首先在/etc/sysconfig/network-scripts/下建立虛擬網路卡bond0的配置檔案ifcfg-bond0,內容如下
DEVICE=bond0
BOOTPROTO=none
BROADCAST=192.168.168.255
IPADDR=192.168.168.1
NETMASK=255.255.255.0
NETWORK=192.168.168.0
ONBOOT=yes
TYPE=Ethernet
GATEWAY=192.168.168.250
USERCTL=no
然後分別修改eth0和eth1的配置檔案
ifcfg-eth0內容:
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
USERCTL=no
MASTER=bond0
SLAVE=yes
ifcfg-eth1內容
DEVICE=eth1
BOOTPROTO=none
ONBOOT=yes
USERCTL=no
MASTER=bond0
SLAVE=yes
因為linux的虛擬網路卡是在核心模組中實現的,所以需要安裝的時候已經裝好該module。在/etc/modules.conf檔案中新增如下內容(如果沒有該檔案,則新建一個):
alias bond0 bonding
options bond0 miimon=100 mode=1 primary=eth0
其中miimon=100表示每100ms檢查一次鏈路連線狀態,如果不通則會切換物理網路卡
mode=1表示主備模式,也就是隻有一塊網路卡是active的,只提供失效保護。如果mode=0則是負載均衡模式的,所有的網路卡都是active,還有其他一些模式很少用到
primary=eth0表示主備模式下eth0為預設的active網路卡
最後,在/etc/rc.local中加入
modprobe bonding miimon=100 mode=1
重啟機器後可以看到虛擬網路卡已經生效,可以透過插拔兩個物理網路卡的網線來進行測試,不過linux中網路卡接管的時間好象比較長