您好,欢迎来到纷纭教育。
搜索
您的当前位置:首页solaris_双网卡绑定

solaris_双网卡绑定

来源:纷纭教育
首先说明:

Solaris操作系统的网卡绑定是需要购买sun的Trunking软件的.

本次文档记录的是Solaris自带的一个叫IPMP(IP网络多路径(IP Network Multipathing))

Ipmp是SOLARIS8操作环境的一种新特性,旨在在主机侧提供网络故障切换和IP连接集合。关键特性如下: 一. 功能

故障检测及故障切换(failover):当网络适配器(包括主机一侧或与之相连的网络设备一侧)发生故障时,IP Network Multipathing的故障检测特性提供了检测功能,自动把网络访问切换到备用网络适配器,真正消除了主机网络适配器的单点故障。

恢复检测(failback):当发生故障的网络适配器被修复后时,IP网络多路径的修理检测特性有能力执行检测,并自动把网络访问切换到原来提供服务的主要网络适配器。

出网负荷分布(outbound load spreading):高层应用可以向许多网络适配器分配网络数据包,以提高网络吞吐量。需要注意的是仅当网络通信量要通过许多连接发送到许多目的地时,才执行出网负荷分布。

二. 原理

在SOLARIS8操作系统中,由in.mpathd(/sbin/in.mpathd)后台进程(daemon)负责故障检测,并根据不同的策略实现了failover和failback。

检测物理接口的失败:in.mpathd所管理的主机系统的全部和部分网络接口组织成一个multipathing interface group,其中的每一个网络接口分别赋予了测试地址(test address)。在正常情况下,后台进程in.mpathd不断地通过组中每个网络接口测试地址向目标主机(target)发送ICMP ECHO包来检测相关网络接口的连通性。其中,目标主机一般选为本网络路由器(router),如果路由器存在,那么,将选择网络中的主机作为仲裁主机(arbitrary hosts)。在选择仲裁主机时,in.mpathd向网络上的所有主机发送multicast数据包,第一台返回响应数据包的主机将被认为是仲裁主机,此仲裁主机就是用来测试interface group中网络连通性的目标主机。在in.mpathd测试主机网络连通性的过程中,如果目标主机连续5次没有响应,in.mpathd认定相关连接已经失败,每次错误检测的缺省时间是10秒,也即大约每两秒检测一次。如果在multipathing interface group中配置了备用网口(standby),那么所有的网络访问将自动切向standby网络接口。

检测物理接口的恢复:为了检测失败的网络接口是否已经被修复,in.mpathd不断尝试通过该网口的测试地址向目标主机发送检测包,如果能够连续10次收到响应数据包,那么in.mpathd daemon认定该网口已经被修复,随后,所有被转移到备用网口(standby)的服务将自动恢复回原网口。

Solaris 10 IPMP 配置过程

使用IPMP实现网卡负载(网卡负载就是需要两张网卡共用一个IP地址实现网卡灾备功能)。修/etc/hosts、/etc/hostname.bge0、/etc/hostname.bge1、 /etc/defaultrouter、/etc/netmasks 五个文件,具体配置如下:

使用Solaris 10 的IPMP实现网卡负载均衡功能,网卡负载均衡即使用两个或两个以上的网卡共用一个IP地址,实现网卡灾备的功能。

在本例中实现此项功能需要配置/etc/hosts、/etc/hostname.vmxnet0、/etc/hostname.vmxnet1、 /etc/defaultrouter、/etc/netmasks 等五个文件。

以下过程为配置过程:

1.验证系统的版本

# uname -a

SunOS Solaris10 5.10 Generic_118855-33 i86pc i386 i86pc 或

# cat /etc/release

Solaris 10 11/06 s10x_u3wos_10 X86

Copyright 2006 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms. Assembled 14 November 2006

2.修改EPROM中的 local -mac -address

修改EPROM中的 local -mac -address?= 的参数值,设置网卡使用自身的MAC地址,重启后生效。

#eeprom local-mac-address?=true

注意:此命令在解除 ipmp 时是否需要更改

3.设置子网掩码

# vi /etc/netmasks

192.1.1.0 255.255.255.0

4.编辑 /etc/hosts 文件

# vi /etc/hosts #

# Internet host table #

127.0.0.1 localhost

192.1.1.200 Solaris10 #此地址为将要虚拟出来用于服务的IP地址

########configure for ipmp################

192.1.1.201 Solaris10-test1 #test ip 1 #此地址为 vmxnet0 的实际地址 192.1.1.202 Solaris10-test2 #test ip 2 #此地址为 vmxnet1 的实际地址 ##########################################

5.编辑 /etc/hostname.vmxnet0

# vi /etc/hostname.vmxnet0

Solaris10 netmask + broadcast + group fzu1 up addif Solaris10-test1 netmask + broadcast + deprecated - failover up

(apptest11 netmask + broadcast + group mswitch1 deprecated -failover up \\ addif app-1 netmask + broadcast + failover up)

注意: Solaris10为系统主机名

Solaris10-test1用于本次测试的ip地址 fzu1为本次测试的 IPMP 的组名

以上命令解释:

Solaris10 用于本案例的主机名称

netmask + 子网掩码由文件 /etc/netmasks 和 /etc/hostname.vmxnet0 计算的出 broadcast + 广播地址由文件 /etc/netmasks 和 /etc/hostname.vmxnet0 计算的出 group fzu1 设置本案例中的 IPMP 组名为 fzu1 addif Solaris10-test1 增加一个以 Solaris10-test1 的子接口 deprecated 标志此为一个测试用端口并不用于服务 - failover 标志此逻辑接口不用于故障切换 up 标志此逻辑接口启动

6.编辑 /etc/hostname.vmxnet1

# vi /etc/hostname.vmxnet1

Solaris10-test2 netmask + broadcast + group fzu1 deprecated - failover up

(apptest12 netmask + broadcast + group mswitch1 up deprecated -failover standby up)

注意: Solaris10为系统主机名

Solaris10-test1用于本次测试的ip地址 fzu1为本次测试的 IPMP 的组名

以上命令解释:

Solaris10-test2 设置一个用于本案例的 Solaris10-test2 的子接口 netmask + 子网掩码由文件 /etc/netmasks 和 /etc/hostname.vmxnet1 计算的出 broadcast +广播地址由文件 /etc/netmasks 和 /etc/hostname.vmxnet1 计算的出 group fzu1 设置本案例中的 IPMP 组名为 fzu1 deprecated 标志此为一个测试用端口并不用于服务

- failover 标志此逻辑接口不用于故障切换?是否不应该使用 -failover

而使用 failover呢??

up 标志此逻辑接口启动

7.设置 /etc/defaultrouter

# vi /etc/defaultrouter 192.1.1.253

#默认网关,IPMP会通过ping网关来检测主网卡是否正常,ping不通网关会进行切换网卡

8.测试

使用如下命令强行使网卡切换 #if_mpadm -d pcn2

使用如下重新启用网卡 #if_mpadm -r pcn2

可以观察到网卡地址的切换,现象如下:

root:/#ifconfig -a

lo0: flags=2001000849 mtu 8232 index 1

inet 127.0.0.1 netmask ff000000

vmxnet0: flags=1000843 mtu 1500 index 2 inet 192.1.1.200 netmask ffffff00 broadcast 192.1.1.255 groupname fzu1

ether 0:c:29:b3:21:d3

vmxnet0:1: flags=1040842 mtu 1500 index 2

inet 192.1.1.201 netmask ffffff00 broadcast 192.1.1.255

vmxnet1: flags=1040842 mtu 1500 index 3

inet 192.1.1.202 netmask ffffff00 broadcast 192.1.1.255 groupname fzu1

ether 0:c:29:b3:21:dd root:/#if_mpadm -d vmxnet0 root:/#ifconfig -a

lo0: flags=2001000849 mtu 8232 index 1

inet 127.0.0.1 netmask ff000000 vmxnet0:

flags=000842 mtu 0 index 2 inet 0.0.0.0 netmask 0 groupname fzu1

ether 0:c:29:b3:21:d3

vmxnet1: flags=1040842 mtu 1500 index 3

inet 192.1.1.202 netmask ffffff00 broadcast 192.1.1.255 groupname fzu1

ether 0:c:29:b3:21:dd

vmxnet1:1: flags=1000843 mtu 1500 index 3

inet 192.1.1.200 netmask ffffff00 broadcast 192.1.1.255

vmxnet1:2: flags=1040842 mtu 1500 index 3

inet 192.1.1.201 netmask ffffff00 broadcast 192.1.1.255

root:/#if_mpadm -r vmxnet0 root:/#ifconfig -a

lo0: flags=2001000849 mtu 8232 index 1

inet 127.0.0.1 netmask ff000000

vmxnet0: flags=1000843 mtu 1500 index 2 inet 192.1.1.200 netmask ffffff00 broadcast 192.1.1.255 groupname fzu1

ether 0:c:29:b3:21:d3

vmxnet0:1: flags=1040842 mtu 1500 index 2

inet 192.1.1.201 netmask ffffff00 broadcast 192.1.1.255

vmxnet1: flags=1040842 mtu 1500 index 3

inet 192.1.1.202 netmask ffffff00 broadcast 192.1.1.255 groupname fzu1

ether 0:c:29:b3:21:dd

本文来自CSDN博客,转载请http://blog.csdn.net/what132/archive/2010/04/17/5497229.aspx

标明出处:

solaris 双网卡绑定

1.查看物理网卡

首先查看系统中有多少块物理网卡,执行以下命令: dladm show-link

bge0 type: non-vlan mtu: 1500 device: bge0 bge1 type: non-vlan mtu: 1500 device: bge1 bge2 type: non-vlan mtu: 1500 device: bge2 bge3 type: non-vlan mtu: 1500 device: bge3

2.查看正在使用网卡

然后查看有哪些网卡正在使用:ifconfig -a

lo0: flags=2001000849 mtu 8232 index 1 inet 127.0.0.1 netmask ff000000

bge0: flags=1000843 mtu 1500 index 2 inet 59.37.54.108 netmask ffffffe0 broadcast 59.37.54.127 ether 0:14:4f:2c:b3:90

bge1: flags=1000842 mtu 1500 index 3 inet 0.0.0.0 netmask 0 ether 0:14:4f:2c:b3:91

bge2: flags=1000802 mtu 1500 index 4 inet 0.0.0.0 netmask 0 ether 0:14:4f:2c:b3:92

3.停止需要绑定的网卡

看看是哪两个网卡要做绑定,先把他们停止 ifconfig bge1 unplumb ifconfig bge2 unplumb

4.创建聚合链路

使用dladm创建聚合链路的虚拟网卡: dladm create-aggr -d bge1 -d bge2 1 dladm的命令语法如下:

dladm create-aggr -d interface -d interface [...] key interface 表示要成为聚合一部分的接口的设备名称。

key 是标识聚合的编号。最小的密钥编号是1。不允许将零用作密钥。

5.配置IP信息

为刚配置好的虚拟网卡配置IP,如: ifconfig aggr1 plumb 192.168.84.14 up

6.检查刚创建的聚合的状态

# dladm show-aggr

如果希望虚拟网卡的配置在系统重启之后仍然可以使用,则需要创建一个/etc/hostname.aggr1文件,文件内容为IP地址,总之,这个aggr1的网卡可以像普通网卡一样配置IP地址,具体的配置方法可以参考:配置或修改IP及主机名

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- fenyunshixun.cn 版权所有 湘ICP备2023022495号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务