虚拟机版本 VMware 16pro
ubuntu 版本 Ubuntu 22.04.1 LTS
第一步: 虚拟机设置 NAT
Edit>Virtual Network Editor
修改配置
更改 DHCP 设置
要注意 ip地址 要用 在虚拟机Ubuntu 系统中的网段范围
在NAT 添加端口转发
查看ubuntu 防火墙
sudo ufw status
Status: inactive 代表关闭
如果开启的话 就要开放端口 或者 关闭
开放端口 sudo ufw allow 8000
关闭防火墙 sudo ufw disable
虚拟机就设置完成了
宿主机 win10 需要关闭正在使用的 防火墙
修改Django 配置
settings.py
ALLOWED_HOSTS = ['*']
启动Django 服务 python3 manage.py runserver 0.0.0.0:8000
在宿主机上 访问 虚拟机ip+端口 或者 本机ip+端口 即可成功访问项目
下面我遇到的问题:
在完成所有操作后 发现还是不能在宿主机上成功访问, 尝试用ping telnet ip 端口 测试, 都成功 即证明 虚拟机nat 没问题
后面看到 ubuntu 除了防火墙外还有 iptables , 查看iptables
sudo iptables -L -n
看上去似乎没有什么问题, 但对照另一台 可以正常访问的
似乎多了一个 NFQUEUE
直接 清除 所有规则
sudo iptables -F
这样就能成功访问
至于 iptables 配置, 和 NFQUEUE 我们下次再谈 -.~
标签:iptables,web,虚拟机,sudo,端口,Django,访问,ubuntu From: https://www.cnblogs.com/dontbealarmedimwithyou/p/17875355.html