I am setting up an OpenBSD system as a router, I have one interface as the upstream, then another with a vlan configured:


inet NONE description upstream




inet NONE vlan 10 vlandev em1

When I ping from a client with a static IP of, and run a tcpdump on my OpenBSD box I get the ARP queries:

Jun 20 16:40:16.170853 08:00:27:9c:0c:38 ff:ff:ff:ff:ff:ff 0806 60: arp who-has tell

So it is clearly receiving the arps, but is not responding.

Anyone got any ideas?

Edit: Here is the routing table: enter image description here

  • Is your client using the same vlan tag when it sends the ARP request? Commented Jun 21, 2018 at 20:02

1 Answer 1


The issue appears to be that you have set up a VLAN interface, which expects tagged frames (802.1Q -- https://en.wikipedia.org/wiki/IEEE_802.1Q), but the client host's IP address is simply configured, without VLAN tagging or configuration. A tagged / VLAN ethernet packet would show up similarly to this one:

May 01 15:06:43.890173 01:23:45:67:89:0a bc:de:f0:12:34:56 8100 161: 802.1Q vid 5 pri 3 > 5001 3/0/0 CNAME[|domain]

Note the 'vid' and 802.1Q information indicating that the packet is on VLAN 5. Because your client's packets are arriving with out the VLAN 10 tag, they are correctly ignored by the IP address configured on the hardware interface em0,

Depending on your setup and goals, there are a few possible ways to get those stations communicating.

  1. Configure the client host's network interface to use VLAN 10 and tag the frames;
  2. If the client is on a VLAN defined by your switch, check to make sure that your switch tags VLAN 10 on the interface where your OpenBSD machine is attached;
  3. If the intent is only to have both the client and OpenBSD machine on the same network VLAN / segment, you don't really need VLANs at all -- you could use ifconfig em0 alias to set up that IP address as a second address on the same interface.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .