使用 mac 地址或链接本地 ipv6 地址进行 ping

使用 mac 地址或链接本地 ipv6 地址进行 ping

我在运行 Ubuntu 12.04 的主机上运行了 4 台虚拟机 (Ubuntu 12.04)。虚拟机名称如下:

switch-vm
vm-1
vm-2
vm-3

以下是 switch-vm 上的网络设置:

Adapter 1:
    Intel PRO/1000 MT Desktop (Bridged adapter, eth0)
Adapter 2:
    Intel PRO/1000 MT Desktop (Internal network, 'intnet-1')
Adapter 3:
    Intel PRO/1000 MT Desktop (Internal network, 'intnet-2')
Adapter 4:
    Intel PRO/1000 MT Desktop (Internal network, 'intnet-3')

vm-1 上的网络设置:

Adapter 1:
    Intel PRO/1000 MT Desktop (Bridged adapter, eth0)
Adapter 2:
    Intel PRO/1000 MT Desktop (Internal network, 'intnet-1')

vm-2 上的网络设置:

Adapter 1:
    Intel PRO/1000 MT Desktop (Bridged adapter, eth0)
Adapter 2:
    Intel PRO/1000 MT Desktop (Internal network, 'intnet-2')

vm-3 上的网络设置:

Adapter 1:
    Intel PRO/1000 MT Desktop (Bridged adapter, eth0)
Adapter 2:
    Intel PRO/1000 MT Desktop (Internal network, 'intnet-3')

我已经在 switch-vm 上安装了 openvswitch:

sudo ovs-vsctl show 
sudo ovs-vsctl add-br lan0
sudo ovs-vsctl add-port lan0 eth1
sudo ovs-vsctl add-port lan0 eth4
sudo ovs-vsctl add-port lan0 eth5

这使得连接如下所示。

eth 1 on switch-vm ----- eth1 on vm-1
eth 4 on switch-vm ----- eth1 on vm-2
eth 5 on switch-vm ----- eth1 on vm-3

请注意,上面提到的六个接口没有 IP 地址。ifconfig接口上的 IP 地址如下所示。(例如:eth4在 switch-vm 上)

eth4      Link encap:Ethernet  HWaddr 08:00:27:80:e2:be  
          inet6 addr: fe80::a00:27ff:fe80:e2be/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:44 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:8538 (8.5 KB)

我想确保流量在上述所有三个连接之间双向流动。

有没有办法我可以使用ping或其他类似的工具来实现此目的?如果有,如何使用?

答案1

虽然我没有安装 openvswitch,但有一些标准的切换方法可以查看每个设备是否以预期的方式连接。我不确定确切的命令或语法,尽管我确实查看了他们的网站...

如果你使用的是思科交换机

show cam

将显示交换机看到的所有 MAC 地址以及它们所连接的端口和 VLAN。在此之前,您可能必须发送广播 ping(ping 255.255.255.255)以确保所有主机都已完成 ARP,从而显示在 CAM 表中。

看起来您的设置的等效命令是

ovs−ofctl dump−tables br0

打印出交换机的表统计信息。(一些流量通过后,这会更有趣。)

(可能是 vsctl)

http://openvswitch.org/cgi-bin/ovsman.cgi?page=utilities%2Fovs-ofctl.8

答案2

正如您所提到的,您在此网络中没有 IP 地址。这对于 IPv4 有效,但 IPv6 具有从 NIC MAC 地址继承的每个设备的链接本地地址,请注意:

    inet6 addr: fe80::a00:27ff:fe80:e2be/64 Scope:Link

假设每台机器都是 Linux 操作系统 OSX,则可以通过 IPV6 ping 每台机器:

从 vm-1 ping 到 switch-vm 的示例:

    root@switch-vm:~# ping6 -I intnet-1 fe80::a00:27ff:fe80:e2be

如果你想知道特定以太网卡的本地链路 IP 地址是什么,你可以使用在线转换器http://ben.akrin.com/?p=1347

相关内容