I'm trying to understand why there aren't any linux vm that can connect to internet if emulated with bhyve (it's level 2 hypervisor which run on freebsd 13). Instead,if I use vm-bhyve (a wrapper for bhyve) they can.
I've compared the routes added by vm-bhyve and by bhyve,to try to understand why the first one allows any linux distro to connect to internet and the second one,doesn't,and I found that the route below is added by vm-bhyve but not by bhyve. I tried to add it manually inside ubuntu using this command :
route add default gw 192.168.1.1 enp0s5
but,instead of adding 192.168.1.1
,it adds _gateway
. I think that it is the reason why it does not work. Also the metric should be changed. The right one is 100,but the command that I have issued doesnt add 100,but its still 0.
Does vm-bhyve add that route at the host level ? Since I'm not a coder,I'm not able to understand how works the vm-bhyve source code,I would like to know if I can add that route within ubuntu 21.04 guest os.
So,below you can see the route that works :
Destination = default
gateway = 192.168.1.1
genmask = 0.0.0.0
flags = UG
metric = 100
ref = 0
use = 0
iface = enps05
and below you can see the route that's added manually when I issue the command route add default gw 192.168.1.1 enp0s5 :
Destination = default
gateway = _gateway
genmask = 0.0.0.0
flags = UG
metric = 0
ref = 0
use = 0
iface = enps05
maybe that command is wrong ? how it could be ?