Marcin Szewczyk <[email protected]> writes: > I hope this is acceptable to post this kind of thing here. I've got a > problem with Huawei E173u-2 modem. I've found only one more case on the > Internet [1]. It isn't a full solution though, rather a workaround. > > When using RNDIS wwan0 interface has MAC address 02:50:f3:00:00:00 while > packets coming from Internet have destination MAC address set to > 00:01:02:03:04:05. So the workaround is to set wwan0 MAC to that value.
I guess the 02:50:f3:00:00:00 comes from a USB descriptor as it's not exactly random. So if the firmware provides this descriptor while using another fixed address, then that is certainly a firmware bug. Not too surprising unfortunately... Normally such devices will pick the MAC address they see in the DHCP discover message, but that doesn't seem to happen here unless you sent a DHCP request with 00:01:02:03:04:05 as MAC source address? What does lsusb -v say? > Is there anything that can be done inside the module (cdc_ether I > suppose) so that it becomes more consistent and both packets and wwan0 > have the same MAC address without changing MAC manually? Or maybe there > is something wrong with the hardware? > > [1] > https://groups.google.com/d/topic/comp.os.linux.hardware/BBiXbAZYfYA/discussion The driver (either cdc_ether or a dedicated one for this device) could hardcode the 00:01:02:03:04:05 address, but then we'd have to know which devices to apply that to. That's probably impossible, as it will depend on firmware revision, moon phase and other unknown factors. Working around this problem now may very well cause new problems once the firmware is fixed. So I believe setting the MAC address in your local configuration is an acceptable workaround for now. Or you can bug Huawei about it... Another option would be using another usb_modeswitch command. These modems often support many different USB descriptor sets, selectable by the usb_modeswitch command. For some reason, Huawei thinks that it is a good idea to use different USB descriptors for Linux and Windows. Guess which set is tested... You could sniff the device under Windows, find out what the Windows driver does, and try that in Linux as well. SniffUsb works very well if you've got Windows XP: http://www.pcausa.com/Utilities/UsbSnoop/default.htm Bjørn -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: http://lists.debian.org/[email protected]

