Bridging a Cisco Trunk

Dave Raven dave at
Thu Jan 12 05:39:16 PST 2006

Hi Peter and list, 
	 I am unfortunately using 4.x - but it should work fine as far as my
understanding is. I'm not sure why it isn't working, but if I bridge em0 and
em1 (my two interfaces) the cisco switches can ping each other. The problem
is that anything inside the vlan being trunked doesn't go through

Now I have tried your setup below and created the vlans and bridged them,
which didn't work, but I don't understand the need for the vlans to be
created anyway. Surely I should be able to just transparently bridge any
traffic that comes from the one side through to the other, and it should
work fine? 

I don't need to communicate on the vlan, just bridge anything that comes
through... If I do have to add vlan0,vlan1 to a bridge that's also fine -
but at the moment its not working. 

Thanks for the help

-----Original Message-----
From: Peter Wood [mailto:peter at] 
Sent: 11 January 2006 08:29 PM
To: Dave Raven
Cc: freebsd-questions at
Subject: Re: Bridging a Cisco Trunk


 > 	I have two cisco switches, configured to put ports 2-6 on each of
 > them into vlan 100. Then I have port 1 on both set to trunk between the
two  > switches. If I have a device on port 2 on switch1 it can ping a
device on  > port 2 on switch2.

I do this quite often, and it works very well on 6.0 for me. You haven't
mentioned what version your using, but I will assume you have if_bridge. 
If you don't and you're gonna use this machine alot for bridging, I'd
recommend moving to 6.0.

So presumably, you have two interfaces, plugged into the trunk port on each
cisco. For arguements sake, we'll say you have an fxp0 and fxp1.

So first step is you need to make sure these two interfaces are "up", very
important, if they arn't, then it wont work. It's easy to forget if you
arn't assigning IP's to them.

Remove "polling" if you don't have it compiled into the kernel, but again if
you're gonna be bridging packets alot, get it compiled in. It helps....

ifconfig_fxp0="up polling"
ifconfig_fxp1="up polling"

Now create the vlans (and the bridge for later on).

cloned_interfaces="vlan0 vlan1 bridge0"
ifconfig_vlan0="vlan 100 vlandev fxp0 up"
ifconfig_vlan1="vlan 100 vlandev fxp1 up"

In the above please note the "up"s, if they arn't up then it wont bridge.
Now setup the bridge, again noticing the "up".

ifconfig_bridge0="addm vlan0 addm vlan1 up"

It should now be working, watch the kernel console and the cisco's logs to
see if there are any mismatches or bridging loops.

It also seems that you have to put the "up" at the end of these commands, it
took an hour of debugging last night after I had put the up at the start of
the ifconfig_vlan lines.

Give it a go, send a reply to both me and the list if you are still stuck,

Peter Wood :: <peter at>

More information about the freebsd-questions mailing list