Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Dec 2017 17:07:56 +0100
From:      Harry Schmalzbauer <freebsd@omnilan.de>
To:        Shawn Webb <shawn.webb@hardenedbsd.org>
Cc:        freebsd-virtualization@freebsd.org
Subject:   Re: Unable to use renamed tap device
Message-ID:  <5A47B9DC.4070503@omnilan.de>
In-Reply-To: <20171230061053.ui4wc4yqw7szsbuw@mutt-hbsd>
References:  <20171230061053.ui4wc4yqw7szsbuw@mutt-hbsd>

next in thread | previous in thread | raw e-mail | index | archive | help
 Bezüglich Shawn Webb's Nachricht vom 30.12.2017 07:10 (localtime):
> Hey All,
>
> I'm in the process of reorganizing my bhyve setup on my development
> laptop. I'd like to have rename the tap devices to match the name of
> the VM so that it's easier to keep track of. Otherwise, I have to keep
> a spreadsheet of (tap3 -> win10-vm, tap4 -> fbsd-vm).
>
> It appears bhyve doesn't attach renamed tap devices. Here's the steps
> I used:
>
> ifconfig bridge0 create
> ifconfig tap0 create name fbsd-01
> ifconfig bridge0 addm em0 addm fbsd-01 up
> sh /usr/share/examples/bhyve/vmrun.sh -t fbsd-01 [normal vmrun.sh arguments here]
>
> (In this example, em0 is the physical network device connected to the
> LAN. I want to share em0 with the host and the guest via the bridge.)
>
> The net.link.tap.up_on_open sysctl node is set to 1. Normally, when
> bhyve starts up (with tap0 instead of fbsd-01), it opens the tap
> device and UPs it. I'm not seeing that same behavior with a renamed
> tap interface:
>
> $ ifconfig ld-03_01
> ld-03_01: flags=8903<UP,BROADCAST,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
>         options=80000<LINKSTATE>
>         ether 00:bd:df:e9:f6:04
>         groups: tap
>         media: Ethernet autoselect
>         status: no carrier
>         nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>
> So, it seems to me that bhyve doesn't like it when tap devices are
> renamed. Can anyone shed some light on this?

Unfortunately not too much, besides this report:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219746

As long as the control device name isn't also renamed, tap/vmnet
renaming should be blocked in rc(8), since it can't work the way it is
at the moment.
Unfortunately my C skills don't allow me to check if renaming the
control device could/should be implemented in whatever functions are
responsible for IF renaming (meaning to make it a kernel task).  Or if
it would be better to utilize devd(8)!?

-harry 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5A47B9DC.4070503>