Linux

在centos 7中可以從外部訪問KVM主機以用於伺服器目的

  • February 17, 2021

今天剛好遇到一個問題,想問大家一個問題

我剛剛在我的系統中安裝了 kvm,並且我有一些如何設法安裝節點並在系統中工作現在我想要的是我想在節點中託管一個伺服器

我可以通過其公共 ip (eth0) 訪問 KVM 主機伺服器 唯一的介面

不是我有一個公共 ip 給節點,但我不明白怎麼做

每次我在 eth0 和新的 br0 介面之間建立橋連接時,它都會失敗並且我失去了連接

那麼我如何從外部世界訪問我的 kvm 節點任何提示我對 KVM 很陌生所以請幫助我完成有關如何連結什麼網路的步驟

不要橋接你的eth0. 保持其 IP 地址和配置不變。相反,讓您的主機成為您的虛擬機的路由器

假設您主機上的網路正常工作並且能夠訪問 Internet。

您必須創建一個“純虛擬”網橋,一開始不會分配任何成員。讓我們稱之為橋br0

ip link add name br0 type bridge
ip link set br0 up

儘管如此,我認為該網橋必須有一些來自 IANA 私人空間的“內部”地址。讓它成為192.168.95.1/24

ip address add 192.168.95.1/24 dev br0

現在,您在您的機器上配置偽裝 NAT 並啟用 ip 轉發:

sysctl net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.95.0/24 -j MASQUERADE

必須將所有 VM 的 vNIC 放入網橋br0。您將為他們提供192.168.95.2÷254範圍內的 IP 地址,並將 a 指定192.168.95.1為預設網關。您可以使用任何公共 DNS 服務,例如 Google8.8.8.88.8.4.4為簡單起見。如果需要,您可以為您的虛擬機設置 DHCP 和 DNS 伺服器,例如,使用dnsmasq(專為此類情況設計)。

本質上,您正在創建一個簡單的“NAT”路由器,它將有一個eth0作為 WAN 端的介面和一個br0作為 LAN 端的介面。

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