RNDIS, Bluetooth & HDD issues…
-
All the OpenWRT images use a serial console as far as I know. The default speed is 115200 though.
If you can ping the Openwrt router from the Diagnostics screen but not LAN then you have a routing problem.
Is the Openwrt device in a different subnet that the pfSense LAN?
Do you have a gateway on the pfSense LAN? (you shouldn't)Steve
-
Hey Steve,
Thanks for following this!
However, I meant the type of terminal console, with keyboard & (S)VGA video, which pfSense uses. It would seem most "Rube Goldberg", to have a full PC and ignore the keyboard and monitor, to tie to the keyboard and monitor of ANOTHER computer via serial…
-
I tried a couple different things, even direct workstation to OpenWRT "server" ethernet, with static I.P. It's possible I had the requisite port/protocols blocked by a firewall utility on the WS, at the time. Maybe… I don't recall if it would ping. I recall trying it on a Virtual Machine...
-
I have each pfSense interface on a different subnet, but I tried static 192.168.1.2 on my WS, direct to the OpenWRT box.
-
I would only have a gateway on the LAN if I were trying to share internet from the WS, which I am not.
It's possible that the BIOS didn't work with USB boot, with that type of file.
I could write an image to the HDD, but one compiled with packges, such as a LUCI. Erstwhile, I tried to compile an OpenWRT image, but it failed, probably due to a lacking a Debian Linux dependency. It's on "The List". ::) I have a small stack of old WRT54G routers…
In the meantime, I bought a cheap "pocket" router, with OpenWRT preloaded. A protocol bridge, to ethernet, to pfSense. Rube Goldberg would be proud! It works, provided that I bought a USB 3.0 hub to put inline, to charge & tether simultaneously. Ugh! ::) All I needed with my linux box was a USB Y cable, to feed the power of two USB 2.0 ports.
Search the webs, I did, for "bsd rndis". I found this -> http://sourceforge.jp/projects/bsd-rndis/ and assumed it to be abandonware.
That is, until I found THIS ->
FreeBSD Handbook -> Part IV. Network Communication -> Chapter 30. Advanced Networking -> 30.4. USB Tethering
30.4. USB Tethering
Many cellphones provide the option to share their data connection over USB (often called "tethering"). This feature uses the RNDIS or CDC protocol.
Before attaching a device, load the appropriate driver into the kernel:
# kldload if_urndis # kldload cdce
Once the device is attached ue0 will be available for use like a normal network device. Be sure that the “USB tethering” option is enabled on the device.
Uh, huh…
I'm running
pfSense 2.1.2-RELEASE (i386)
built on Thu Apr 10 05:23:34 EDT 2014
FreeBSD 8.3-RELEASE-p15I tried each:
$ kldload if_urndis kldload: can't load if_urndis: No such file or directory
$ kldload cdce
kldload: can't load cdce: File existsI assume the develpers decided to leave this out. :-\ Perhaps this was over security concerns. Yet, they INCLUDED, in the default, main install, something as potentially malicious as UPnP & NAT-PMP. I'm certainly NOT beholden to Micro$oft'$ products, nor their strongarm tactics. >:( But, I have what I have… :( Maybe RNDIS could run within a jail, if the issue is security.. I also noticed, in my pfSense 2.1.2 filesystem:
/etc/bluetooth
/etc/defaults/bluetooth.device.conf
… :-\
-
-
It's not part of the FreeBSD tree so you would have to compile the kernel module (if_rndis.ko) yourself. Since the code hasn't been updated since 2010 you might find it requires significant modification to make it compile against FreeBSD 8.3.
Additionally it currently supports only one device:
@http://sourceforge.jp/projects/bsd-rndis/scm/svn/blobs/head/rndis/trunk/if_rndis.c:#define USB_PRODUCT_SHARP_WZERO3ADES_RNDIS 0x91ad
Steve
-
I believe that 2.2 will have RNDIS support. I found that it is contained in a later version of FreeBSD. Maybe a 9.x or thus-and-such. I don't have my notes at hand…
-
Yep, looks like it's included in FreeBSD 10:
https://svnweb.freebsd.org/base/head/sys/dev/usb/net/if_urndis.c?view=log
Don't know whether it made it into 2.2 though, I'll have to re-fire my test box. Also I can't find what devices it supports.Edit: Looks like it uses a generic USB vendor/product ID so it should work with a variety of hardware, all Android though :-. Some older man pages list some known hardware:
The urndis driver provides support for Ethernet access over Remote NDIS.
The urndis driver should work with all USB RNDIS devices, but the
following devices are known to work:o Google Nexus One
o HTC Dream / T-Mobile G1 / ADP1
o HTC Hero
o HTC Magic
o HTC Tattoo
o HTC WildfireSteve