Nic add » История » Версия 6
Андрей Волков, 2014-11-07 16:10
| 1 | 1 | Андрей Волков | h1. Добавление сетевой карты в QMP Shell |
|---|---|---|---|
| 2 | |||
| 3 | h2. Создаем и запускаем сетевой интерфейс: |
||
| 4 | |||
| 5 | <pre> |
||
| 6 | /etc/init.d/net.tap5514 start |
||
| 7 | * Bringing up interface tap5514 |
||
| 8 | * Creating Tun/Tap interface tap5514 ... [ ok ] |
||
| 9 | * Adding ports to br0 |
||
| 10 | * tap5514 ... [ ok ] |
||
| 11 | </pre> |
||
| 12 | |||
| 13 | |||
| 14 | h2. проверяем права на /dev/vhost-net |
||
| 15 | |||
| 16 | <pre> |
||
| 17 | ls -l /dev/vhost-net |
||
| 18 | crw------- 1 root root 10, 238 Dec 20 2013 /dev/vhost-net |
||
| 19 | </pre> |
||
| 20 | |||
| 21 | Меняем на необходимые: |
||
| 22 | |||
| 23 | <pre> |
||
| 24 | chgrp kvm /dev/vhost-net |
||
| 25 | chmod g+rw /dev/vhost-net |
||
| 26 | |||
| 27 | ls -l /dev/vhost-net |
||
| 28 | crw-rw---- 1 root kvm 10, 238 Dec 20 2013 /dev/vhost-net |
||
| 29 | </pre> |
||
| 30 | 2 | Андрей Волков | |
| 31 | h2. Заходим в интерфейс управления |
||
| 32 | |||
| 33 | <pre> |
||
| 34 | qmp-shell -H /run/qemu/qemu5514.control.sock |
||
| 35 | </pre> |
||
| 36 | 3 | Андрей Волков | |
| 37 | h2. Добавляем интерфейс хоста: |
||
| 38 | |||
| 39 | <pre> |
||
| 40 | (QEMU) netdev_add tap,id=tap5514,ifname=tap5514,id=tap5514_1,script=no,downscript=no,vhost=on |
||
| 41 | </pre> |
||
| 42 | |||
| 43 | h2. Добавляем связанное сетевое PCI устройство в гостевую систему |
||
| 44 | |||
| 45 | <pre> |
||
| 46 | (QEMU) device_add virtio-net-pci,netdev=tap5514,mac=08:77:D1:10:55:14 |
||
| 47 | </pre> |
||
| 48 | 4 | Андрей Волков | |
| 49 | h2. Смотрим результат: |
||
| 50 | |||
| 51 | <pre> |
||
| 52 | (QEMU) info network |
||
| 53 | VLAN 0 devices: |
||
| 54 | Devices not on any VLAN: |
||
| 55 | virtio-net-pci.0: type=nic,model=virtio-net-pci,macaddr=08:77:d1:00:55:14 |
||
| 56 | \ qtap5514: type=tap,ifname=qtap5514,script=no,downscript=no |
||
| 57 | virtio-net-pci.1: type=nic,model=virtio-net-pci,macaddr=08:77:d1:10:55:14 |
||
| 58 | \ tap5514: type=tap,ifname=tap5514,script=no,downscript=no |
||
| 59 | </pre> |
||
| 60 | 5 | Андрей Волков | |
| 61 | h2. На госте делаем опрос шины PCI |
||
| 62 | |||
| 63 | <pre> |
||
| 64 | dmesg |
||
| 65 | echo 1 > /sys/bus/pci/rescan |
||
| 66 | dmesg |
||
| 67 | </pre> |
||
| 68 | |||
| 69 | h3. Появившееся устройство: |
||
| 70 | |||
| 71 | <pre> |
||
| 72 | [947453.064494] pci 0000:00:07.0: [1af4:1000] type 00 class 0x020000 |
||
| 73 | [947453.064621] pci 0000:00:07.0: reg 10: [io 0x0000-0x001f] |
||
| 74 | [947453.064684] pci 0000:00:07.0: reg 14: [mem 0x00000000-0x00000fff] |
||
| 75 | [947453.064979] pci 0000:00:07.0: reg 30: [mem 0x00000000-0x0000ffff pref] |
||
| 76 | [947453.065685] pci 0000:00:07.0: BAR 6: assigned [mem 0xe0000000-0xe000ffff pref] |
||
| 77 | [947453.065689] pci 0000:00:07.0: BAR 1: assigned [mem 0xe0010000-0xe0010fff] |
||
| 78 | [947453.065715] pci 0000:00:07.0: BAR 0: assigned [io 0x1000-0x101f] |
||
| 79 | [947453.065998] virtio-pci 0000:00:07.0: enabling device (0000 -> 0003) |
||
| 80 | [947453.066886] virtio-pci 0000:00:07.0: setting latency timer to 64 |
||
| 81 | [947453.067287] virtio-pci 0000:00:07.0: irq 49 for MSI/MSI-X |
||
| 82 | [947453.067314] virtio-pci 0000:00:07.0: irq 50 for MSI/MSI-X |
||
| 83 | [947453.067339] virtio-pci 0000:00:07.0: irq 51 for MSI/MSI-X |
||
| 84 | </pre> |
||
| 85 | 6 | Андрей Волков | |
| 86 | h2. Смотрим сетевые интерфейсы: |
||
| 87 | |||
| 88 | <pre> |
||
| 89 | ifconfig -a |
||
| 90 | </pre> |
||
| 91 | |||
| 92 | <pre> |
||
| 93 | eth1: flags=4098<BROADCAST,MULTICAST> mtu 1500 |
||
| 94 | ether 08:77:d1:10:55:14 txqueuelen 1000 (Ethernet) |
||
| 95 | RX packets 0 bytes 0 (0.0 B) |
||
| 96 | RX errors 0 dropped 0 overruns 0 frame 0 |
||
| 97 | TX packets 0 bytes 0 (0.0 B) |
||
| 98 | TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 |
||
| 99 | </pre> |