1

我想从我的 POX 控制程序 ping 主机并检查响应。我想这样做来测试主机是否真的存在。我将如何从控制程序 ping 主机?

4

1 回答 1

0

快速的解决方案是使用 python 语言和操作系统功能进行 ping。假设您启动了 mininet 模拟器

sudo mn --controller=remote

首先给交换机一个 ip,以便 ping 找到通往主机的路由。打开一个新终端以 ssh 到您的 mininet vm

ssh -X mininet@192.168.56.101

如果您的 mininet vm 具有不同的 ip,请更改 192.168.56.101。在这种新的终端类型中

ifconfig s1

你应该得到类似的东西

        Link encap:Ethernet  HWaddr fa:64:44:9a:f9:4f  
        UP BROADCAST RUNNING  MTU:1500  Metric:1
        RX packets:0 errors:0 dropped:0 overruns:0 frame:0
        TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
        collisions:0 txqueuelen:0 
        RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

这表明您的交换机没有IP。为了给交换机一个ip,我们必须

sudo ifconfig s1 10.0.1.1

然后从您的 POX 程序 ping 连接到此交换机的主机(即 10.0.0.1)。

import os
host_ip = "10.0.0.1" #the host ip you want to ping from controller
response = os.system("ping -c 1 " + host_ip)

#check the response...
if response == 0:
    print host_ip, 'is up!'
else:
    print host_ip, 'is down!'
于 2016-06-06T17:09:07.420 回答