最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

LINUX双网卡绑定

来源:动视网 责编:小OO 时间:2025-10-01 10:20:32
文档

LINUX双网卡绑定

Linuxbondorteammultiplenetworkinterfaces(NIC)intosingleinterfaceFinallytodayIhadimplementedNICbounding(bindbothNICsothatitworksasasingledevice).WehavetwoDellserversthatneedsetupwithIntelDualGigNIC.Myideaistoimproveperformancebypumpingoutmoredatafrom
推荐度:
导读Linuxbondorteammultiplenetworkinterfaces(NIC)intosingleinterfaceFinallytodayIhadimplementedNICbounding(bindbothNICsothatitworksasasingledevice).WehavetwoDellserversthatneedsetupwithIntelDualGigNIC.Myideaistoimproveperformancebypumpingoutmoredatafrom
Linux bond or team multiple network interfaces (NIC) into single interface

Finally today I had implemented NIC bounding (bind both NIC so that it works as a single device). We have two Dell servers that need setup with Intel Dual Gig NIC. My idea is to improve performance by pumping out more data from both NIC without using any other method.

This box act as heavy duty ftp server. Each night I need to transfer over 200GB data from this box to another box. Therefore, the network would be setup is two servers on a switch using dual network cards. I am using Red Hat enterprise Linux version 4.0.

Linux allows binding multiple network interfaces into a single channel/NIC using special kernel module called bonding. According to official bonding documentation, "The Linux bonding driver provides a method for aggregating multiple network interfaces into a single logical "bonded" interface. The behavior of the bonded interfaces depends upon the mode; generally speaking, modes provide either hot standby or load balancing services. Additionally, link integrity monitoring may be performed."

Setting up bounding is easy with RHEL v4.0.

Step #1: Create a bond0 configuration file

Red Hat Linux stores network configuration in /etc/sysconfig/network-scripts/ directory. 

First, you need to create bond0 config file:

# vi /etc/sysconfig/network-scripts/ifcfg-bond0

Append following lines to it:DEVICE=bond0

IPADDR=192.168.1.20

NETWORK=192.168.1.0

NETMASK=255.255.255.0

USERCTL=no

BOOTPROTO=none

ONBOOT=yes

Replace above IP address with your actual IP address. Save file and exit to shell prompt.

Step #2: Modify eth0 and eth1 config files:

Open both configuration using vi text editor and make sure file read as follows for eth0 interface

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

Modify/append directive as follows:

DEVICE=eth0

USERCTL=no

ONBOOT=yes

MASTER=bond0

SLAVE=yes

BOOTPROTO=none

Open eth1 configuration file using vi text editor:

# vi /etc/sysconfig/network-scripts/ifcfg-eth1

Make sure file read as follows for eth1 interface:

DEVICE=eth1

USERCTL=no

ONBOOT=yes

MASTER=bond0

SLAVE=yes

BOOTPROTO=none

Save file and exit to shell prompt.

Step # 3: Load bond driver/module

Make sure bonding module is loaded when the channel-bonding interface (bond0) is brought up. You need to modify kernel modules configuration file:

# vi /etc/modprobe.conf

Append following two lines:

alias bond0 bonding

options bond0 mode=balance-alb miimon=100

Save file and exit to shell prompt. You can learn more about all bounding options in kernel source documentation file (click here to read file online).

Step # 4: Test configuration

First, load the bonding module:

# modprobe bonding

Restart networking service in order to bring up bond0 interface:

# service network restart

Verify everything is working:

# less /proc/net/bonding/bond0

Output:

Bonding Mode: load balancing (round-robin)

MII Status: up

MII Polling Interval (ms): 0

Up Delay (ms): 0

Down Delay (ms): 0

Slave Interface: eth0

MII Status: up

Link Failure Count: 0

Permanent HW addr: 00:0c:29:c6:be:59

Slave Interface: eth1

MII Status: up

Link Failure Count: 0

Permanent HW addr: 00:0c:29:c6:be:63

List all interfaces:# ifconfigOutput:

bond0     Link encap:Ethernet  HWaddr 00:0C:29:C6:BE:59

 inet addr:192.168.1.20  Bcast:192.168.1.255  Mask:255.255.255.0

 inet6 addr: fe80::200:ff:fe00:0/ Scope:Link

 UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1

 RX packets:2804 errors:0 dropped:0 overruns:0 frame:0

 TX packets:1879 errors:0 dropped:0 overruns:0 carrier:0

 collisions:0 txqueuelen:0

 RX bytes:250825 (244.9 KiB)  TX bytes:244683 (238.9 KiB)

eth0      Link encap:Ethernet  HWaddr 00:0C:29:C6:BE:59

 inet addr:192.168.1.20  Bcast:192.168.1.255  Mask:255.255.255.0

 inet6 addr: fe80::20c:29ff:fec6:be59/ Scope:Link

 UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1

 RX packets:2809 errors:0 dropped:0 overruns:0 frame:0

 TX packets:1390 errors:0 dropped:0 overruns:0 carrier:0

 collisions:0 txqueuelen:1000

 RX bytes:251161 (245.2 KiB)  TX bytes:1802 (176.0 KiB)

 Interrupt:11 Base address:0x1400

eth1      Link encap:Ethernet  HWaddr 00:0C:29:C6:BE:59

 inet addr:192.168.1.20  Bcast:192.168.1.255  Mask:255.255.255.0

 inet6 addr: fe80::20c:29ff:fec6:be59/ Scope:Link

 UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1

 RX packets:4 errors:0 dropped:0 overruns:0 frame:0

 TX packets:502 errors:0 dropped:0 overruns:0 carrier:0

 collisions:0 txqueuelen:1000

 RX bytes:258 (258.0 b)  TX bytes:66516 (.9 KiB)

 Interrupt:10 Base address:0x1480

Now you have bond multiple network interfaces into a single channel (NIC)

文档

LINUX双网卡绑定

Linuxbondorteammultiplenetworkinterfaces(NIC)intosingleinterfaceFinallytodayIhadimplementedNICbounding(bindbothNICsothatitworksasasingledevice).WehavetwoDellserversthatneedsetupwithIntelDualGigNIC.Myideaistoimproveperformancebypumpingoutmoredatafrom
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top