Weird VLAN problem

So I tried to connect our Netgear GS748v5 switch with our RB2011 using VLAN tags yesterday night. The setup was as follows:

  • bridge-trunk with eth2 + eth3
  • vlan-1 on top of bridge-trunk
  • bridge-1 with vlan-1 and eth4
  • DHCP server on bridge-1
  • Address on bridge-1

The idea was that tagged traffic goes via eth2 between RB and the switch and the endpoints connected at the switch get IP addresses from the DHCP server. For this I configured the switch’s ports so that they are untagged members of VLAN 1 and only the port connected with RB was a tagged member of VLAN 1. However, none of the devices connected to the switch did get an IP address. Even if I assigned them an address manually I couldn’t ping the router. I did some debugging:

  • Connected my VLAN-enabled Linux laptop to eth3 (in bridge-trunk) and I got an IP address as expected over the VLAN interface eth0.1, but none over the standard interface eth0. Ping also worked.
  • Sniffed the traffic on the tagged switch port and many packets had a VLAN id of 1
  • Tried the sniffer on RB’s eth2 but almost none of the packets showed a VLAN id, only the ones leaving the switch. However, I didn’t get comfortable with the packet sniffer, maybe I did something wrong there.

So it seems everything should work, however it didn’t at all.
My questions:

  • Is there any obvious misconfiguration I did?
  • How can I debug the problem further?

Thanks in advance!

Obvious things: don’t use VLAN 1, use another number.
I normally don’t put vlan on a bridge, but on the interfaces themselves.
So in your case put a VLAN interface on both eth2 and eth3 and put those two VLAN in the bridge with eth4.

Thanks for your thoughts. Actually, I didn’t only use VLAN id 1 but also three others but non of them worked.
As for vlan on bridge vs. vlan on interface: I will definitely try this one but it doesn’t really explain why it works when I connect a laptop to the trunk port, does it?