Cdce driver problem
I have an obscure problem that perhaps someone can help me with.
I am running 1.2.3 release nano on a Firebox X-peak box. The box has a usb port which I have been experimenting with. Initially I thought about using it to connect to a usb equipped adsl modem but, although I have managed to do that, they all seem to be usb1.1 only and hence hugely restrictive.
I thought I might use it to hook up my old Zaurus PDA that's just gathering dust. I plugged it in and, after I'd sorted out some recent firmware, it appears as a usb ethernet device and is loaded by the cdce driver. Then I can assign the interface, create firewall rules, add dhcp etc. All works fine untill I remove the pda from it's cradle and reinsert it. It seems that the Zaurus, along with many other usb-ethernet devices, does not fully meet the correct standard and the cdce driver is mot able to obtain the MAC address correctly. In order to work around this the driver assigns a randomly generated MAC which is fine except that the MAC changes each time the driver is loaded. This seems to totally confuse the firewall rules and dhcp server such that it will only work after being rebooted and reasigned.
I realise this is quite obscure and low priority! ::) Has anyone got any ideas?
From your description it seems the MAC address is read correctly if the PDA is connection to the pfSense box at its startup but not if the PDA is connected (or reconnected) after startup. Is that correct. I think I have seen this with the udav USB ethernet interface. I suspect this is because either (or both) pfSense and FreeBSD haven't really been designed to cater for "hot removal and reinsertion" of network interfaces.
Its is possible pfSense 2.0 BETA might be better behaved in this usage because it is based on a later version of FreeBSD than used in pfSense 1.2.3 and that version of FreeBSD has a completely new USB stack.
I expect you will get more reliable service if you can figure out a way to connect the PDA to an interface that is permanently connected to the pfSense box.
Nope, unfortunately it always generates a random MAC address. See here.
I don't think the driver has changed in freebsd 8 so I don't think 2.0beta will help.
Like I said it's not a show stopper ::) (or even close!) just an interesting problem I ran into. However it could be much more of a problem to anyone using the cdce driver for wan.
I wonder if it may be possible to hard code a mac into it?
Here some output:
cdce0: <sharp 2="" sl-5500,="" class="" 0,="" rev="" 2.00="" 0.00,="" addr="">on uhub0 cdce0: faking MAC address cdce0: WARNING: using obsoleted IFF_NEEDSGIANT flag cdce0: Ethernet address: 2a:f0:4e:00:00:00 cdce0: at uhub0 port 1 (addr 2) disconnected cdce0: detached cdce0: <sharp 2="" sl-5500,="" class="" 0,="" rev="" 2.00="" 0.00,="" addr="">on uhub0 cdce0: faking MAC address cdce0: WARNING: using obsoleted IFF_NEEDSGIANT flag cdce0: Ethernet address: 2a:57:58:00:00:00</sharp></sharp>