Solaris:无法 ping 逻辑区域接口

Solaris:无法 ping 逻辑区域接口

我在 Solaris 11 Express 上遇到以下问题。

我有一个名为 Zone1 的正在运行的区域,我想向其添加一个新接口。

我启动接口 bnx1:

ifconfig bnx1 plumb

将地址分配给接口并将其绑定到区域:

ifconfig bnx1 addif 172.16.13.11/16 zone Zone1 up

检查 ifconfig 输出:

bnx1: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 5
        inet 0.0.0.0 netmask ffffffff 
        ether 84:2b:2b:76:a1:88 
bnx1:1: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 5
        zone Zone1
        inet 172.16.13.11 netmask ffff0000 broadcast 172.16.255.255

检查 ARP 表:

# arp -a
Net to Media Table: IPv4
Device   IP Address               Mask      Flags      Phys Addr
------ -------------------- --------------- -------- ---------------
bnx1   172.16.13.11         255.255.255.255 SPLA     84:2b:2b:76:a1:88
bnx0   172.16.13.10         255.255.255.255 SPLA     84:2b:2b:76:a1:86

此时我还没有 ping 通该地址:

ping 172.16.13.11
no answer from 172.16.13.11

然后我断开 Zone1 接口:

ifconfig bnx1:1 unplumb

创建不绑定到 Zone1 的逻辑接口:

ifconfig bnx1 addif 172.16.13.11/16 up

检查 ifconfig 输出:

bnx1: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 5
        inet 0.0.0.0 netmask ffffffff 
        ether 84:2b:2b:76:a1:88 
bnx1:1: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 5
        inet 172.16.13.11 netmask ffff0000 broadcast 172.16.255.255 

检查 ARP 表:

# arp -a 
Net to Media Table: IPv4
Device   IP Address               Mask      Flags      Phys Addr
------ -------------------- --------------- -------- ---------------
bnx1   172.16.13.11         255.255.255.255 SPLA     84:2b:2b:76:a1:88
bnx0   172.16.13.10         255.255.255.255 SPLA     84:2b:2b:76:a1:86

现在我确实有一个 ping:

# ping 172.16.13.11
172.16.13.11 is alive

你能告诉我我错过了什么吗?

谢谢 !

答案1

我的猜测是,在第一种情况下,网络堆栈向 bnx0 发送 ping 操作,但没有收到回复,因为 bnx1 未连接到同一网络。在第二种情况下,ping 操作通过网络堆栈短路,因此立即成功。

一般情况下,我不建议以这种方式在同一子网上使用多个接口。如果您需要冗余,请使用 LACP(如果您的交换机支持)或 IPMP。如果您需要流量隔离,请为 bmz1 使用不同的子网。如果两者都不需要,只需向 bmz0 而不是 bmz1 添加一个新的虚拟接口即可。

相关内容