On Mon, Jun 03, 2024 at 10:52:55PM -0700, jrmu wrote:
> Greetings,
>
> I am having a hard time figuring out how to bridge vport(4) and tap(4)
> interfaces.
>
> Previously, I had set up vmm with bridge(4) and vether(4), and all was
> working well. However, I recently heard that veb(4) has better
> performance, so I tried to replace my bridge0 and vether0 with veb0 and
> vport0 respectively, but now it's failing.
>
> This I think is due how "to veb takes over the operation of the interfaces
> that are added as ports" but I'm not sure how to fix it.
>
> When I try to use one of the VM IPs (like 104.167.241.51) it is unable to
> reach the IP assigned to vport0 (104.167.241.49) even though ip4 packet
> forwarding has been enabled.
>
> Here are the configurations and networking output:
>
> $ cat /etc/hostname.veb0
> add vport0
> $ cat /etc/hostname.vport0
> inet 104.167.241.49 0xfffffff8
> inet6 2602:fccf:4::1 48
>
> $ cat /etc/vm.conf
> socket owner :vmdusers
>
> switch "switch0" {
> group vms
> locked lladdr
> interface veb0
> }
>
> bsdiso="/home/iso/install75.iso"
>
> vm "mattbsd" {
> owner matt
> memory 8G
> cdrom $bsdiso
> disk /home/matt/disks/openbsd.qcow2 format qcow2
> interface tap0 {
> locked lladdr e8:8b:27:7b:7a:01
> switch "switch0"
> }
> }
>
> vm "jrmu" {
> owner jrmu
> memory 2G
> cdrom $bsdiso
> disk /home/jrmu/jrmu.qcow2 format qcow2
> interface tap1 {
> locked lladdr e8:8b:27:7b:7a:02
> switch "switch0"
> }
> }
>
> vm "errorbsd" {
> owner matt
> memory 8G
> cdrom $bsdiso
> disk /home/matt/disks/errorbsd.qcow2 format qcow2
> interface tap2 {
> locked lladdr e8:8b:27:7b:7a:03
> switch "switch0"
> }
> }
>
> vm "jrmu2" {
> owner jrmu
> memory 2G
> cdrom $bsdiso
> disk /home/jrmu/jrmu2.qcow2 format qcow2
> interface tap3 {
> locked lladdr e8:8b:27:7b:7a:04
> switch "switch0"
> }
> }
>
> $ route -n show -inet
> Routing tables
>
> Internet:
> Destination Gateway Flags Refs Use Mtu Prio Iface
> default 104.167.241.193 UGS 4 534 - 8 em1
> 224/4 127.0.0.1 URS 0 0 32768 8 lo0
> 104.167.241.192/26 104.167.241.211 UCn 1 248 - 4 em1
> 104.167.241.48/29 104.167.241.49 Cn 6 0 - 4 vport0
> 104.167.241.48 link#6 HLc 0 56 - 3 vport0
> 104.167.241.49 fe:e1:ba:d0:a5:db UHLl 0 23 - 1 vport0
> 104.167.241.50 link#6 HLc 0 148 - 3 vport0
> 104.167.241.51 link#6 HLc 0 132 - 3 vport0
> 104.167.241.52 link#6 HLc 0 104 - 3 vport0
> 104.167.241.53 link#6 HLc 0 88 - 3 vport0
> 104.167.241.54 link#6 HLc 0 228 - 3 vport0
> 104.167.241.55 104.167.241.49 Hb 0 78 - 1 vport0
> 104.167.241.193 ac:1f:6b:fe:ca:98 UHLch 1 124 - 3 em1
> 104.167.241.211 00:25:90:5a:2d:92 UHLl 0 92 - 1 em1
> 104.167.241.255 104.167.241.211 UHb 0 82 - 1 em1
> 127/8 127.0.0.1 UGRS 0 0 32768 8 lo0
> 127.0.0.1 127.0.0.1 UHhl 2 358 32768 1 lo0
>
> lo0: flags=2008049<UP,LOOPBACK,RUNNING,MULTICAST,LRO> mtu 32768
> index 4 priority 0 llprio 3
> groups: lo
> inet6 ::1 prefixlen 128
> inet6 fe80::1%lo0 prefixlen 64 scopeid 0x4
> inet 127.0.0.1 netmask 0xff000000
> em0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500
> lladdr 00:25:90:5a:2d:93
> index 1 priority 0 llprio 3
> media: Ethernet autoselect (none)
> status: no carrier
> em1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
> lladdr 00:25:90:5a:2d:92
> index 2 priority 0 llprio 3
> groups: egress
> media: Ethernet autoselect (1000baseT full-duplex,master)
> status: active
> inet 104.167.241.211 netmask 0xffffffc0 broadcast 104.167.241.255
> inet6 fe80::225:90ff:fe5a:2d92%em1 prefixlen 64 scopeid 0x2
> inet6 2602:fccf:400:41::1 prefixlen 64
> enc0: flags=0<>
> index 3 priority 0 llprio 3
> groups: enc
> status: active
> veb0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST>
> description: switch1-switch0
> index 5 llprio 3
> groups: veb
> vport0 flags=3<LEARNING,DISCOVER>
> port 6 ifpriority 0 ifcost 0
> tap0 flags=3<LEARNING,DISCOVER>
> port 8 ifpriority 0 ifcost 0
> tap1 flags=3<LEARNING,DISCOVER>
> port 9 ifpriority 0 ifcost 0
> tap2 flags=3<LEARNING,DISCOVER>
> port 10 ifpriority 0 ifcost 0
> tap3 flags=3<LEARNING,DISCOVER>
> port 11 ifpriority 0 ifcost 0
> vport0: flags=8902<BROADCAST,PROMISC,SIMPLEX,MULTICAST> mtu 1500
This interface is not UP. Not sure why.
> lladdr fe:e1:ba:d0:a5:db
> index 6 priority 0 llprio 3
> groups: vport
> inet 104.167.241.49 netmask 0xfffffff8 broadcast 104.167.241.55
> inet6 fe80::fce1:baff:fed0:a5db%vport0 prefixlen 64 scopeid 0x6
> inet6 2602:fccf:4::1 prefixlen 48
> pflog0: flags=141<UP,RUNNING,PROMISC> mtu 33136
> index 7 priority 0 llprio 3
> groups: pflog
> tap0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
> lladdr fe:e1:ba:d1:46:43
> description: vm1-if0-mattbsd
> index 8 priority 0 llprio 3
> groups: tap vms
> status: active
> tap1: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
> lladdr fe:e1:ba:d2:1d:91
> description: vm2-if0-jrmu
> index 9 priority 0 llprio 3
> groups: tap vms
> status: active
> tap2: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
> lladdr fe:e1:ba:d3:01:28
> description: vm3-if0-errorbsd
> index 10 priority 0 llprio 3
> groups: tap vms
> status: active
> tap3: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
> lladdr fe:e1:ba:d4:9e:ea
> description: vm4-if0-jrmu2
> index 11 priority 0 llprio 3
> groups: tap vms
> status: active
>
> --
> jrmu
> IRCNow (https://ircnow.org)
--
:wq Claudio