转发端口

转发端口

我有一台虚拟机(Kali Linux),使用NAT 网络。我正在尝试配置路由器以将连接转发到 Kali端口 80。Kali 的本地 IP 是10.0.2.15,我的本地 IP 是192.168.1.122虚拟服务器

当我尝试保存它时,我得到:

错误代码:4937

该 IP 地址与 LAN IP 地址不在同一子网。请输入其他 IP 地址。

我究竟做错了什么?

答案1

这是您当前的网络:

╔══════════════╗   ╔════════════════════╗   
║VM @ 10.0.2.15║───║Host @ 192.168.1.122║───[Internet]
╚══════════════╝   ╚════════════════════╝

这是您要执行的操作(将路由器上的端口 80 转发至 10.0.2.15):

╔══════════════╗   ╔════════════════════╗   
║VM @ 10.0.2.15║───║Host @ 192.168.1.122║───[Internet]
╚══════════════╝   ╚════════════════════╝       │
       └─────────────────────────(Port 80)──────┘

这是行不通的,因为路由器不知道 10.0.2.15 位于 192.168.1.122 后面。

相反,您需要执行以下操作(将路由器上的端口 80 转发到 192.168.1.122,它知道 10.0.2.15):

╔══════════════╗   ╔════════════════════╗   
║VM @ 10.0.2.15║───║Host @ 192.168.1.122║───[Internet]
╚══════════════╝   ╚════════════════════╝       │
                               └───(Port 80)────┘

然后执行以下操作(现在 192.168.1.122 正在获取流量,将其发送到 10.0.2.15):

╔══════════════╗   ╔════════════════════╗   
║VM @ 10.0.2.15║───║Host @ 192.168.1.122║───[Internet]
╚══════════════╝   ╚════════════════════╝       │
       └───(Port 80)────┘      └───(Port 80)────┘

答案2

正如用户所述,您需要将流量从路由器转发到 VM 主机(192.168.1.122),从那里我推荐以下两个选项之一:

1:将虚拟机配置为使用网络桥接,该网络桥接将使用 DHCP 从路由器获取 IP 地址,并且可以像本地网络上的任何其他设备一样访问。(然后,您可以将流量转发到虚拟机的 192.168.1.0/16 中的 DHCP 分配地址)

2:在您的虚拟机管理程序上配置到您的虚拟机的端口转发。

示例配置: https://www.howtogeek.com/122641/how-to-forward-ports-to-a-virtual-machine-and-use-it-as-a-server/

根据您用于虚拟化的内容,它会略有不同,但相同的概念适用于所有虚拟机管理程序。

相关内容