Nat

使用 Vyatta 轉發地址(url)

  • June 29, 2012

我想有這種菜鳥問題。我得到了這個非常基本的網路設置,需要幫助來設置一些地址轉發。

如下圖所示,所有流量都通過 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 是錯誤的?

請幫我!:)

您無法通過 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 有效。對於其他服務,您必須查看替代方案(不同的埠等)。

引用自:https://serverfault.com/questions/150827