【问题标题】:Mininet : Creating a host with multiple interfaces and assigning IP address using addLink()Mininet:创建具有多个接口的主机并使用 addLink() 分配 IP 地址
【发布时间】:2020-05-30 18:51:12
【问题描述】:

我想创建一个网络,其中 2 台主机通过 3 台相互连接 链接(每个链接属于不同的网络)

   _________10.0.0.0/31 network________________
  |                                            |
H1+---------10.0.1.0/31 network----------------+H2
  | ________10.0.2.0/31 network----------------|

我关注了the solution given in the mininet mailing list 尝试添加链接。

self.addLink( 'h1', s1, params1={'ip':'10.3/8'} )

虽然主机确实有 3 个接口,但只有一个 的接口被分配默认 IP 10.0.0.1/8 我仔细研究了源代码,我的做法应该可以工作,但我不明白为什么我的不行

from mininet.topo import Topo
from mininet.link import TCLink, Link
from mininet.net import Mininet

class MyTopo( Topo ):
    "Simple topology example."

    def __init__( self ):
        "Create custom topo."

        # Initialize topology
        Topo.__init__( self )

        # Add hosts and switches
        lH = self.addHost( 'h1' )
        rH = self.addHost( 'h2')

        # Add links
        self.addLink(lH, rH, bw = 10, delay='50ms', params1={ 'ip' : '10.0.0.1/31' }, params2={ 'ip' : '10.0.0.2/31' })
        self.addLink(lH, rH, bw = 1, delay='200ms', params1={ 'ip' : '10.1.0.1/31' }, params2={ 'ip' : '10.1.0.2/31' })
        self.addLink(lH,rH, bw = 0.1, delay='500ms',  params1={ 'ip' : '10.2.0.1/31' }, params2={ 'ip' : '10.2.0.2/31' })

topos = { 'mytopo': ( lambda: MyTopo() ) }

【问题讨论】:

    标签: python mininet


    【解决方案1】:

    我只需要将intf=TCIntf 传递给addLink() 函数并传递适当的参数

    self.addLink(lH, rH, intf=TCIntf,  params1={'delay':'50ms', 'bw' : 10, 'ip' : '10.0.0.1/24' }
    

    【讨论】:

      猜你喜欢
      • 2017-05-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-14
      • 2023-03-28
      • 2017-09-23
      相关资源
      最近更新 更多