Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

socket连接失败 #2

Open
yhx-coder opened this issue Nov 18, 2021 · 5 comments
Open

socket连接失败 #2

yhx-coder opened this issue Nov 18, 2021 · 5 comments

Comments

@yhx-coder
Copy link

yhx-coder commented Nov 18, 2021

请问 app.py文件下 genHostLink(self,host)函数中
1.mininet中的主机是要和谁连接?
2.self.socketPort 该如何设置?
非常期待您的回复,谢谢。
————————————————————————————————————————
近几天的尝试:
我认为socket是mininet中host与真实主机的连接。建立时需要在s999上配置与物理网卡相同网段的地址,即增加 os.popen('ifconfig s999 192.168.80.200 netmask 255.255.255.0')。便可连接成功

@anyangayi
Copy link

您好,我尝试了配置相同网段的地址后依旧无法连接成功,请问socketPort要设置为何值呢?以及,主机和s999是否要配置一些路由表呢?感谢

@yhx-coder
Copy link
Author

您好,我尝试了配置相同网段的地址后依旧无法连接成功,请问socketPort要设置为何值呢?以及,主机和s999是否要配置一些路由表呢?感谢

具体配置记不清了,大概是把mininet中主机和物理机都插在一个ovs上,然后需要在物理机配路由。ovs好像不用ip也可,他们已经成了一个二层的网络。

@anyangayi
Copy link

您好,我尝试了配置相同网段的地址后依旧无法连接成功,请问socketPort要设置为何值呢?以及,主机和s999是否要配置一些路由表呢?感谢

具体配置记不清了,大概是把mininet中主机和物理机都插在一个ovs上,然后需要在物理机配路由。ovs好像不用ip也可,他们已经成了一个二层的网络。

感谢回复,我再尝试下。

@yhx-coder
Copy link
Author

yhx-coder commented Oct 24, 2022

(1)找到之前写的一个记录,可以参考下:)
mininet 中主机与所在实际主机通信:

实际主机需要有两个物理网卡。首先释放一个网卡(假设叫 ens33)sudo ifconfig ens33 0.0.0.0, 将这个网口添加到 mininet 中的 ovs 交换机 ,一种方案是 os.popen('ovs-vsctl add-port s1 ens33') 。将mininet中主机IP设置成与另一个网卡在同一网段,二者就可以ping通,可建立tcp连接。注意,如果你释放的是默认网卡,需要在实际主机上加一条路由条目,使到虚拟主机的数据包走另一个网卡。比如route add -net 192.168.1.0/24 eth0.一旦 ping 不通,去检查主机路由表 route -n,大概率发现问题。路由表条目中优先匹配 matrix 小的。
(2)我根据这个工程仿写了一个 https://github.com/yhx-coder/int-simulation ,可以参考

@anyangayi
Copy link

(1)找到之前写的一个记录,可以参考下:) mininet 中主机与所在实际主机通信:

实际主机需要有两个物理网卡。首先释放一个网卡(假设叫 ens33)sudo ifconfig ens33 0.0.0.0, 将这个网口添加到 mininet 中的 ovs 交换机 ,一种方案是 os.popen('ovs-vsctl add-port s1 ens33') 。将mininet中主机IP设置成与另一个网卡在同一网段,二者就可以ping通,可建立tcp连接。注意,如果你释放的是默认网卡,需要在实际主机上加一条路由条目,使到虚拟主机的数据包走另一个网卡。比如route add -net 192.168.1.0/24 eth0.一旦 ping 不通,去检查主机路由表 route -n,大概率发现问题。路由表条目中优先匹配 matrix 小的。 (2)我根据这个工程仿写了一个 https://github.com/yhx-coder/int-simulation ,可以参考

受教了,谢谢谢谢~

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants