欢迎来到之路教程(on itroad-com)

主备配置示例(使用测试地址)

在基于主动/备用探针的 IPMP 配置中,我们将 net2 设置为备用接口。
主备IPMP配置的详细配置如下:

IPMP group name   : ipmp0
Active interface  : e1000g1 (net1)
Standby interface : e1000g2 (net2)
Data IP address   :  192.168.1.10
Test IP address   :  192.168.1.11 and 192.168.1.12

创建要添加到 IPMP 组的 2 个接口:

# ipadm create-ipmp ipmp0

将我们刚刚创建的 2 个接口添加到 IPMP 组。

# ipadm create-ip net1
# ipadm create-ip net2
# ipadm add-ipmp -i net1 -i net2 ipmp0
# ipadm create-addr -T static -a 192.168.1.10 ipmp0/data1
# ipadm create-addr -T static -a 192.168.1.11 net1/test1
# ipadm create-addr -T static -a 192.168.1.12 net2/test2

将测试和数据地址分配给相应的接口:

# ipadm set-ifprop -p standby=on -m ip net2

要检查 IPMP 组的状态(观察 () 中的 net2 接口):

# ipmpstat -g
GROUP       GROUPNAME   STATE     FDT       INTERFACES
ipmp0       ipmp0       ok        10.00s    net1 (net2)

检查 IPMP 接口的 IP 地址(观察到我们只有 net1 作为出站接口,对比主动/主动配置):

# ipmpstat -an
ADDRESS                   STATE  GROUP       INBOUND     OUTBOUND
192.168.1.10              up     ipmp0       net1        net1

要检查各个接口的状态:

# ipmpstat -i
INTERFACE   ACTIVE  GROUP       FLAGS     LINK      PROBE     STATE
net2        no      ipmp0       is-----   up        ok        ok
net1        yes     ipmp0       --mb---   up        ok        ok

检查最终配置:

# ifconfig -a
lo0: flags=2001000849[UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL] mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
net1: flags=9040843[UP,BROADCAST,RUNNING,MULTICAST,DEPRECATED,IPv4,NOFAILOVER] mtu 1500 index 10
        inet 192.168.1.11 netmask ffffff00 broadcast 192.168.1.255
        groupname ipmp0
        ether 0:c:29:12:40:79
net2: flags=69040843[UP,BROADCAST,RUNNING,MULTICAST,DEPRECATED,IPv4,NOFAILOVER,STANDBY,INACTIVE] mtu 1500 index 11
        inet 192.168.1.12 netmask ffffff00 broadcast 192.168.1.255
        groupname ipmp0
        ether 0:c:29:12:40:83
ipmp0: flags=8001000843[UP,BROADCAST,RUNNING,MULTICAST,IPv4,IPMP] mtu 1500 index 9
        inet 192.168.1.10 netmask ffffff00 broadcast 192.168.1.255
        groupname ipmp0

Active/Active 配置示例(使用测试地址)

主动/主动 IPMP 配置的详细配置如下:

IPMP group name  : ipmp0
Active interface : e1000g1 (net1)
                   e1000g2 (net2)
Data IP address  :  192.168.1.10
Test IP address  :  192.168.1.11 and 192.168.1.12

首先创建 IPMP 组 ipmp0 :

# ipadm create-ipmp ipmp0

创建要添加到 IPMP 组的 2 个接口:

# ipadm create-ip net1
# ipadm create-ip net2

将我们刚刚创建的 2 个接口添加到 IPMP 组。

# ipadm add-ipmp -i net1 -i net2 ipmp0

将测试和数据地址分配给相应的接口:

# ipadm create-addr -T static -a 192.168.1.10 ipmp0/data1
# ipadm create-addr -T static -a 192.168.1.11 net1/test1
# ipadm create-addr -T static -a 192.168.1.12 net2/test2

要检查 IPMP 组的状态:

# ipmpstat -g
GROUP       GROUPNAME   STATE     FDT       INTERFACES
ipmp0       ipmp0       ok        10.00s    net2 net1

要检查 IPMP 组中的数据地址和接口:

# ipmpstat -an
ADDRESS                   STATE  GROUP       INBOUND     OUTBOUND
192.168.1.10              up     ipmp0       net1        net2 net1

检查各个接口状态

# ipmpstat -i
INTERFACE   ACTIVE  GROUP       FLAGS     LINK      PROBE     STATE
net2        yes     ipmp0       -------   up        ok        ok
net1        yes     ipmp0       --mb---   up        ok        ok
Here m -> the interface is used to send and receive multicast traffic in the IPMP group
b -> the interface is used to send and receive  broadcast traffic in the IPMP group
# ipmpstat -tn
INTERFACE   MODE       TESTADDR            TARGETS
net2        multicast  192.168.1.12        192.168.1.101
net1        multicast  192.168.1.11        192.168.1.101

如果我们观察上面的第 2 列,它会显示在基于探针的 IPMP 配置的情况下识别探针目标的模式。
不同的故障检测模式是:
路由系统路由表用于查找探测目标。

组播组播ICMP 探测用于查找目标。

已禁用基于探测器的故障检测。

传递传递探测用于故障检测。

最后验证 ifconfig 命令输出中的配置。

# ifconfig -a
lo0: flags=2001000849[UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL] mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
net1: flags=9040843[UP,BROADCAST,RUNNING,MULTICAST,DEPRECATED,IPv4,NOFAILOVER] mtu 1500 index 7
        inet 192.168.1.11 netmask ffffff00 broadcast 192.168.1.255
        groupname ipmp0
        ether 0:c:29:12:40:79
net2: flags=9040843[UP,BROADCAST,RUNNING,MULTICAST,DEPRECATED,IPv4,NOFAILOVER] mtu 1500 index 8
        inet 192.168.1.12 netmask ffffff00 broadcast 192.168.1.255
        groupname ipmp0
        ether 0:c:29:12:40:83
ipmp0: flags=8001000843[UP,BROADCAST,RUNNING,MULTICAST,IPv4,IPMP] mtu 1500 index 6
        inet 192.168.1.10 netmask ffffff00 broadcast 192.168.1.255
        groupname ipmp0
如何在 Solaris 11 中配置基于探测的 IPMP

Solaris 11 使用 2 种方法进行基于探针的故障检测

  1. 使用测试地址(默认方法)
  2. Transitive Probing 不使用测试地址

要启用传递探测:

# svccfg -s svc:/network/ipmp setprop config/transitive-probing=true
# svcadm refresh svc:/network/ipmp:default

要禁用传递探测:

# svccfg -s svc:/network/ipmp setprop config/transitive-probing=false
# svcadm refresh svc:/network/ipmp:default

要检查探测方法:

# ipmpstat -p
日期:2020-09-17 00:15:06 来源:oir作者:oir