나는 이 가이드를 따랐습니다(Ubuntu 11.10에서 KVM을 사용한 가상화) Ubuntu 11.10 서버에서 KVM(가상 머신 소프트웨어)을 설정합니다. 그러나 VM을 생성할 때 VM의 IP 주소를 설정하지 않고 대신 다음을 사용했습니다.
vmbuilder kvm ubuntu --suite=oneiric --flavour=virtual --arch=amd64 --mirror=http://de.archive.ubuntu.com/ubuntu -o --libvirt=qemu:///system --ip=192.168.0.101 --gw=192.168.0.1 --part=vmbuilder.partition --templates=mytemplates --user=administrator --name=Administrator --pass=howtoforge --addpkg=vim-nox --addpkg=unattended-upgrades --addpkg=acpid --firstboot=/var/lib/libvirt/images/vm1/boot.sh --mem=256 --hostname=vm1 --bridge=br0
나는 다음을 사용합니다. (명령줄에서 "--ip=192.168.0.101 --gw=192.168.0.1"을 제거했습니다)
vmbuilder kvm ubuntu --suite=oneiric --flavour=virtual --arch=amd64 --mirror=http://de.archive.ubuntu.com/ubuntu -o --libvirt=qemu:///system --part=vmbuilder.partition --templates=mytemplates --user=administrator --name=Administrator --pass=howtoforge --addpkg=vim-nox --addpkg=unattended-upgrades --addpkg=acpid --firstboot=/var/lib/libvirt/images/vm1/boot.sh --mem=256 --hostname=vm1 --bridge=br0
가이드에 지시된 대로 브리지를 설정했고 새 가상 머신의 인터페이스가 브리지에 연결되었습니다.
KVM이 DHCP를 통해 내 VM을 할당한다고 가정하지만 새 VM의 IP 주소에 대한 정보가 없습니다. VM의 IP 주소와 새 VM에 대한 SSH를 어디서 찾을 수 있습니까? 감사해요.
[참고: 가상 머신의 IP 주소를 모르고 가상 머신에 성공적으로 로그인했습니다. 사용"Xming + SSH 및 X 그래픽 전달그러나 내 VM에는 DHCP IP 주소가 할당되지 않았습니다. 위의 문제 외에도 다른 질문이 있습니다. Xming을 사용하여 "가상 뷰어"를 통해 로그인할 때 최소한 내 가상 머신 IP 주소를 볼 수 있도록 내 VM에서 DCHP를 활성화하는 방법 거기 있어요. ]
답변1
이 시도:
virsh net-list
virsh net-dhcp-leases <net-name> <--- net-name from above command
MAC 주소를 알고 있는 경우 다음 형식을 사용할 수도 있습니다.
virsh net-dhcp-leases <net-name> --mac <mac-address>
MAC 주소는 dumpxml 명령을 통해 찾을 수 있습니다. 바라보다kvm 호스트의 어떤 가상 인터페이스가 가상 머신에 속하는지 확인하는 방법이 있습니까?
답변2
arp -n
실행하여 VM의 선택된 IP를 볼 수 있습니다. 이렇게 하면 게스트 VM에 로그인하고 를 입력할 필요가 없습니다 ifconfig
.
다음 블로그에서는 더 자세한 내용을 제공하며 가상 머신의 주소를 자동으로 찾는 Perl 스크립트가 포함되어 있습니다.
답변3
이것은 오래된 질문인 것 같지만 현재 버전에서는 virsh
nat나 브리지된 개인 네트워크를 사용하는 경우 이 작업이 훨씬 쉬워집니다. steak
(라우팅된) 개인 네트워크(일명 "NAT")에 이름이 지정된 가상 머신이 있습니다 . 내장 메커니즘에 의해 할당된 IP를 찾으려면 두 가지 명령만 필요합니다.
$ sudo virsh list
Id Name State
----------------------------------------------------
21 steak running
$ sudo virsh domifaddr steak
Name MAC address Protocol Address
-------------------------------------------------------------------------------
vnet0 76:0c:28:ab:0e:ee ipv4 10.14.1.1/24
eggs
일반 네트워크(하이퍼바이저 호스트의 브리지 장치에 연결됨)에 브리지되는 또 다른 가상 머신( )이 있습니다 . Libvirt는 주소를 할당하지 않고 내 네트워크의 DHCP 서버에서 주소를 가져옵니다. 내 경우에는 동적 DNS도 업데이트합니다. 이는 해당 가상 머신의 출력이 없을 때 domifadd
가능합니다 . 따라서 기본적으로 다른 시스템과 마찬가지로 주소를 찾아야 합니다. arp 테이블에서 주소를 찾는 것이 아마도 가장 쉬울 것입니다. 즉 ip neighbour
, 이제 arp
더 이상 사용되지 않으며 일부 배포판에는 더 이상 나타나지 않습니다. 다행스럽게도 모음을 추가하여 철자를 쓸 수 없는 사람들을 위해 ip neigh
and ip n
(또는 ip neighbor
)와 같은 짧은 버전을 사용할 수도 있습니다. ;) 아래에서는 domiflist
MAC 주소( br0
"소스" 열에 연결되어 있음)를 찾은 다음 arp 테이블에서 찾는 데 사용합니다 .
$ sudo virsh domifaddr eggs
Name MAC address Protocol Address
-------------------------------------------------------------------------------
$ sudo virsh domiflist eggs
Interface Type Source Model MAC
-------------------------------------------------------
vnet0 bridge br0 virtio 52:54:00:2c:ac:ee
$ ip neigh | grep -i 52:54:00:2c:ac:ee
192.168.0.226 dev br0 lladdr 52:54:00:2c:ac:ee REACHABLE
$ host eggs
eggs.home.domain.com has address 192.168.0.226
답변4
가상 머신의 IP 주소를 보려면 다음을 실행하세요.
$ arp -n
시스템에 arp가 설치되어 있지 않으면 패키지를 설치하기만 하면 됩니다 net-tools
.