首页 > 解决方案 > 192.168.56.3 无法联系遥控器

问题描述

早上好,

我想在 VirtualBox 中设置 OpenDayLight SDN 控制器和 Mininet。到目前为止,我都安装了它们并让它们运行。我的接口是:

对于这两个虚拟机。仅主机适配器的 IP 地址为 192.168.56.1。OpenDayLight VM 接收 192.168.56.3,Mininet VM 接收 192.168.56.4。

我能够 ping 两个虚拟机。我不能做的是使用以下命令创建一个简单的测试拓扑:

sudo mn --topo linear,3 --mac --controller=remote,ip=192.168.56.3,port=6633 --switch ovs,protocols=OpenFlow13

事实上,运行它会导致这个错误:

mininet@mininet-vm:~$ sudo mn --topo linear,3 --mac --controller=remote,ip=192.168.56.3,port=6633 --switch ovs,protocols=OpenFlow13
*** Creating network
*** Adding controller
Unable to contact the remote controller at 192.168.56.3:6633
*** Adding hosts:
h1 h2 h3
*** Adding switches:
s1 s2 s3
*** Adding links:
(h1, s1) (h2, s2) (h3, s3) (s2, s1) (s3, s2)
*** Configuring hosts
h1 h2 h3
*** Starting controller
c0
*** Starting 3 switches
s1 s2 s3 ...
*** Starting CLI:
mininet>

从主站点:

重要的故障排除 - 如果您在运行控制器的同一主机/桌面上运行 VirtualBox,并尝试在 Mininet VM 上启动虚拟网络会产生此错误:“无法在 ... 联系远程控制器”,那么以下解决问题:

在 VirtualBox 中,转到 File-Preferences-Network 并确保您至少有一个定义为 Host-Only 的接口。假设它的名字是 vboxnet0

在 VirtualBox - Mininet Vm - Settings - Network 中,检查适配器是否为 Host only 类型,并已连接到第 1 项 (vboxnet0) 的接口

在运行控制器和 VirtualBox 的主机上,执行“ifconfig”命令以显示机器上的所有网络接口。

搜索第 1 项中的接口(在我们的示例中为 vboxnet0)获取那里指定的 IP 地址(很可能是 192.168.56.1 - 默认值),这是在 mininet vm 中启动虚拟网络时使用的正确远程控制器 IP 地址在上面的示例中说明 (--controller=remote,ip=192.168.56.1) 。

如果您仍然无法连接,您可能需要考虑暂时禁用运行控制器的主机上的防火墙(例如,在 Linux 上,iptables -F 将完成这项工作)

有时,您启动 mininet 的方式有问题,它不会出错,但不会连接到远程服务器。这是一个错误的例子:

sudo mn --topo=tree,3 --mac --switch=ovsk --controller=remote, ip=192.168.16.10

下面是正确的例子:

sudo mn --topo=tree,3 --mac --switch=ovsk --controller=remote,ip=192.168.16.10

区别在于“remote”和“ip”之间的“SPACE”。

我看不到我想念什么。

先感谢您,

戴维德

标签: opendaylightmininet

解决方案


我终于设法解决了这个问题。 sudo ufw disablemininet 和 ODL 都解决了这个问题。再次感谢 jamo 的提示。


推荐阅读