1. FreeBSD:配置/etc/rc.confifconfig_interface="inet 192.168.1.5 255.255.255.0"ifconfig_interface_alias0="inet 192.168.1.6 255.255.255.0"注意interface是网卡设备名.2. Debian/etc/network/interfacesauto eth0iface eth0 inet staticaddress 192.168.1.145netmask 255.255.255.0network 192.168.1.0gateway 192.168.1.1另外一个IPauto eth0:1iface eth0:1 inet staticaddress 192.168.1.146netmask 255.255.255.0network 192.168.1.0gateway 192.168.1.13.CentOS:/etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0ONBOOT=yesHWADDR=00:0C:29:16:39:5FNETMASK=255.255.255.0IPADDR=192.168.1.147GATEWAY=192.168.1.1TYPE=Ethernet绑定另外一个IP, 创建另外一个文件, ifcfg-eth0DEVICE=eth0 // 注意还是eth0, 指示此IP绑定到eth0ONBOOT=yesHWADDR=00:0C:29:16:39:5FNETMASK=255.255.255.0IPADDR=192.168.1.148GATEWAY=192.168.1.1TYPE=Ethernet
关于CentOS双网卡绑定与多IP
在一些网卡/网络出现瓶颈时,可以考虑使用多网卡绑定一个IP或直接使用多个IP的方式获取更高的吞吐量。
Linux的双网卡绑定屡试不爽,但Linux多IP默认似乎都有问题(不能仅仅是分配多个IP)。特此记录:
多网卡绑定:
1、编辑虚拟网络接口配置文件(bond0),并指定网卡IP
vi /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
BOOTPROTO=static
BROADCAST=10.20.223.255
MACDDR=00:1E:90:76:6F:E2
IPADDR=10.20.223.113
NETMASK=255.255.254.0
NETWORK=10.20.222.0
USERCTL=no
ONBOOT=yes
GATEWAY=10.20.222.1
TYPE=Ethernet
BONDING_OPTS="mode=0 miimon=100"
注意:建议不要指定MAC地址
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ERCTL=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none
vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
USERCTL=no
ONBOOT=no
MASTER=bond0
SLAVE=yes
BOOTPROTO=none
2、编辑模块载入配置文件(/etc/modprobe.conf),开机 自动加载bonding模块到内核
alias bond0 bondingoptions bond0 miimon=100 mode=0说明:
miimon是用来进行链路监测的。 比 如:miimon=100,那么系统每100ms监测一次链路连接状态,如果有一条线路不通就转入另一条线路;
mode的值表示工作模式,他共有 0,1,2,3,4,5,6六种模式,常用为0,6,1三种,具体后面会介绍 mode=0,表示load balancing (round-robin)为负载均衡方式,两块网卡都工作,但是与网卡相连的交换必须做特殊配置( 这两个端口应该采取聚合方式),因为做bonding的这两块网卡是使用同一个MAC地址 mode=6,表示 load balancing (round-robin)为负载均衡方式,两块网卡都工作,但是该模式下无需配置交换机,因为做bonding的这两块 网卡是使用不同的MAC地址 mode=1,表示fault-tolerance (active-backup)提供冗余功能,工作方式是主备的工作方式,也就是说默认情况下只有一 块网卡工作,另一块做备份
注意:
bonding只能提供链路监测,即从主机到交换机的链路是否接通。如果只是交换机对外的链路down掉了,而交换机本身并没有故障,那么 bonding会认为链路没有问题而继续使用
3、加入开机启动
ifenslave bond0 eth0 eth14、重启系统后,eth0和eth1网卡显示“UP BROADCAST RUNNING SLAVE MULTICAST”,表示成功绑定
如果多网卡分别指定IP,不作IP绑定,操作如下:加入启动项/etc/rc.local中加入(更新路由表)
echo 1 > /proc/sys/net/ipv4/conf/all/arp_filter
route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.20.221.1 dev eth0
route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.20.221.1 dev eth1
ip route add to 0.0.0.0/0 via 10.20.221.1 dev eth0 table 10
ip route add to 0.0.0.0/0 via 10.20.221.1 dev eth1 table 20
ip rule add from 10.20.221.113/32 table 10
ip rule add from 10.20.221.131/32 table 20
Linux需要更新路由表,否则两个IP将都会指向同一个MAC地址(即同一张网卡),可以使用arping查看Ip对应的MAC地址。Windows则不需要做此配置。
在Windows中,一个网卡可以绑定多个IP地址,在Linux中也可以做到。操作起来也是非常的简单,只要编辑一下网络配置文件即可。一台普通的服务器都不止一块网卡,在Linux CentOS 5.5系统中,第一块网卡用eth0表示,第二块网卡用eth1表示,以此类推。Linux CentOS 5.5的网络配置文件在/etc/sysconfig/network-scripts 目录下。可以在这个目录下找到ifcfg-eth0 或ifcfg-eth1 文件,ifcfg-eth0就是第一块网卡的配置文件。ifcfg-eth1就是第二块网卡的配置文件。现在要在第二块网卡上绑定多个IP。操作如下:
cd /etc/sysconfig/network-scripts
cp ifcfg-eth0 ifcfg-eth1:1
vim ifcfg-eth1:1
打印出以下信息:DEVICE=eth1:1
BOOTPROTO=static
HWADDR=00:03:FF:43:1A:B9
ONBOOT=yes
IPADDR=192.168.1.251
NETMASK=255.255.255.0
注意配置文件名称和DEVICE的值对应。其中的DEVICE为设备的名称,IPADDR为此设备的IP地址,NETMASK为子网掩码,ONBOOT 表示在系统启动时自动启动。如果要再绑定一个IP,则再复制一个文件命名ifcfg-eth1:2,文件内容中的DEVICE名称修改为ifcfg-eth1:2即可,同时还有绑定的IP也得修改。这时再看这个目录
cd /etc/sysconfig/network-scripts
ls -al
打印出以下信息:
-rw-r--r-- 3 root root 227 Jan 19 01:36 ifcfg-eth1
-rw-r--r-- 1 root root 229 Feb 15 21:44 ifcfg-eth1:1
-rw-r--r-- 1 root root 229 Feb 15 21:48 ifcfg-eth1:2
……
接着重启网络
service network restart
打印出以下信息:
Shutting down interface eth1: [ OK ]
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface eth1: [ OK ]
查看服务器IP检查是否绑定成功:
ifconfig
打印出以下信息:
eth1 Link encap:Ethernet HWaddr 00:10:5A:20:69:C3
inet addr:192.168.1.250 Bcast:192.168.1.1 Mask:255.255.255.0
inet6 addr: fe80::210:5aff:fe20:69c2/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:42480344 errors:11811 dropped:0 overruns:6 frame:23622
TX packets:1697903 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2740134690 (2.5 GiB) TX bytes:714885771 (681.7 MiB)
Interrupt:66 Base address:0xc000
eth1:1 Link encap:Ethernet HWaddr 00:10:5A:20:69:C3
inet addr:192.168.1.251 Bcast:192.168.1.1 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:66 Base address:0xc000
eth1:2 Link encap:Ethernet HWaddr 00:10:5A:20:69:C3
inet addr:192.168.1.252 Bcast:192.168.1.1 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:66 Base address:0xc000
输出与刚才配置对应的信息表示绑定成功。