Hey folks,
I created a DomU, installed Linux, and then realized I''d only given it
1 NIC so brought it down to edit the cfg file to give it another NIC.
Originally I just had :
vif = ['''']
And so I guess the defaults worked for the 1 NIC. So I changed it to :
vif =
[''mac=00:1e:68:8e:31:b8,bridge=xenbr0'',''mac=00:1e:68:8e:31:b9,bridge=xenbr1'']
Where those MAC addresses are from the bridge in dom0, as seen here :
My Dom0 has :
eth0 Link encap:Ethernet HWaddr 00:1e:68:8e:31:b8
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:524414 errors:0 dropped:0 overruns:0 frame:0
TX packets:519320 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:450798894 (450.7 MB) TX bytes:362453554 (362.4 MB)
Interrupt:18 Memory:dffe0000-e0000000
eth1 Link encap:Ethernet HWaddr 00:1e:68:8e:31:b9
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:126552 errors:0 dropped:395 overruns:0 frame:0
TX packets:188670 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:15672743 (15.6 MB) TX bytes:234429457 (234.4 MB)
Interrupt:19 Memory:dffa0000-dffc0000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:91690 errors:0 dropped:0 overruns:0 frame:0
TX packets:91690 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:444750187 (444.7 MB) TX bytes:444750187 (444.7 MB)
xenbr0 Link encap:Ethernet HWaddr 00:1e:68:8e:31:b8
inet addr:192.168.160.11 Bcast:192.168.160.255 Mask:255.255.255.0
inet6 addr: fe80::21e:68ff:fe8e:31b8/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:425590 errors:0 dropped:0 overruns:0 frame:0
TX packets:310648 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:321506246 (321.5 MB) TX bytes:346274373 (346.2 MB)
xenbr1 Link encap:Ethernet HWaddr 00:1e:68:8e:31:b9
inet addr:10.246.159.41 Bcast:10.246.159.255 Mask:255.255.255.0
inet6 addr: fe80::21e:68ff:fe8e:31b9/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:117018 errors:0 dropped:40 overruns:0 frame:0
TX packets:46216 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:11644847 (11.6 MB) TX bytes:224274081 (224.2 MB)
But when I try to bring this up I get :
root@solexa1:/etc/xen# xl create /etc/xen/openfreezer.cfg
Parsing config from /etc/xen/openfreezer.cfg
xc: info: VIRTUAL MEMORY ARRANGEMENT:
Loader: 0000000000100000->000000000017c328
TOTAL: 0000000000000000->000000017f800000
ENTRY ADDRESS: 0000000000100608
xc: info: PHYSICAL MEMORY ALLOCATION:
4KB PAGES: 0x0000000000000200
2MB PAGES: 0x00000000000003fb
1GB PAGES: 0x0000000000000004
libxl: error: libxl_dm.c:1212:device_model_spawn_outcome: domain 8
device model: spawn failed (rc=-3)
libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus:
/etc/xen/scripts/vif-bridge add [504] exited with error status 1
libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus:
/etc/xen/scripts/vif-bridge add [527] exited with error status 1
libxl: error: libxl_create.c:1099:domcreate_attach_pci: unable to add
nic devices
libxl: error: libxl_dm.c:1245:libxl__destroy_device_model: Device
Model already exited
root@solexa1:/etc/xen#
--
“Don''t eat anything you''ve ever seen advertised on TV”
- Michael Pollan, author of "In Defense of Food"
p.s.everything right out of apt here :
root@solexa1:/etc/xen# uname -a
Linux solexa1 3.8.0-25-generic #37-Ubuntu SMP Thu Jun 6 20:47:07 UTC
2013 x86_64 x86_64 x86_64 GNU/Linux
root@solexa1:/etc/xen# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 13.04
Release: 13.04
Codename: raring
root@solexa1:/etc/xen#
--
“Don''t eat anything you''ve ever seen advertised on TV”
- Michael Pollan, author of "In Defense of Food"
On Thu, Jul 4, 2013 at 2:23 PM, Alan McKay <alan.mckay@gmail.com> wrote:> vif = [''mac=00:1e:68:8e:31:b8,bridge=xenbr0'',''mac=00:1e:68:8e:31:b9,bridge=xenbr1'']So I''m thinking that maybe I''m not supposed to specify the mac of the bridge itself so I used precisely the example from http://wiki.xen.org/wiki/Xen_Networking which is vif = [ ''mac=00:16:3e:70:01:01,bridge=xenbr0'', ''mac=00:16:3e:70:02:01,bridge=xenbr1'' ] Though I changed the bridge names to match mine. Still same failure. And also same with : vif = [''bridge=xenbr0'', ''bridge=xenbr1''] -- “Don''t eat anything you''ve ever seen advertised on TV” - Michael Pollan, author of "In Defense of Food"
Oh, should have included this too
root@solexa1:/etc/xen# dpkg --list | grep -i xen
ii libxen-4.2 4.2.1-0ubuntu3.3
amd64 Public libs for Xen
ii libxenstore3.0 4.2.1-0ubuntu3.3
amd64 Xenstore communications library for Xen
ii xen-hypervisor-4.2-amd64 4.2.1-0ubuntu3.3
amd64 Xen Hypervisor on AMD64
ii xen-utils-4.2 4.2.1-0ubuntu3.3
amd64 XEN administrative tools
ii xen-utils-common 4.2.1-0ubuntu3.3
all Xen administrative tools - common files
ii xenstore-utils 4.2.1-0ubuntu3.3
amd64 Xenstore utilities for Xen
root@solexa1:/etc/xen#
--
“Don''t eat anything you''ve ever seen advertised on TV”
- Michael Pollan, author of "In Defense of Food"
Dammit - problem with my keyboard chair interface!
I thought I had made no changes other than the vifs but it seems I
also messed up my :
boot="c"
And once I corrected that I''m good
Sorry :-(
--
“Don''t eat anything you''ve ever seen advertised on TV”
- Michael Pollan, author of "In Defense of Food"
07/04/2013 11:23 AM, Alan McKay wrote:> Hey folks, > > I created a DomU, installed Linux, and then realized I''d only given it > 1 NIC so brought it down to edit the cfg file to give it another NIC. > > Originally I just had : > > vif = [''''] > > And so I guess the defaults worked for the 1 NIC. So I changed it to : > > vif = [''mac=00:1e:68:8e:31:b8,bridge=xenbr0'',''mac=00:1e:68:8e:31:b9,bridge=xenbr1''] > > Where those MAC addresses are from the bridge in dom0, as seen here : > > My Dom0 has : > > eth0 Link encap:Ethernet HWaddr 00:1e:68:8e:31:b8 > UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 > RX packets:524414 errors:0 dropped:0 overruns:0 frame:0 > TX packets:519320 errors:0 dropped:0 overruns:0 carrier:0 > collisions:0 txqueuelen:1000 > RX bytes:450798894 (450.7 MB) TX bytes:362453554 (362.4 MB) > Interrupt:18 Memory:dffe0000-e0000000 > > eth1 Link encap:Ethernet HWaddr 00:1e:68:8e:31:b9 > UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 > RX packets:126552 errors:0 dropped:395 overruns:0 frame:0 > TX packets:188670 errors:0 dropped:0 overruns:0 carrier:0 > collisions:0 txqueuelen:1000 > RX bytes:15672743 (15.6 MB) TX bytes:234429457 (234.4 MB) > Interrupt:19 Memory:dffa0000-dffc0000Your virtual interfaces (vif) have been given the macs of actual interfaces and is causing a collision. The domU will always lose that battle. Change your vif line to use arbitrary macs in the Xen OUI space (00:16:e3). Doesn''t HAVE to be in that space but I think it''s a good habit. vif = [ ''mac=00:16:3e:xx:yy:zz,bridge=xenbr0'', ''mac=00:16:3e:aa:bb:cc,bridge=xenbr1'' ]
On Thu, 2013-07-04 at 14:38 -0400, Alan McKay wrote:> On Thu, Jul 4, 2013 at 2:23 PM, Alan McKay <alan.mckay@gmail.com> wrote: > > vif = [''mac=00:1e:68:8e:31:b8,bridge=xenbr0'',''mac=00:1e:68:8e:31:b9,bridge=xenbr1''] > > So I''m thinking that maybe I''m not supposed to specify the mac of the > bridge itselfThat''s right, these need to be MAC addresses for the virtual device itself, which must be unique on your network segment. You can either use address from an OUI which you control (unlikely in most cases), from the Xen OUI (00:16:3e:xx:xx:xx) or any address with the locally administered bit set. Most people just pick a random address from either of the last two. I wrote a CGI script to generate correctly formed randomized MAC addresses: http://www.hellion.org.uk/cgi-bin/randmac.pl Ian.