该场景由两个相互连接的路由器r1-r2组成(我在Mininet给出的示例中找到了LinuxRouter类)。将 3 台主机连接到 r1,每台主机属于不同的子网,网络 ping 正常。
class LinuxRouter( Node ):
def config( self, **params ):
super( LinuxRouter, self).config( **params )
self.cmd( 'sysctl net.ipv4.ip_forward=1' )
def terminate( self ):
self.cmd( 'sysctl net.ipv4.ip_forward=0' )
super( LinuxRouter, self ).terminate()
class NetworkTopo( Topo ):
def build( self, **_opts ):
r1 = self.addNode( 'r1', cls=LinuxRouter, ip='192.168.1.1/24' )
s1, s2, s3, s4= [ self.addSwitch( s ) for s in ( 's1', 's2', 's3','s4') ]
self.addLink( s1, r1, intfName2='r1-eth1', params2={ 'ip' : '192.168.1.1/24' } )
self.addLink( s2, …Run Code Online (Sandbox Code Playgroud)