使用 POX 控制器进行反向路径转发

Reverse path forwarding using POX controller

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

快速解决方案是使用 python 语言和 os capabilities.Assuming 使用

启动 mininet 模拟器进行 ping
sudo mn --controller=remote

先给交换机一个ip,让ping找到一条路由到host。打开一个新终端以通过 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)的 host。

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!'