1. 程式人生 > >Linux 配置ip 子介面 多網絡卡繫結

Linux 配置ip 子介面 多網絡卡繫結

linux系統配置ip地址,圖形化介面略過,這裡只介紹文字行。做以下設定注意是否有此許可權

檢視當前路由及閘道器資訊:
[[email protected] ~]# netstat -r
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.1.0     *               255.255.255.0   U         0 0          0 eth0
169.254.0.0     *               255.255.0.0     U         0 0          0 eth0
default         192.168.1.1     0.0.0.0         UG        0 0          0 eth0
檢視物理網絡卡資訊:
[[email protected] ~]# mii-tool [eth0]
eth0: negotiated 100baseTx-FD, link ok

ethtool eth0   檢視網絡卡物理資訊

ethtool -i eth0 檢視網絡卡驅動資訊

ethtool -S eth0 檢視網絡卡工作資訊

ifconfig命令:

檢視網絡卡介面資訊,預設列出所有介面
[[email protected] ~]# ifconfig

如果想知道主機所有網路介面的情況,請用下面的命令:
[[email protected] ~]# ifconfig -a
如果想檢視某個埠,比如檢視eth0 的狀態,就可以用下面的方法:
[[email protected] ~]# ifconfig eth0
臨時配置網絡卡資訊,無需重啟(重啟即消失)ifconfig 網路埠 IP地址 hw <HW> MAC地址 netmask 掩碼地址 broadcast 廣播地址 [up/down] [[email protected] ~]# ifconfig eth0 10.1.1.10 netmask 255.0.0.0

臨時配置閘道器 (重啟即消失) 
[[email protected] ~]# route add default gw 192.168.0.254
[[email protected] ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
# Intel Corporation 82545EM Gigabit Ethernet Controller (Copper) TYPE=Ethernet #網絡卡型別 DNS1=10.203.104.41 #網絡卡DNS地址 HWADDR=00:0C:29:13:5D:74 #網絡卡裝置MAC地址 BROADCAST=192.168.1.255 #網絡卡廣播地址
需要禁用NetworkManager 服務
service NetworkManager stop    #停止服務
chkconfig NetworkManager off #禁用服務,下次不自動啟動
臨時: ifconfig eth0:1 10.0.0.2 netmask 255.255.255.0 或者 ip addr add 10.0.0.2/24 dev eth0 label eth0:0
永久:在/etc/syscofig/network-scripts/ 下新建檔案
ifcfg-eth0:1
增加內容
   注意:真正的介面標識,不是ifcfg-xxx的檔名,而是ifcfg-eth0中的DEVICE專案,network檔案就是把/etc/sysconfig/network-script目錄下的所有檔案都遍歷一便,凡是ONBOOT=yes的都enable ,並且enable 到DEVICE=eth0這個名字上
方法一:
[[email protected] ~]# service network stop    #關閉網路服務
[[email protected] ~]# service network start   #啟動網路服務
[[email protected] ~]# service network restart #重啟網路服務
方法二:
[[email protected] ~]# /etc/init.d/network stop
[[email protected] ~]# /etc/init.d/network start
[[email protected] ~]# /etc/init.d/network restart 
網絡卡狀態查詢
[[email protected] ~]# service network status
Configured devices:
lo eth0
Currently active devices:
lo eth0
[[email protected] ~]# /etc/init.d/network status
3.fault-tolerance (broadcast), 4.lacp,  5.transmit load balancing, 6.adaptive load balancing。
一個網絡卡處於活動狀態 ,一個處於備份狀態,所有流量都在主鏈路上處理。當活動網絡卡down掉時,啟用備份的網絡卡。
首先在/etc/sysconfig/network-scripts/下建立虛擬網絡卡bond0的配置檔案ifcfg-bond0,內容如下

DEVICE=bond0

BOOTPROTO=none
IPADDR=192.168.168.1
NETMASK=255.255.255.0
ONBOOT=yes
TYPE=Ethernet
GATEWAY=192.168.168.250
USERCTL=no[BONDING_OPTS="mode=1 miimon=100"]  (本句配置對應後面選項二)

然後分別修改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網絡卡

miimon是毫秒數,每100毫秒觸發檢測線路穩定性的事件。
mode 是ifenslave的工作狀態。

選項二:

建立配置檔案 
cat /etc/modprobe.d/bonding.conf
寫入內容
alias bond0 bonding      (告訴作業系統 bond0 使用的驅動是bonding)

重啟服務,完成

檢視繫結在哪張網絡卡上 

# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.0.3 (March 23, 2006)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth0 
MII Status: up
MII Polling Interval (ms): 500
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth0
 
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:0c:29:01:4f:77

Slave Interface: eth1 
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:0c:29:01:4f:8b