0

ryuとopenVswitchで簡単なsdnネットワークを作ろうとしているのですが、ryuコントローラーがうまく動かないようです。
2 つのホストに ping を実行しようとしていますが、コマンド
ryu-manager simple_switch_13.py
(事前に作成されたスクリプト) を実行すると、コントローラーは何もせず、パケットはデータパスによって転送されず、フラッディングさえしません。

ryu-manager を停止すると、次のトレースバックが表示されます。

  Traceback (most recent call last):
  File "/usr/bin/ryu-manager", line 9, in <module>
load_entry_point('ryu==3.19', 'console_scripts', 'ryu-manager')()
  File "/usr/lib/python2.7/dist-packages/ryu/cmd/manager.py", line 99, in main
hub.joinall(services)
  File "/usr/lib/python2.7/dist-packages/ryu/lib/hub.py", line 89, in joinall
t.wait()
  File "/usr/lib/python2.7/dist-packages/eventlet/greenthread.py", line 175, in wait
return self._exit_event.wait()
  File "/usr/lib/python2.7/dist-packages/eventlet/event.py", line 121, in wait
return hubs.get_hub().switch()
  File "/usr/lib/python2.7/dist-packages/eventlet/hubs/hub.py", line 294, in switch
return self.greenlet.switch()
  File "/usr/lib/python2.7/dist-packages/eventlet/hubs/hub.py", line 346, in run
self.wait(sleep_time)
  File "/usr/lib/python2.7/dist-packages/eventlet/hubs/poll.py", line 85, in wait
presult = self.do_poll(seconds)
  File "/usr/lib/python2.7/dist-packages/eventlet/hubs/epolls.py", line 62, in do_poll
return self.poll.poll(seconds)

simple_switch_13.py はビルド済みのスクリプトであるため、問題はコードにあるとは思いません。誰かが私が間違っていることを知っていますか? simple_switch_13.py の例をここで見つけることができます。

言い足りないことがあれば聞いてください、ありがとう。

4

1 に答える 1

0

最後に問題を解決しました。コードを変更していないため、データパス構成で見逃していたものだと思います。誰かがそれを必要とする場合は、ここに投稿します。

ifconfig eth0 add FC00:1::2/64 up
ifconfig eth1 10.0.0.2/24 up
ifconfig eth2 add FC02:1::2/64 up

/etc/init.d/openvswitch-switch start

ovs-vsctl add-br br1
ovs-vsctl add-port br1 eth1
ovs-vsctl set-controller br1 tcp:10.0.0.1:6633
于 2016-09-03T14:42:01.080 に答える