How to use if_bridge



I am trying to use if_bridge with OpenVPN and I am having some trouble with
basic bridging.

I am testing it on my laptop with has an ath interface which uses WPA to a
Linksys WRT54G and then to a FreeBSD gateway.

I have tried both configuring ath0 with an IP as well as bridge0 but neither
work. It seems that none of the packets from ath0 appear on bridge0.
ie..
ath0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
ether 00:90:96:c1:90:54
media: IEEE 802.11 Wireless Ethernet autoselect (OFDM/48Mbps)
status: associated
ssid dons channel 6 bssid 00:13:10:9b:52:d4
authmode WPA privacy ON deftxkey UNDEF TKIP 2:128-bit txpowmax 35
protmode CTS burst roaming MANUAL bintval 100
bridge0: flags=8143<UP,BROADCAST,RUNNING,PROMISC,MULTICAST> mtu 1500
inet 10.0.2.102 netmask 0xff000000 broadcast 10.255.255.255
ether ac:de:48:67:74:b6
priority 32768 hellotime 2 fwddelay 15 maxage 20
member: ath0 flags=7<LEARNING,DISCOVER,STP>
port 4 priority 128 path cost 55 blocking

When I run tcpdump..
[inchoate 20:35] ~ >sudo tcpdump -ni bridge0
Password:
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on bridge0, link-type EN10MB (Ethernet), capture size 96 bytes
20:35:30.586751 arp who-has 10.0.2.7 tell 10.0.2.102
[etc]

Whereas a tcpdump on ath0 shows no ARP packets..
I did the following to configure it..

killall devd [to stop it running dhclient]
/etc/rc.d/netif stop ath0
ifconfig bridge0 create
wpa_supplicant -i ath0 -c /etc/wpa_supplicant.conf
ifconfig bridge0 create
ifconfig bridge0 addm ath0
dhclient bridge0

I see the DHCPDISCOVER requests when I tcpdump bridge0 but they don't appear
on ath0.

If I run dhclient on ath0 it works fine for normal traffic but I don't see any
ath0 traffic on bridge0. If I create a tap interface (eg cat /dev/tap0) and
add it to the bridge (ifconfig bridge0 addm tap0) it sees no packets either.

bridge0 appears to learn no addresses..
[inchoate 20:46] ~ >ifconfig bridge0 addr
[inchoate 20:46] ~ >

Am I missing something obvious?
(This is on -current as of 27 Mar)

PS please CC me as I am not subscribed to the list.

Thanks.

--
Daniel O'Connor software and network engineer
for Genesis Software - http://www.gsoft.com.au
"The nice thing about standards is that there
are so many of them to choose from."
-- Andrew Tanenbaum
GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C

Attachment: pgpFXvMSJz0zJ.pgp
Description: PGP signature



Relevant Pages

  • Re: ifconfig: BRDGADD vr1: Invalid argument
    ... ok, i have bridging working, ... except that ath0 does not seem to completely bridge. ... hosts on vr1, vr2, and vr3 get dhcp addresses and can see the world ... dhcpd runs on bridge0 for the range 192.168.0.100-199 to feed the LAN. ...
    (freebsd-net)
  • Re: How to use if_bridge
    ... I am testing it on my laptop with has an ath interface which uses WPA ... It seems that none of the packets from ath0 appear on ... decode listening on bridge0, link-type EN10MB, capture ...
    (freebsd-net)
  • crash with bridge.ko/tap; tcpdump problem
    ... that I wanted working Ethernet bridging. ... tcpdump: WARNING: bridge0: no IPv4 address assigned ... I'm unsure whether this is if_bridge's fault or tcpdump's fault, ...
    (freebsd-current)
  • Re: is if_bridge broken?
    ... ifconfig: SIOCIFCREATE2: Invalid argument ... `ifconfig bridge0 create' fails with: ...
    (freebsd-current)
  • if_bridge not working with second interface
    ... bridge0 works with fxp0, but it doesnt work with fxp1 ...
    (freebsd-net)