KVM 가상 머신에서 공용 IP 주소 구성

KVM 가상 머신에서 공용 IP 주소 구성

인터넷에 연결된 인터페이스(공용 IP 주소 있음)를 사용하여 CentOS 6.5를 실행하는 물리적 서버가 있습니다. 이 서버에서는 libvirt를 통해 KVM을 사용하여 각각 인터페이스가 있는 두 개의 가상 머신을 만들었습니다. 각 가상 머신에 공용 IP 주소를 할당하고 물리적 서버에 대한 연결을 계속 사용하고 싶습니다.

이 이미지는 내가 가지고 있는 것과 파란색으로 원하는 것을 나타냅니다. 네트워크 토폴로지.

서버의 물리적 인터페이스와 두 VM의 가상 인터페이스를 사용하여 Linux 브리지를 추가하는 등 다양한 방법을 시도했지만 brctl작동하지 않고 물리적 서버와의 연결이 끊어졌습니다.

Linux 브리지 또는 libvirt 네트워킹을 사용하고 싶습니다.

가상 머신과 물리적 서버에서 공용 IP 주소를 얻으려면 어떻게 해야 하나요?

답변1

마침내 나는 질문의 목표를 달성하는 올바른 방법을 찾았습니다. libvirt 네트워킹을 사용하여 문제를 해결할 수 없기 때문에 Linux 브리징을 의미합니다.

속도:

  1. KVM 가상 머신 인터페이스를 식별합니다. 인터페이스 이름은 다음으로 시작할 수 있습니다.vnet*

이 예 vnet0에서는vnet1

  1. 다음 명령을 사용하여 Linux 브리지를 만듭니다.

    brctl addbr virbr1

  2. 물리적 인터페이스와 KVM VM 인터페이스를 새 브리지에 연결합니다.

경고: 네트워크(SSH, Telnet 등)를 통해 물리적 서버에 연결하면 연결이 끊어집니다. 터미널이나 대체 방법(예: 연결이 가능한 다른 인터페이스)을 사용하십시오.

brctl addif virbr1 vnet0
brctl addif virbr1 vnet1
brctl addif virbr1 eth0
  1. 할당된 IP 주소가 없는 물리적 서버 인터페이스를 구성합니다.

CentOS 6.5에서 /etc/sysconfig/network-scripts/ifcfg-eth0다음 내용이 포함된 파일을 편집합니다.

DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
NAME=eth0
TYPE=Ethernet
IPV6INIT=no
USERCTL=no
  1. IP 주소를 갖도록 물리적 서버 브리지를 구성합니다.

CentOS 6.5에서 /etc/sysconfig/network-scripts/ifcfg-virbr1다음 내용이 포함된 파일을 편집합니다.

DEVICE=virbr1
BOOTPROTO=none
ONBOOT=yes
IPADDR=<physical_server_public_ip_address>
NETMASK=<physical_server_public_ip_netmask>
GATEWAY=<physical_server_gateway_ip_address>
NAME=virbr1
TYPE=Ethernet
IPV6INIT=no
USERCTL=no
NM_CONTROLLED=no
DNS1=<physical_server_primary_dns_server_ip_address>
DNS2=<physical_server_secondary_dns_server_ip_address>
  1. 물리적 서버 네트워크를 다시 시작합니다.

service network restart

참고: 물리적 서버 네트워크 연결을 복원해야 합니다(인터페이스 및 브리지를 통해).

  1. KVM 가상 머신의 네트워크 인터페이스를 구성합니다.

이는 가상 머신의 운영 체제에 따라 다릅니다. 그럼에도 불구하고 최소한 IP 주소, 넷마스크 및 기본 게이트웨이를 포함해야 합니다. 분명히 DNS 서버가 구성을 완료합니다.

이러한 구성은 모두 정적이며 DHCP 할당을 통해 재정의될 수 있습니다. 이 경우 브리지의 MAC 주소와 KVM VM 인터페이스가 유용할 수 있습니다.

관련 정보