Hi all,
I've been playing with the recently added support for adding ips and
routes to a type"ethernet" kind of device.
My goal is to get rid of bridging and use host routes (/32) combined
with Bird for a pure layer3 setup.
Something similar to what
https://www.projectcalico.org/ is doing
Instead of p2p addresses with peers they use device routes (ip route
add 192.168.0.1/32 dev vnet0) combined with static arp entries.
I am a bit stuck though. I've created the vm with a tap device:
<interface type='ethernet'>
<mac address='00:1a:4a:1b:d9:cc'/>
<model type='virtio'/>
<rom bar="off"/>
<source>
<ip address='192.168.42.41' family='ipv4'
peer='192.168.42.42' prefix='32'/>
<route family='ipv4' address='192.168.100.0'
prefix='24' gateway='192.168.42.42'/>
</source>
</interface>
After starting, the link stays down and no ips or routes are being created:
root@test1: ~# ip link show dev vnet0
15: vnet0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode
DEFAULT qlen 1000
link/ether fe:1a:4a:1b:d9:cc brd ff:ff:ff:ff:ff:ff
root@test1: ~# ip route show
default via 10.10.5.1 dev br1010
10.10.5.0/24 dev br1010 proto kernel scope link src 10.10.5.2
I feel like I'm missing a step. Who is responsible for setting the
link up, it this libvirtd, qemu, or do I need to write a qemu-ifup
script?
Any help is greatly appreciated.
Kind regards,
Ruben Kerkhof