I have read a couple of threads where the poster had seemingly the same problem as I had, but their solutions either didn't work, or I had already tried it. I'm hoping there is something I missed and that I've made a simple mistake.
I have a FreeBSD 13.1 server with its main Ethernet interface connected to igc0. I then have two VLAN's for separate networks. Both of these have the same problem, but for the sake of this discussion I'm using the one called "ext" which is outside the firewall (it's my DMZ network).
I'm using both IPv4 and IPv6. For all my tests, the behaviour are the same regardless of whether I'm doing tests via IPv4 or IPv6. I'm not really considering my IPv6 network secret, but I'm still hiding it in this post in order to reduce potential spam and network probes. In my logs I have replaced the network name by NNNN:NNNN:NNNN.
Here's the output of ifconfig -a for igc0 and ext:
Note that ext does not have an IP address assigned. This is intentional as I don't want to expose my server to the external network. However, I have tried to temporarily assign an address to the interface and confirmed that everything worked (I can ping my the router's IP on the DMZ network).
With this configuration, I originally used Virtualbox to create an Ubuntu VM with the network assigned to ext. Once I did this, everything worked and I was able to get both IPv4 and IPv6 to work on the DMZ network.
Because of a lot of problems with Virtualbox I decided to move to bhyve, and I've used vm-byhve to set everything up. I used the ubuntu cloud image, but I also tried to run the Ubuntu installer and I couldn't find any network in the installer.
I created the network as follows:
This is the output from vm switch info dmz:
I then use vm configure to set the network0_switch to dmz.
When I start the vm, I can see the following interfaces:
As best as I can tell, this should be enough to get everything to work. However, after I boot, and configure the IP addresses correctly (as best as I can tell exactly the same as I did on the VM I was running in Virtualbox) I simply cannot get any connectivity at all. I can ping my own IP address, but I can't even reach the router. It's as if nothing is connected to the interface at all.
I have even tried to configure a bridge to configure everything manually, but the result was the same.
I have a FreeBSD 13.1 server with its main Ethernet interface connected to igc0. I then have two VLAN's for separate networks. Both of these have the same problem, but for the sake of this discussion I'm using the one called "ext" which is outside the firewall (it's my DMZ network).
I'm using both IPv4 and IPv6. For all my tests, the behaviour are the same regardless of whether I'm doing tests via IPv4 or IPv6. I'm not really considering my IPv6 network secret, but I'm still hiding it in this post in order to reduce potential spam and network probes. In my logs I have replaced the network name by NNNN:NNNN:NNNN.
Here's the output of ifconfig -a for igc0 and ext:
Code:
igc0: flags=8963<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=4a520b9<RXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,RXCSUM_IPV6,NOMAP>
ether 50:eb:f6:50:63:09
inet 192.168.1.11 netmask 0xffffff00 broadcast 192.168.1.255
inet6 fe80::52eb:f6ff:fe50:6309%igc0 prefixlen 64 scopeid 0x1
inet6 NNNN:NNNN:NNNN::11 prefixlen 64
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
ext: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=4200001<RXCSUM,RXCSUM_IPV6,NOMAP>
ether 50:eb:f6:50:63:09
groups: vlan
vlan: 100 vlanproto: 802.1q vlanpcp: 0 parent interface: igc0
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
Note that ext does not have an IP address assigned. This is intentional as I don't want to expose my server to the external network. However, I have tried to temporarily assign an address to the interface and confirmed that everything worked (I can ping my the router's IP on the DMZ network).
With this configuration, I originally used Virtualbox to create an Ubuntu VM with the network assigned to ext. Once I did this, everything worked and I was able to get both IPv4 and IPv6 to work on the DMZ network.
Because of a lot of problems with Virtualbox I decided to move to bhyve, and I've used vm-byhve to set everything up. I used the ubuntu cloud image, but I also tried to run the Ubuntu installer and I couldn't find any network in the installer.
I created the network as follows:
Code:
vm switch create -i ext dmz
This is the output from vm switch info dmz:
Code:
local: _netgraph,: bad variable name
------------------------
Virtual Switch: dmz
------------------------
type: standard
ident: vm-dmz
vlan: -
physical-ports: ext
bytes-in: 0 (0.000B)
bytes-out: 0 (0.000B)
I then use vm configure to set the network0_switch to dmz.
When I start the vm, I can see the following interfaces:
Code:
vm-dmz: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
ether 46:25:2c:87:aa:42
id 00:00:00:00:00:00 priority 32768 hellotime 2 fwddelay 15
maxage 20 holdcnt 6 proto rstp maxaddr 2000 timeout 1200
root id 00:00:00:00:00:00 priority 32768 ifcost 0 port 0
member: tap1 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
ifmaxaddr 0 port 9 priority 128 path cost 2000000
member: ext flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
ifmaxaddr 0 port 3 priority 128 path cost 20000
groups: bridge vm-switch viid-6ffdb@
nd6 options=9<PERFORMNUD,IFDISABLED>
tap1: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
description: vmnet/ext/0/dmz
options=80000<LINKSTATE>
ether 58:9c:fc:00:78:4b
groups: tap vm-port
media: Ethernet autoselect
status: active
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
Opened by PID 17379
As best as I can tell, this should be enough to get everything to work. However, after I boot, and configure the IP addresses correctly (as best as I can tell exactly the same as I did on the VM I was running in Virtualbox) I simply cannot get any connectivity at all. I can ping my own IP address, but I can't even reach the router. It's as if nothing is connected to the interface at all.
I have even tried to configure a bridge to configure everything manually, but the result was the same.