Le tableau
Mon exemple se compose d'une machine Dedibox Pro R210. Il s'agit d'une machine avec un octo-proc Xeon L3426 à 1.87GHz. Ne vous laissez pas avoir par « si peu » de GigaHertz, ces machines n'ont rien à voir avec des processeurs milieu de gamme type i5/i7. Elle comporte 16Go de ram DDR ECC. Cette machine est sous debian squeeze (stable actuelle).
Le réseau
Ma configuration réseau est ainsi :
- IP: 88.190.11.12
- Gateway: 88.190.11.1
- DNS: 127.0.0.1, 88.191.254.60, 88.191.254.70
J'ai une adresse IP failover que j'ai assigné à mon serveur :
- Adresse IP failover 1: 88.190.223.115
- Adresse redirigée sur 88.190.11.12
- Reverse : debsqueeze.yoda-bzh.net
- Mac virtuelle Xen : 00:16:3e:00:00:40
La configuration réseau dépend de votre réseau. Par exemple, si votre ip est 88.190.23.55, la gateway doit donc être 88.190.23.1.
user@dom0$ sudo ifconfig
eth0 Link encap:Ethernet HWaddr 00:26:b9:84:ff:ce
inet adr:88.190.11.12 Bcast:88.190.11.255 Masque:255.255.255.0
adr inet6: fe80::226:b9ff:fe84:ffce/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:107463 errors:0 dropped:0 overruns:0 frame:0
TX packets:90482 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
RX bytes:19045383 (18.1 MiB) TX bytes:10436963 (9.9 MiB)
Interruption:16 Mémoire:da000000-da012800
lo Link encap:Boucle locale
inet adr:127.0.0.1 Masque:255.0.0.0
adr inet6: ::1/128 Scope:Hôte
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:70 errors:0 dropped:0 overruns:0 frame:0
TX packets:70 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:0
RX bytes:6949 (6.7 KiB) TX bytes:6949 (6.7 KiB)
user@dom0$ sudo route -n
Table de routage IP du noyau
Destination Passerelle Genmask Indic Metric Ref Use Iface
88.190.11.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
0.0.0.0 88.190.11.1 0.0.0.0 UG 0 0 0 eth0
Installation de xen4
Vous devez installer les paquets suivant :
libxenstore3.0
linux-image-2.6.32-5-xen-amd64
linux-image-xen-amd64
xen-hypervisor-4.0-amd64
xen-tools
xen-utils-4.0
xen-utils-common
xenstore-utils
xenwatch
Avec la commande suivante :
user@dom0$ sudo aptitude installlibxenstore3.0 linux-image-2.6.32-5-xen-amd64 linux-image-xen-amd64 xen-hypervisor-4.0-amd64 xen-tools xen-utils-4.0 xen-utils-common xenstore-utils xenwatch
Par défaut, Debian ne boot pas sur le noyau xen[1]. Il faut donc modifier la configuration de grub pour booter sur ce noyau
user@dom0$ cd /etc/grub.d/
user@dom0$ sudo mv -i 20_linux_xen 09_linux_xen
user@dom0$ sudo update-grub2
Vous devez ensuite redémarrer la machine pour qu'elle boot sur ce nouveau noyau. Normalement elle redémarrera sans heurt.
Une fois sur le nouveau noyau, un petit test pour voir si tout s'est bien passé :
user@dom0$ sudo xentop
Si vous voyez quelque chose du genre :
xentop - 10:52:07 Xen 4.0.1
1 domains: 1 running, 0 blocked, 0 paused, 0 crashed, 0 dying, 0 shutdown
Mem: 16767188k total, 15117648k used, 1649540k free CPUs: 8 @ 1862MHz
NAME STATE CPU(sec) CPU(%) MEM(k) MEM(%) MAXMEM(k) MAXMEM(%) VCPUS NETS NETTX(k) NETRX(k) VBDS VBD_OO VBD_RD VBD_WR
VBD_RSECT VBD_WSECT SSID
Domain-0 -----r 16821 400.7 14896180 88.8 no limit n/a 8 0 0 0 0 0 0 0
0 0 0
Delay Networks vBds Tmem VCPUs Repeat header Sort order Quit
C'est que tout s'est bien passé. Si vous avez une erreur concernant sysfs, c'est que votre noyau n'est pas le bon.
Configuration de xend
Il est très fortement conseillé d'utiliser vif-route au lieu de vif-bridge sur le réseau dedibox. Nous allons donc modifier xend en conséquence.
user@dom0$ sudo vim /etc/xen/xend-config.sxp
Vers la ligne 160 il faut commenter ces lignes :
(network-script network-bridge)
Puis un peu plus bas, décommenter
#(network-script network-route)
#(vif-script vif-route)
et modifier en
(network-script 'network-route netdev=eth0')
(vif-script vif-route)
Il faut aussi modifier le script de route de xen :
user@dom0$ sudo echo 'echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp' >> /etc/xen/scripts/network-route
user@dom0$ sudo /etc/init.d/xend restart
Configuration de xen-tools
Le paquet xen-tools contient plusieurs executables[2] permettant de créer facilement des images xen de plusieurs distributions.
Nous allons d'abord configurer les script pour l'utilisation de xen-create-image
user@dom0$ cd /etc/xen-tools
user@dom0$ sudo vim xen-tools.conf
Vous trouverez vers la ligne 129 les tailles par défaut de vous images, ainsi que la composition matérielle (nombre de CPU, quantité de RAM, type de système de fichiers, etc.) Ma configuration est ainsi :
#
##
# Disk and Sizing options.
##
#
size = 15Gb # Disk image size.
memory = 128Mb # Memory size
swap = 512Mb # Swap size
# noswap = 1 # Don't use swap at all for the new system.
fs = ext3 # use the EXT3 filesystem for the disk image.
dist = `xt-guess-suite-and-mirror --suite` # Default distribution to install.
image = sparse # Specify sparse vs. full disk images.
Vers la ligne 160 vous aurez la configuration réseau par défaut :
gateway = 88.190.11.12
netmask = 255.255.255.0
J'ai ici mis la configuration réseau de mon Dom0, mais ces valeurs seront écrasées par les options que nous passerons à xen-create-image
.
Vers la ligne 205 j'ai rajouté :
#
# Uncomment the following line if you wish not to generate a new root
# password for the new guest.
#
# genpass = 0
#
genpass = 0
Par défaut, xen vous crée un mot de pass root aléatoire et vous l'affiche à l'écran quand il a fini de créer l'image. Si vous êtes un peu rapide/pressé, vous arriverez à faire en sorte que ce mot de pass disparaisse avant que vous ayez pu le noter. Avec cette directive, xen vous demandera le mot de pass que vous voudrez utiliser.
Ligne 228, toujours pour les mots de passe :
#
# Uncomment the following line if you wish to interactively setup a
# new root password for images.
#
# passwd = 1
#
passwd = 1
J'ai laissé les autres directives par défaut.
Création d'une image
user@dom0$ sudo xen-create-image --pygrub --dist=squeeze --ip=88.190.223.115 --mac=00:16:3e:00:00:40 --netmask=255.255.255.255 --hostname=debsqueeze
General Information
--------------------
Hostname : debsqueeze
Distribution : squeeze
Mirror : http://ftp.fr.debian.org/debian/
Partitions : swap 512Mb (swap)
/ 15Gb (ext3)
Image type : sparse
Memory size : 128Mb
Kernel path : /boot/vmlinuz-2.6.32-5-xen-amd64
Initrd path : /boot/initrd.img-2.6.32-5-xen-amd64
Networking Information
----------------------
IP Address 1 : 88.190.223.115 [MAC: 00:16:3e:00:00:40]
Netmask : 255.255.255.255
Creating partition image: /var/lib/xen//domains/debsqueeze/swap.img
Done
Creating swap on /var/lib/xen//domains/debsqueeze/swap.img
Done
Creating partition image: /var/lib/xen//domains/debsqueeze/disk.img
Done
Creating ext3 filesystem on /var/lib/xen//domains/debsqueeze/disk.img
Done
Installation method: debootstrap
Done
Running hooks
Done
No role scripts were specified. Skipping
Creating Xen configuration file
Done
Setting up root password
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
All done
Logfile produced at:
/var/log/xen-tools/debsqueeze.log
Installation Summary
---------------------
Hostname : debsqueeze
Distribution : squeeze
IP-Address(es) : 88.190.223.115
RSA Fingerprint : 35:cf:00:03:54:74:60:4a:a5:ca:4f:5f:41:d1:6a:91
Root Password : N/A
Lancement de la VM
user@dom0$ sudo xm create -c /etc/xen/debsqueeze.conf
L'option -c est importante. Elle permet d'avoir une console sur la machine virtuelle qui démarre. Sans cette option, la machine est détachée, vous devez y accéder via SSH. Seulement avec la configuration actuelle, votre machine virtelle n'est pour l'instant pas accessible.
pyGRUB version 0.6
┌────────────────────────────────────────────────────────────────────────┐
│ Debian GNU/Linux 6.0 │
│ Debian GNU/Linux 6.0 (Single-User) │
│ │
│ │
│ │
│ │
│ │
│ │
└────────────────────────────────────────────────────────────────────────┘
Use the ^ and v keys to select which entry is highlighted.
Press enter to boot the selected OS, 'e' to edit the
commands before booting, 'a' to modify the kernel arguments
before booting, or 'c' for a command line.
Will boot selected entry in 1 seconds
Started domain debsqueeze (id=4)
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 2.6.32-5-xen-amd64 (Debian 2.6.32-30) (ben@decadent.org.uk) (gcc version 4.3.5 (Debian 4.3.5-4) ) #1 SMP Wed Jan 12 05:46:49 UTC 2011
[ 0.000000] Command line: root=/dev/xvda2 ro root=/dev/xvda2 ro
[ 0.000000] KERNEL supported cpus:
[ 0.000000] Intel GenuineIntel
[ 0.000000] AMD AuthenticAMD
[ 0.000000] Centaur CentaurHauls
[ 0.000000] ACPI in unprivileged domain disabled
[ 0.000000] released 0 pages of unused memory
[ 0.000000] BIOS-provided physical RAM map:
[ 0.000000] Xen: 0000000000000000 - 00000000000a0000 (usable)
[ 0.000000] Xen: 00000000000a0000 - 0000000000100000 (reserved)
[ 0.000000] Xen: 0000000000100000 - 0000000008000000 (usable)
[ 0.000000] DMI not present or invalid.
[ 0.000000] last_pfn = 0x8000 max_arch_pfn = 0x400000000
[ 0.000000] init_memory_mapping: 0000000000000000-0000000008000000
[ 0.000000] RAMDISK: 016b8000 - 02fd7000
[ 0.000000] No NUMA configuration found
[ 0.000000] Faking a node at 0000000000000000-0000000008000000
[ 0.000000] Bootmem setup node 0 0000000000000000-0000000008000000
[ 0.000000] NODE_DATA [000000000002a000 - 0000000000031fff]
[ 0.000000] bootmap [0000000000032000 - 0000000000032fff] pages 1
[ 0.000000] (7 early reservations) ==> bootmem [0000000000 - 0008000000]
[ 0.000000] #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000]
[ 0.000000] #1 [000301a000 - 0003037000] XEN PAGETABLES ==> [000301a000 - 0003037000]
[ 0.000000] #2 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000]
[ 0.000000] #3 [0001000000 - 0001697994] TEXT DATA BSS ==> [0001000000 - 0001697994]
[ 0.000000] #4 [00016b8000 - 0002fd7000] RAMDISK ==> [00016b8000 - 0002fd7000]
[ 0.000000] #5 [0002fd7000 - 000301a000] XEN START INFO ==> [0002fd7000 - 000301a000]
[ 0.000000] #6 [0000008000 - 000002a000] PGTABLE ==> [0000008000 - 000002a000]
[ 0.000000] Zone PFN ranges:
[ 0.000000] DMA 0x00000000 -> 0x00001000
[ 0.000000] DMA32 0x00001000 -> 0x00100000
[ 0.000000] Normal 0x00100000 -> 0x00100000
[ 0.000000] Movable zone start PFN for each node
[ 0.000000] early_node_map[2] active PFN ranges
[ 0.000000] 0: 0x00000000 -> 0x000000a0
[ 0.000000] 0: 0x00000100 -> 0x00008000
[ 0.000000] SFI: Simple Firmware Interface v0.7 http://simplefirmware.org
[ 0.000000] SMP: Allowing 1 CPUs, 0 hotplug CPUs
[ 0.000000] No local APIC present
[ 0.000000] APIC: disable apic facility
[ 0.000000] PM: Registered nosave memory: 00000000000a0000 - 0000000000100000
[ 0.000000] Allocating PCI resources starting at 8000000 (gap: 8000000:f8000000)
[ 0.000000] Booting paravirtualized kernel on Xen
[ 0.000000] Xen version: 4.0.1 (preserve-AD)
[ 0.000000] NR_CPUS:512 nr_cpumask_bits:512 nr_cpu_ids:1 nr_node_ids:1
[ 0.000000] PERCPU: Embedded 30 pages/cpu @ffff88000306d000 s90328 r8192 d24360 u122880
[ 0.000000] pcpu-alloc: s90328 r8192 d24360 u122880 alloc=30*4096
[ 0.000000] pcpu-alloc: [0] 0
[ 0.000000] Xen: using vcpu_info placement
[ 0.000000] Built 1 zonelists in Node order, mobility grouping on. Total pages: 32187
[ 0.000000] Policy zone: DMA32
[ 0.000000] Kernel command line: root=/dev/xvda2 ro root=/dev/xvda2 ro
[ 0.000000] PID hash table entries: 512 (order: 0, 4096 bytes)
[ 0.000000] Initializing CPU#0
[ 0.000000] Checking aperture...
[ 0.000000] No AGP bridge found
[ 0.000000] Memory: 95476k/131072k available (3147k kernel code, 384k absent, 35212k reserved, 1908k data, 600k init)
[ 0.000000] SLUB: Genslabs=14, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] Hierarchical RCU implementation.
[ 0.000000] NR_IRQS:4352 nr_irqs:512
[ 0.000000] Console: colour dummy device 80x25
[ 0.000000] console [tty0] enabled
[ 0.000000] console [hvc0] enabled
[ 0.000000] installing Xen timer for CPU 0
[ 0.000000] Detected 1862.031 MHz processor.
[ 0.004000] Calibrating delay loop (skipped), value calculated using timer frequency.. 3724.06 BogoMIPS (lpj=7448124)
[ 0.004000] Security Framework initialized
[ 0.004000] SELinux: Disabled at boot.
[ 0.004000] Dentry cache hash table entries: 16384 (order: 5, 131072 bytes)
[ 0.004000] Inode-cache hash table entries: 8192 (order: 4, 65536 bytes)
[ 0.004000] Mount-cache hash table entries: 256
[ 0.004000] Initializing cgroup subsys ns
[ 0.004000] Initializing cgroup subsys cpuacct
[ 0.004000] Initializing cgroup subsys devices
[ 0.004000] Initializing cgroup subsys freezer
[ 0.004000] Initializing cgroup subsys net_cls
[ 0.004000] CPU: L1 I cache: 32K, L1 D cache: 32K
[ 0.004000] CPU: L2 cache: 256K
[ 0.004000] CPU: L3 cache: 8192K
[ 0.004000] CPU 0/0x3 -> Node 0
[ 0.004000] CPU: Unsupported number of siblings 16
[ 0.004000] Performance Events: unsupported p6 CPU model 30 no PMU driver, software events only.
[ 0.004000] SMP alternatives: switching to UP code
[ 0.004000] Freeing SMP alternatives: 28k freed
[ 0.004164] Brought up 1 CPUs
[ 0.004273] devtmpfs: initialized
[ 0.007968] Grant table initialized
[ 0.007975] regulator: core version 0.5
[ 0.008033] NET: Registered protocol family 16
[ 0.008814] PCI: setting up Xen PCI frontend stub
[ 0.009293] bio: create slab <bio-0> at 0
[ 0.009364] ACPI: Interpreter disabled.
[ 0.009399] xen_balloon: Initialising balloon driver with page order 0.
[ 0.009448] vgaarb: loaded
[ 0.009508] PCI: System does not support PCI
[ 0.009513] PCI: System does not support PCI
[ 0.009592] Switching to clocksource xen
[ 0.010783] pnp: PnP ACPI: disabled
[ 0.010984] NET: Registered protocol family 2
[ 0.011053] IP route cache hash table entries: 1024 (order: 1, 8192 bytes)
[ 0.011268] TCP established hash table entries: 4096 (order: 4, 65536 bytes)
[ 0.011311] TCP bind hash table entries: 4096 (order: 4, 65536 bytes)
[ 0.011338] TCP: Hash tables configured (established 4096 bind 4096)
[ 0.011343] TCP reno registered
[ 0.011395] NET: Registered protocol family 1
[ 0.011439] Unpacking initramfs...
[ 0.029811] Freeing initrd memory: 25724k freed
[ 0.036328] platform rtc_cmos: registered platform RTC device (no PNP device found)
[ 0.036528] audit: initializing netlink socket (disabled)
[ 0.036542] type=2000 audit(1298716438.501:1): initialized
[ 0.041443] HugeTLB registered 2 MB page size, pre-allocated 0 pages
[ 0.042805] VFS: Disk quotas dquot_6.5.2
[ 0.042858] Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[ 0.042933] msgmni has been set to 236
[ 0.043109] alg: No test for stdrng (krng)
[ 0.043164] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
[ 0.043171] io scheduler noop registered
[ 0.043175] io scheduler anticipatory registered
[ 0.043179] io scheduler deadline registered
[ 0.043212] io scheduler cfq registered (default)
[ 0.046544] registering netback
[ 0.048173] Linux agpgart interface v0.103
[ 0.048207] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[ 0.048412] input: Macintosh mouse button emulation as /devices/virtual/input/input0
[ 0.048463] PNP: No PS/2 controller found. Probing ports directly.
[ 0.049283] i8042.c: No controller found.
[ 0.049349] mice: PS/2 mouse device common for all mice
[ 0.049576] rtc_cmos rtc_cmos: rtc core: registered rtc_cmos as rtc0
[ 0.174162] cpuidle: using governor ladder
[ 0.174171] cpuidle: using governor menu
[ 0.174188] No iBFT detected.
[ 0.174612] TCP cubic registered
[ 0.174791] NET: Registered protocol family 10
[ 0.175436] lo: Disabled Privacy Extensions
[ 0.175812] Mobile IPv6
[ 0.175821] NET: Registered protocol family 17
[ 0.175973] registered taskstats version 1
[ 0.175995] XENBUS: Device with no driver: device/vbd/51714
[ 0.176004] XENBUS: Device with no driver: device/vbd/51713
[ 0.176011] XENBUS: Device with no driver: device/vif/0
[ 0.176018] XENBUS: Device with no driver: device/console/0
[ 0.176043] /build/buildd-linux-2.6_2.6.32-30-amd64-d4MbNM/linux-2.6-2.6.32/debian/build/source_amd64_xen/drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
[ 0.176072] Initalizing network drop monitor service
[ 0.176219] Freeing unused kernel memory: 600k freed
[ 0.176389] Write protecting the kernel read-only data: 4328k
Loading, please wait...
[ 0.228234] udev[46]: starting version 164
[ 0.316800] Initialising Xen virtual ethernet driver.
[ 0.330826] blkfront: xvda2: barriers enabled
[ 0.332243] Setting capacity to 31457280
[ 0.332257] xvda2: detected capacity change from 0 to 16106127360
[ 0.332903] blkfront: xvda1: barriers enabled
[ 0.334222] Setting capacity to 1048576
[ 0.334234] xvda1: detected capacity change from 0 to 536870912
Begin: Loading essential drivers ... done.
Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Running /scripts/local-premount ... done.
[ 0.597917] kjournald starting. Commit interval 5 seconds
[ 0.597938] EXT3-fs: mounted filesystem with ordered data mode.
Begin: Running /scripts/local-bottom ... done.
done.
Begin: Running /scripts/init-bottom ... done.
INIT: version 2.88 booting
Using makefile-style concurrent boot in runlevel S.
Starting the hotplug events dispatcher: udevd[ 0.762185] udev[147]: starting version 164
.
Synthesizing the initial hotplug events...done.
Waiting for /dev to be fully populated...[ 0.871458] input: PC Speaker as /devices/platform/pcspkr/input/input1
[ 0.973613] Error: Driver 'pcspkr' is already registered, aborting...
done.
Activating swap...[ 1.095101] Adding 524280k swap on /dev/xvda1. Priority:-1 extents:1 across:524280k SS
done.
Checking root file system...fsck from util-linux-ng 2.17.2
/dev/xvda2: clean, 13584/983040 files, 195590/3932160 blocks
done.
[ 1.133306] EXT3 FS on xvda2, internal journal
Loading kernel modules...done.
Cleaning up ifupdown....
Setting up networking....
Activating lvm and md swap...done.
Checking file systems...fsck from util-linux-ng 2.17.2
done.
Mounting local filesystems...done.
Activating swapfile swap...done.
Cleaning up temporary files....
Setting kernel variables ...done.
Configuring network interfaces...SIOCADDRT: No such process
Failed to bring up eth0.
done.
Cleaning up temporary files....
INIT: Entering runlevel: 2
Using makefile-style concurrent boot in runlevel 2.
Starting enhanced syslogd: rsyslogd.
Starting OpenBSD Secure Shell server: sshd.
Starting periodic command scheduler: cron.
Debian GNU/Linux 6.0 debsqueeze hvc0
debsqueeze login:
Pour voir si votre machine virtuelle tourne, utilisez xentop
:
user@dom0$ sudo xentop
xentop - 11:36:07 Xen 4.0.1
2 domains: 1 running, 1 blocked, 0 paused, 0 crashed, 0 dying, 0 shutdown
Mem: 16767188k total, 15245088k used, 1522100k free CPUs: 8 @ 1862MHz
NAME STATE CPU(sec) CPU(%) MEM(k) MEM(%) MAXMEM(k) MAXMEM(%) VCPUS NETS NETTX(k) NETRX(k) VBDS VBD_OO VBD_RD VBD_WR
VBD_RSECT VBD_WSECT SSID
debsqueeze --b--- 1 0.0 127232 0.8 131072 0.8 1 1 0 0 2 0 978 79
28146 1000 0
Domain-0 -----r 27539 400.7 14896180 88.8 no limit n/a 8 0 0 0 0 0 0 0
0 0 0
Delay Networks vBds Tmem VCPUs Repeat header Sort order Quit
On peut voir que la machine debsqueeze tourne 
Configuration réseau de la vm
Pour l'instant la configuration de la vm ressemble à ça :
root@debsqueeze:~# ifconfig
eth0 Link encap:Ethernet HWaddr 00:16:3e:00:00:40
inet addr:88.190.223.115 Bcast:88.255.255.255 Mask:255.255.255.255
inet6 addr: fe80::216:3eff:fe00:40/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:4 errors:0 dropped:0 overruns:0 frame:0
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:244 (244.0 B) TX bytes:468 (468.0 B)
Interrupt:246
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:16436 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:536 (536.0 B) TX bytes:536 (536.0 B)
root@debsqueeze:~# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
Comme je le disais, par défaut, votre VM n'a pas encore accès au net. Pour ceci, vous allez devoir ajouter la gateway avec une certaine configuration
root@debsqueeze:~# route add 88.190.11.1/32 dev eth0
root@debsqueeze:~# route add default gw 88.190.11.1
Nous pouvons maintenant vérifier que nous avons le net à partir de la VM :
root@debsqueeze:~# ping -c 3 free.fr
PING free.fr (212.27.48.10) 56(84) bytes of data.
64 bytes from www.free.fr (212.27.48.10): icmp_req=1 ttl=122 time=0.868 ms
64 bytes from www.free.fr (212.27.48.10): icmp_req=2 ttl=122 time=0.895 ms
64 bytes from www.free.fr (212.27.48.10): icmp_req=3 ttl=122 time=0.948 ms
--- free.fr ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2004ms
rtt min/avg/max/mdev = 0.868/0.903/0.948/0.048 ms
Et depuis l'exterieur vers la vm :
moi@autremachine$ ssh root@88.190.223.115
root@88.190.223.115's password:
Linux debsqueeze 2.6.32-5-xen-amd64 #1 SMP Wed Jan 12 05:46:49 UTC 2011 x86_64
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Sat Feb 26 11:44:46 2011
root@debsqueeze:~#
Pour mémoriser cette configuration, nous allons modifier le fichier /etc/network/interfaces (j'ai installé vim entre temps) :
root@debsqueeze:~# vim /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 88.190.223.115
netmask 255.255.255.255
# les deux lignes à rajouter :
post-up route add -host 88.190.11.1/32 dev eth0
post-up route add default gw 88.190.11.1
# post-up ethtool -K eth0 tx off
#
# The commented out line above will disable TCP checksumming which
# might resolve problems for some users. It is disabled by default
#
Erreurs
- Si vous avez un peth0 qui est actif dans votre
ifconfig
, redémarrer votre machine. Cette interface doit venir de l'installation de xen en bridge. Faire un ifconfig peth0 down
va tout simplement vous couper l'accès au réseau.
Sources :