* 이 포스팅은 CentOS 패키지 설치를 기준으로 설명하는 글 입니다. 컴파일 설치는 약간 다를 수 도 있습니다.

나는 CentOS 패키지로 설치한 것이라, 컴파일 설치로 하면 좀 틀릴지도 모르곘지만,
CentOS 에서 패키지로 Xen 을 깔면 기본 아이피 대역이 192.168.122.* 이다. 이걸 너무 바꾸고 싶어서 안달이 났지만 결국 인터넷엔 문서가 하~나~도~ 없어서 이 포스팅을 쓰게 됬다.

뭐 솔직히 어떤 큰 프로젝트에서 하이퍼바이저를 바꾼다거나 뭐 그런게 아니라면 이걸로 큰일이 생긴다거나 그런건 없겠지만, 나 같은 경우에는 10.0.0.* 이 아니면 좀 꺼림칙 한 기분이 들어서 (이게 바로 안달이 난 이유다.-_-..) 여러가지 삽질을 해 보았다. 하지만 어느 파일을 바꿔야 되는지는 찾아 내었지만 어떻게 그걸 적용 하는지를 알아내지 못하고 포기했었는데, 알고보니 쉬운 곳에 숨어 있었다.

바로 virsh 를 사용하는 것이였다.

덧붙이자면, 내가 몰랐던 이유가 libvirtd 를 끄면 네트워크 변수로 올라가 있던 데이터가 기본 네트워크 설정 파일에 Overwrite 되서 리셋해도 적용이 안됬던 것이다 -_- libvirtd 를 끄고 수정하고 다시 올렸으면 되는걸 괜히 삽질;

일단 virsh 로 들어간다
# virsh

그리고 net-edit 로 기본 네트워크 파일을 수정한다.
# net-edit <Network Name>
이 때 net-list 명령어로 어떤 네트워크 이름인지 확인 한 후에 저기에 대입해 주면 된다.
CentOS 패키지로는 default 였던걸로 기억한다. (Xen 4.* 은 틀릴지도 모름)

그럼 대충

<network>
  <name>default</name>
  <uuid>12341234</uuid>
  <forward mode='nat'/>
  <bridge name='virbr0' stp='on' forwardDelay='0' />
  <ip address='192.168.122.1' netmask='255.255.255.0'>
    <dhcp>
      <range start='192.168.122.2' end='192.168.122.254' />
    </dhcp>
  </ip>
</network>

이런게 보일것이다.

딱 봐도 이해갈거라 생각하지만.......................
ip 태그의 address 가 게이트웨이다. 그리고 netmask 는.. 알거라 믿고 (솔직히 설명하기 귀찮다고는 말 못한다.)
그 밑에 dhcp 의 range 가 각각의 VM 에 어느 아이피들을 할당 시킬거지 정하는 부분이다.

<network>
  <name>default</name>
  <uuid>12341234</uuid>
  <forward mode='nat'/>
  <bridge name=virbr0' stp='on' forwardDelay='0' />
  <ip address='10.0.0.1' netmask='255.255.255.0'>
  </ip>
</network>

난 이렇게 바꾸어 줬다. dhcp 부분을 날려버리고 게이트웨이와 netmask 부분만 바꾸어 주었다.

저기서 dhcp 를 활성화 시키고 싶으면
ip 태그 안에
    <dhcp>
      <range start=10.0.0.2' end='10.0.0.254' />
    </dhcp>

를 추가하면 될듯하다. 테스트를 안해봐서 잘은 모르겠..

다 수정 했으면 ^X 를 하든 :wq 를 하든지 해서 에디터를 빠져나온후,

# net-destroy default
# net-create /path/to/xml/default.xml

로 다시 시작해 주면 된다.
CentOS 패키지의 경우에는
# net-create /etc/libvirt/qemu/networks/default.xml
이다.

끝.

아, 그리고 VM 들 network 도 restart 도 해 주어야 한다. (당연한건가)
PS. libvirtd + qemu 를 쓰는 모든 하이퍼바이저 (몇 개 없겠지만) 에도 다 적용될지도 모르겠다. 안써봐서 잘..... 모르겠지만.

댓글을 달아 주세요