将mininet主机连接到互联网

时间:2018-05-19 04:39:46

标签: networking sdn mininet pox ryu

我尝试用1个开关(s1)和1个主机(h1)创建一个简单的topo。正如在互联网上所建议的那样,我用

为交换机's'添加了一个端口
ovs-vsctl add-port s1 enp0s3

并使用

配置主机
ifconfig h1-eth0 0
dhclient h1-eth0

据我所知,我所做的是为交换机添加一个新端口(到我的网络接口,enp0s3),这样连接到交换机的mininet主机就可以连接到互联网。然后在主机h1上设置dhcp服务器。

但是,我仍然无法从主机h1 ping任何服务器/网站。直接从虚拟机ping它确实有效。

我可以将mininet主机连接到互联网的其他方法吗?

2 个答案:

答案 0 :(得分:0)

我找到了最简单的解决方案

在命令中添加--nat。 例如。须藤mn --topo --nat

但是,这不能保证将哪些交换机连接到Internet,特别是如果您具有多层拓扑(> 2)

查看mininet常见问题解答,以获取有关添加自己的拓扑和控制器以通过NAT连接主机的更多详细信息。

答案 1 :(得分:0)

如果您使用python,则可以在examples / nat.py中使用简单的方法进行设置:

#!/usr/bin/python

"""
Example to create a Mininet topology and connect it to the internet via NAT
"""


from mininet.cli import CLI
from mininet.log import lg, info
from mininet.topolib import TreeNet


if __name__ == '__main__':
    lg.setLogLevel( 'info')
    net = TreeNet( depth=1, fanout=4 )
    # Add NAT connectivity
    net.addNAT().configDefault()
    net.start()
    info( "*** Hosts are running and should have internet connectivity\n" )
    info( "*** Type 'exit' or control-D to shut down network\n" )
    CLI( net )
    # Shut down NAT
    net.stop()