我們有一個由託管提供者提供的專用伺服器。我們正在運行 ESXi 6.0。伺服器有一個公共 IP,目前用於管理介面。提供者還為我們分配了一個 /29 區塊,以便我們的虛擬機器可以擁有公共 IP。我們只能使用 1 個實體網卡,我認為這導致了一些問題。
他們告訴我們,該區塊中 IP 的預設閘道應設定為 ESXi 伺服器的 IP。每當我們嘗試配置此功能時,虛擬機器都會抱怨網關位於不同的子網路中,事實確實如此。
他們表示,由於其網路配置方式,我們需要透過 ESXi 伺服器的 IP 路由他們分配給我們的區塊中的任何 IP。據我所知,ESXi 不支援路由,因此這是不可能的。
我們詢問他們是否可以將此區塊(甚至單一 IP)分配給伺服器,以便它們與 ESXi IP 相同,以便我們可以在虛擬機器上使用它們,但他們告訴我們,他們的網路設定不允許為了這。
理想情況下,我們希望能夠將這些公共 IP 分配給我們的虛擬機,以便可以直接從互聯網訪問它們。有沒有辦法做到這一點?我們錯過了什麼嗎?
如果上述不可能,我們是否有辦法進行連接埠轉送/其他任何操作,以便我們可以從網路存取我們的虛擬機器?
我們沒有更改 ESXi 中的任何網路配置,因此我們仍然只有一個 vSwtich,同時連接了管理網路和虛擬機器網路。該 vSwitch 連接到伺服器上的單一實體 NIC,所有 IP 都指派給該實體 NIC。
如果需要,很樂意提供任何其他資訊。
答案1
您的主機提供商(Hetzner,猜測?)是正確的。
您需要將單一靜態 IP 位址指派給 VMware 伺服器的 VMK 介面。這將允許您透過 VMware 控制台連接到伺服器並建立虛擬機器。
您的託管提供者應該能夠將您的 /29 子網路路由到伺服器的 MAC 位址。
您還將在 vSphere 中配置一個 vSwitch(我個人會將其重新命名為「公共」),該 vSwitch 附加到您的實體網路卡。
您將需要建立第二個 vSwitch(出於理智考慮,我建議將其稱為「私有」),該 vSwitch 不附加到任何實體網路介面。
設定這兩個 vSwitch 後,您就可以建立一個具有兩個 vNIC 的虛擬機器 - 每個 vSwitch 各一個。使用您喜歡的任何“路由器”作業系統(通常類似於ipfire或者pfSense就可以了),並將其配置為 WAN(公用)和 LAN(私有)vSwitch 之間的 NAT 封包。
要使用 /29 IP 位址,您需要建立連接到私人 vSwitch 的虛擬機,然後根據需要進行 NAT 連接埠轉送。
答案2
我真的願意,真的強烈建議您不要將 ESXi 管理介面直接放在 Internet 上。您唯一的安全控制就是您的密碼,它為您提供了通往王國的完整鑰匙。
我建議您安裝統一威脅管理器 (UTM),例如 pfsense 或 Untangle,作為具有公用 IP 位址的路由器。您的網路將如下所示:
Internet ---> VSWitch1 ---> UTM ---> VSwitch2> --- Virtual Machines
在哪裡:
- VS開關1連接到真實的面向互聯網的網卡
- UTM連接到 VSwitch1(使用您的公用 29 位元 IP 位址之一)和 VSwitch2(使用私人 IP 位址)
- 交換器2未連接任何真實的網路卡
- 虛擬機全部連接到 NIC 並具有私人 IP 位址(如 192.168.0.0/24 或 10.0.0.0/8)
透過此配置,您將使用 UTM 執行 NAT,以便您的虛擬機器可以存取 Internet(反之亦然,如果需要,可以使用連接埠轉送)。這些 UTM 具有防火牆功能、IPS 功能以及保護您的網路的所有好東西。
對於 ESXI 訪問,我實際上建議您為您的專用網路建立 VPN。將您的 VMKernel 放在專用網路上(例如 192.168.0.101/24)。這樣,您就可以使用 VPN 進行身份驗證,並且所有流量都會加密。 VPN 是我提到的UTM 的功能。
加!獎金!它們是免費且開源的:-)
如果您必須透過 Internet 直接存取 ESXI - 我仍然建議至少在 ESXI 和 Internet 之間放置防火牆/NAT,否則您將只能使用 ESXi 的[不存在的]安全功能。