如何使用 1:1 NAT 为 pfSense 盒后面的机器分配公共 IP?

如何使用 1:1 NAT 为 pfSense 盒后面的机器分配公共 IP?

这应该很简单,但我无论如何都无法让它工作。我肯定做了什么蠢事。

我有一台具有公共 IP 地址的 PFsense 服务器。它背后是三个 LAN 段:

[ Internet ]  <---> [ pfSense]  
                        +----- 192.168.1.1/24 ---> (multiple servers)
                        +----- 192.168.2.1/24 ---> (multiple servers)
                        +----- 172.16.1.1/24 ---> (multiple machines)

我有一台新服务器,地址192.168.1.31位于 pfSense 服务器后面,我想给它一个公共 IP。我假设我会使用 1:1 NAT 来做到这一点,但无论我尝试什么,它都不起作用。以下是我所做的:

  1. 在 pfSense 中,我使用我想要的新公共 IP 将虚拟 IP 添加到 WAN 接口。第一次,我使用了“IP 别名”类型。
  2. 我添加了 1:1 NAT 规则,其中新的公共 IP 作为外部子网,192.168.1.31/32作为内部子网。
  3. 我在 WAN 接口、协议 TCP、目标192.168.1.31/32、端口范围HTTP-上添加了防火墙规则HTTP。我对想要运行 SSH 的 4000 中的另一个端口执行了同样的操作。

完成上述所有操作后,我仍然无法通过 HTTP 访问新 IP,也无法通过我选择的备用 SSH 端口通过 SSH 进入新机器。

我将虚拟 IP 更改为“代理 ARP”,然后更改为“其他”,但这些都不起作用......

奇怪的是,我如果我在 上运行 SSH 服务器,则可以通过 SSH 连接到端口 22 上的新 IP 192.168.1.31:22。但我无法访问任何其他端口。

我在这里做错了什么?

答案1

如果你还没有看过 wiki,那么这是一个不错的起点:

我非常确定你第一次就做对了。你需要在面向公众的界面上设置 IP 别名。你为这个别名选择的 IP 地址当然需要合法路由(你的 ISP 应该已经为你提供了一些可公开访问的 IP)。

您可以获取命令行访问权限并编辑您的帖子以包含整个 pf 规则(pfctl -s 规则)吗?

相关内容