LINUX.ORG.RU
ФорумAdmin

[gentoo][qemu][kvm][сеть] Настройка bridge для qemu

 , , ,


0

1

Есть gentoo. Есть qemu-kvm Настроил br0 + tap0,tap1. В ifconfig показывается В sysctl поставил net.ipv4.ip_forwarding=1

Запускаю

qemu -net nic,macaddr=<bla-bla> -net tap,ifname=tap1,script=no -hda some.qcow2 -cdrom gentoo-minimal.iso -boot d -m 512 -curses

И в загрузившемся госте сети не видно! Что я делаю не так?

Это будет виртуальный сервер, поэтому надо настроить сеть так чтобы и форвардинг пакетов на него шел в определенных случаях. А тут ее вообще нет.

★★★★★

Последнее исправление: XVilka (всего исправлений: 2)

Ответ на: комментарий от Pinkbyte
br0       
Link encap:Ethernet  HWaddr 42:68:9c:43:36:0b  
inet addr:46.4.23.4  Bcast:46.4.23.63  Mask:255.255.255.192
inet6 addr: fe80::4068:9cff:fe43:360b/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:5323526 errors:0 dropped:20 overruns:0 frame:0
TX packets:5965391 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0 
RX bytes:2830129334 (2.6 GiB)  TX bytes:1735784537 (1.6 GiB)

bridge name	bridge id		STP enabled	interfaces
br0		8000.42689c43360b	no		eth0
						                	tap0
						                	tap1
XVilka ★★★★★
() автор топика
Ответ на: комментарий от Pinkbyte

lspci -k:

00:03.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 20)
 Subsystem: Red Hat, Inc Device 1100
 Kernel driver in use: 8139cp
 Kernel modules : 8139cp, 8139too

ifconfig -a:

eth0
Link encap:Ethernet  HWaddr  
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:66 errors:0 dropped:0 overruns:0 frame:0
TX packets:124 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0 
RX bytes:3600 (3.5 KiB)  TX bytes:5324 (5.1 KiB)
Interrupt:11 Base address:0xc000

lo
Link encap:Local Loopback
inet addr: 127.0.0.1 Mask: 255.0.0.0
UP LOOPBACK RUNNING MTU:16436  Metric:1
RX packets:120 errors:0 dropped:0 overruns:0 frame:0
TX packets:120 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0 
RX bytes:2160 (2.1 KiB)  TX bytes:2160 (2.1 KiB)

XVilka ★★★★★
() автор топика
Ответ на: комментарий от XVilka

а если назначить вручную ip на eth0 внутри виртуальной машины(любой незанятый из подсети 46.4.23.0/26) и пропинговать 46.4.23.4?

Pinkbyte ★★★★★
()

Попробуй на хосте добавить такое правило iptables:

-A FORWARD -m physdev --physdev-is-bridged -j ACCEPT

Deleted
()
Ответ на: комментарий от Pinkbyte
tcpdump -i tap1
tcpdump: WARNING: tap1: no IPv4 address assigned
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on tap1, link-type EN10MB ()Ethernet), capture size 65535 bytes
06:27:37.693272 ARP, Request who-has 43.4.23.4 tell 43.4.23.99, length 28
06:27:38.693217 ARP, Request who-has 43.4.23.4 tell 43.4.23.99, length 28
06:27:39.693157 ARP, Request who-has 43.4.23.4 tell 43.4.23.99, length 28
06:27:40.703066 ARP, Request who-has 43.4.23.4 tell 43.4.23.99, length 28
06:27:41.703048 ARP, Request who-has 43.4.23.4 tell 43.4.23.99, length 28
06:27:42.702994 ARP, Request who-has 43.4.23.4 tell 43.4.23.99, length 28
06:27:43.712900 ARP, Request who-has 43.4.23.4 tell 43.4.23.99, length 28
06:27:44.712833 ARP, Request who-has 43.4.23.4 tell 43.4.23.99, length 28
06:27:45.712831 ARP, Request who-has 43.4.23.4 tell 43.4.23.99, length 28
06:27:46.722739 ARP, Request who-has 43.4.23.4 tell 43.4.23.99, length 28
06:27:47.722723 ARP, Request who-has 43.4.23.4 tell 43.4.23.99, length 28
06:27:48.722666 ARP, Request who-has 43.4.23.4 tell 43.4.23.99, length 28

Это я когда пинг запускаю в госте.

XVilka ★★★★★
() автор топика
Ответ на: комментарий от XVilka

На хосте вообще iptables настроен? Покажи вывод

iptables-save

Проблема может быть в том, что ядро проходящие через мост пакеты по умолчанию пропускает через цепочку FORWARD netfilter'а. В качестве альтернативы добавлению разрешающего правила в iptables можно сделать примерно так:

sysctl net.bridge.bridge-nf-call-iptables=0

Deleted
()
Ответ на: комментарий от Deleted

sysctl net.bridge.bridge-nf-call-iptables=0 - error: is unknown key

iptables-save:

iptables-save v1.4.11.1 on Sun Jul  3 06:53:23 2011
*nat
:PREROUTING ACCEPT []270187:15831422]
:INPUT ACCEPT []270185:15831358]
:OUTPUT ACCEPT []453257:31954969]
:POSTROUTING ACCEPT []453257:31954969]
COMMIT
# Completed on Sun Jul  3 06:53:23 2011
# Generated by iptables-save v1.4.11.1 on Sun Jul  3 06:53:23 2011
*mangle
:PREROUTING ACCEPT []11167166:6338952454]
:INPUT ACCEPT []11167140:6338951622]
:FORWARD ACCEPT []0:0]
:OUTPUT ACCEPT []11762575:4329042144]
:POSTROUTING ACCEPT []11762575:4329042144]
COMMIT
# Completed on Sun Jul  3 06:53:23 2011
# Generated by iptables-save v1.4.11.1 on Sun Jul  3 06:53:23 2011
*filter
:INPUT ACCEPT []201777:94047886]
:FORWARD ACCEPT []0:0]
:OUTPUT ACCEPT []726377:158035790]
-A INPUT -i br0 -j ACCEPT
COMMIT
# Completed on Sun Jul  3 06:53:23 2011

XVilka ★★★★★
() автор топика
Ответ на: комментарий от pekmop1024

оффтоп: как в новом libvirt запретить запуск radvd на интерфейсах с IPv6. Я пока решил это костылем типа killall radvd, но хотелось бы человеческого решения. Желательно(но не обязательно) - без правки исходников

Pinkbyte ★★★★★
()
Ответ на: комментарий от pekmop1024

сначала надо настроить чтобы qemu работал без оберток. А потом можно переходить на libvirt.

XVilka ★★★★★
() автор топика
Ответ на: комментарий от XVilka

имхо, достаточно поработать со слакой, арчем или с гентой, чтобы понять, как оно все работает. В дальнейшем тебе все линуксы покажутся абсолютно одинаковыми, только со своими особенностями.

pekmop1024 ★★★★★
()
Ответ на: комментарий от pekmop1024

я уже много попробовал их. FreeBSD, OpenBSD, RedHat, CentOS, Fedora, OpenSUSE, Debian, Arch, Slakware, LFS, сейчас остановился на Gentoo.

XVilka ★★★★★
() автор топика

в слаке сделал вот так

cat /etc/rc.d/rc.local

#/bin/echo «Install KVM-module...»
#/sbin/modprobe kvm
#/bin/sleep 2
#/sbin/modprobe kvm-intel
#/bin/sleep 2
/bin/chmod 0666 /dev/kvm

/bin/echo «Install TUN-module...»
/sbin/modprobe tun
/bin/sleep 2
/bin/chmod 0666 /dev/net/tun

/usr/sbin/tunctl -u andy -t tap1
/sbin/ifconfig tap1 0.0.0.0 up
/usr/sbin/tunctl -u andy -t tap2
/sbin/ifconfig tap2 0.0.0.0 up
/usr/sbin/tunctl -u andy -t tap3
/sbin/ifconfig tap3 0.0.0.0 up
/usr/sbin/tunctl -u andy -t tap4
/sbin/ifconfig tap4 0.0.0.0 up
/usr/sbin/tunctl -u andy -t tap5
/sbin/ifconfig tap5 0.0.0.0 up
/usr/sbin/tunctl -u andy -t tap6
/sbin/ifconfig tap6 0.0.0.0 up

/bin/echo -n «Create bridge interface...»
/sbin/brctl addbr br0
/bin/echo " and add tunX interfaces to bridge..."
/sbin/brctl addif br0 tap1
/sbin/brctl addif br0 tap2
/sbin/brctl addif br0 tap3
/sbin/brctl addif br0 tap4
/sbin/brctl addif br0 tap5
/sbin/brctl addif br0 tap6
/sbin/ifconfig br0 192.168.200.1 up

/bin/echo 1 > /proc/sys/net/ipv4/ip_forward
/usr/sbin/iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 192.168.1.5

andy03
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.