1

POX 制御プログラムからホストに ping を実行し、応答を確認したいと考えています。ホストが実際に存在するかどうかをテストするためにこれを実行したいと思います。制御プログラムからホストに ping を送信するにはどうすればよいですか?

4

1 に答える 1

0

迅速な解決策は、python 言語と os 機能を使用して ping を実行することです。

sudo mn --controller=remote

最初に、ping がホストへのルートを見つけるために、スイッチに IP を与えます。mininet vm に ssh するための新しいターミナルを開きます

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 プログラムから、このスイッチ (つまり、10.0.0.1) に接続されているホストに ping を実行します。

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 に答える