【发布时间】:2021-02-13 22:14:59
【问题描述】:
我做了端口转发:我把服务器放在虚拟机上,并将客户端从主机连接到虚拟机。效果很好。
但是现在,当我尝试反向执行此操作时,它没有。
我做的第一件事是使用以下参数进行端口转发:
- 主机端口:35001
- 要转发的端口:35001
- 虚拟机ip:192.168.40.130
成功了。
之后,当我这样做时(服务器脚本,但在主机上的 cmd(shell)上):
s = socket.socket(socket.AF_INET , socket.SOCK_STREAM)
s.bind(("0.0.0.0",35001))
我收到此错误:
Only one usage of each socket address (protocol/network address/port) is normally permitted
我相信那是因为有一个进程在监听 35001 端口。
在我转发端口后,VMware(NAT) 在 35001 上监听(我使用 netstat 发现)。
那么如何在宿主机上做一个服务器,让它监听35001端口,并能够从虚拟机连接到它呢?
它是windows 10 pro,python3,一个windows 7 VM。防火墙被禁用。我不想使用桥接连接。
【问题讨论】:
标签: python sockets virtual-machine port portforwarding