虚拟机无法访问宿主机的端口

文章介绍了如何检查和修改Windows防火墙的入站规则,特别是针对Python进程的TCP和UDP规则。默认情况下,这两个规则是阻止连接的。通过将TCP规则更改为允许连接,允许外部设备访问运行Pythonhttp.server的8000端口,从而实现主机与虚拟机之间的通信。
摘要由CSDN通过智能技术生成

检查防火墙

1. 打开防火墙高级设置

 2. 入站规则

        可以看到上面有两个python的入站规则,这两条规则都是针对python.exe使用的全部端口的,但是一个是针对udp协议的一个是针对tcp协议的,如下图:

         入站规则中,这两条规则前面都是🚫符号,说明是阻止连接的,也就是防火墙会丢弃任何远程端口发出的,通过任何本地端口,发送给python.exe的tcp和udp数据包,也就是禁止主动传入给python的数据包,因为是入站规则,所以规则禁止的是数据包传入不影响数据包主动传出

3. 调整入站规则

 双击点开TCP的入站规则,在常规选项卡下,将阻止连接改为允许连接,再点击应用即可,结果如下图,可以看见该规则由🚫变为了绿色的允许:

 4. 测试:

主机在某一目录下打开shell,运行如下代码,开放端口:

python -m http.server 8000

在虚拟机上就能访问该目录了

 5. 总结

明白了防火墙的工作原理以后可以通过很多种方式连接主机,可以禁用掉刚刚那条python规则,并自己写一条开放8000端口的入站规则。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值