ここで言うトポロジーとは、ネットワークの接続形態の事を指しています。
Mininetでは、スクリプトを書いてトポロジー作れば、任意の仮想ネットワークを作ることができます。
ただ、トポロジーの書き方をネットで調べていましたが、どう書くのか良くわかりませんでした。
pythonで書けば良いという事は分かったのですが。
ところが先日、分かりやすいスクリプトが見つかりました。
そのスクリプトがこれです。
from mininet.net import Mininet
from mininet.node import Controller, OVSKernelSwitch, RemoteController
from mininet.cli import CLI
from mininet.log import setLogLevel, info
from mininet.util import createLink
# Create an empty network.
net = Mininet(controller=RemoteController, switch=OVSKernelSwitch)
net.addController('c0')
# Creating nodes in the network.
h0 = net.addHost('h0')
s0 = net.addSwitch('s0')
h1 = net.addHost('h1')
s1 = net.addSwitch('s1')
# Creating links between nodes in network.
h0int, s0int = createLink(h0, s0)
h1int, s1int = createLink(h1, s1)
s0pint, s1pint = createLink(s0, s1)
# Configuration of IP addresses in interfaces
s0.setIP(s0int, '192.168.1.1', 26)
h0.setIP(h0int, '192.168.1.2', 26)
s1.setIP(s1int, '192.168.1.65', 26)
h1.setIP(h1int, '192.168.1.66', 26)
s0.setIP(s0pint, '192.168.1.129', 26)
s1.setIP(s1pint, '192.168.1.130', 26)
# start stuff and present CLI
net.start()
CLI(net)
net.stop()
参考:http://lists.noxrepo.org/pipermail/pox-dev-noxrepo.org/2012-September/000231.html
このスクリプトでスイッチ2台、ホスト2台の仮想環境が作れます。
また、それぞれのインターフェイスに任意のIPアドレスを振っています。
このスクリプトを参考にして、トポロジーをカスタマイズしてみようと思います。
0 件のコメント:
コメントを投稿