使用 Vyatta 进行地址 (url) 转发

使用 Vyatta 进行地址 (url) 转发

我想这是个新手问题。我完成了这个非常基本的网络设置,需要帮助来设置一些地址转发。

如下图所示,所有流量都通过 eth0 接口 (85.123.32.23) 进入。外部 DNS 设置为将所有主机也定向到此 IP。

现在,我究竟该如何过滤每个盒子的传入请求?IP 是静态的!

我的网络布局:

网络设置

我不想通过分配大量端口等来解决这个问题。

在我的愿望中,这样的事情会很好:)

set service nat rule 10 type destination
set service nat rule 10 inbound-interface eth0
set service nat rule 10 destination address ftp.myhost.com
set service nat rule 10 inside-address address 192.168.100.20

这样,到地址 ftp.myhost.com(在 eth0)的所有流量都应路由到内部 IP 192.168.100.20。

好的,有谁能指点一下吗?使用 nat 是不是不对?

请帮我! :)

答案1

您无法通过 NAT 实现此目的,因为 NAT 在网络层(第 3 层)而不是 DNS(第 7 层)级别运行。因此,您的示例set service nat rule 10 destination address ftp.myhost.com将不起作用。

NAT 允许您的公共 IP 地址在具有不同服务的多个内部主机之间共享。例如,SSH、HTTP、HTTPS 和 SMTP,它们都托管在不同服务器上,可以使用 NAT 共享单个公共 IP。

但是,如果您有多个 Web 服务器想要共享同一个公共 IP,则需要使用 Apache 之类的工具设置虚拟主机或虚拟主机重定向。可能还有其他产品可以做到这一点。

http://httpd.apache.org/docs/2.0/vhosts/name-based.html

您需要做的是将端口 80(Web)转发到内部主机,然后该主机可以从其他服务器或同一台机器上的多个虚拟主机拉取数据(参见上面的链接)。注意:这仅适用于 Web 和 FTP。对于其他服务,您必须考虑替代方案(不同的端口等)。

相关内容