3

mininet を使用してネットワーク トポロジをエミュレートしました。トポロジには、複数のスイッチで接続された 2 つのホストが含まれています。ホスト 1でソケットを作成するクライアント アプリケーションを実行し、ホスト 2のサーバー アプリケーションに接続しようとしますが、失敗します。2 つのホストのいずれかでクライアント スクリプトとサーバー スクリプトをローカルで実行すると、問題なく接続されます。

サーバー.py:

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('127.0.0.1', 10021))
s.listen(5)
while 1:
  (clientsocket, address) = s.accept()
  #DO STH.
clientsocket.close()

client.py:

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((args['ip'], 10021))
while 1:
  #DO STH.
s.close()

ここで、サーバーおよびクライアント アプリケーションを起動するコマンドを実行するために使用されるコード

トポロジー.py:

server = net.getNodeByName('host2')
client = net.getNodeByName('host1')
server.cmd('./server.py & > serveroutput')
client.cmd('./client.py -i %serverIP > clientfile' % server.getIP())
4

2 に答える 2