I am using a Raspberry Pi Zero connected via USB to a hap ac2’s USB slot and it provides a DNS server, some wireguard servers, radius etc. The Mikrotik router now recognizes it as lte1 because I set up rndis. I tried to put this lte1 interface inside of a bridge, but I figured the list doesn’t contain the lte1 option at the bridge settings option. Is it impossible? If so, why? I had to put it into its own network now with its own IP range.
Try to set rPi USB into some other mode, e.g. CDC-ECM. RNDIS seems to be MS proprietary protocol and it might be supported in Linux by some third party drivers. Mikrotik does their own stuff and likely did not (and will not) support RNDIS for ethernet.
LTE is not ethernet, hence you can not bridge it with ether and wireless ports.
But can the usb port be assigned as a bridge port ???
Reason I ask is because when I use a USB to ethernet adaptor on my laptop it seems to create an another ethernet interface!
One thing is what ROS sees and how it reacts … now it sees RNDIS and reacts with creation of lte interface.
Another thing is whar rPi can show. There are a few protocols for transporting ethernet frames over USB, RNDIS is one of them, CDC-ECM is another one. If @OP can make rPi show something else, ROS might react differently (e.g. by creating another ether port).
I use dwc2 and the g_ether kernel module at the moment and it works well. I have internet on the Pi and my home net can reach the Pi as well. The only thing I had to do for this to work is that I created a new address under the Addresses tab for the router on the lte1 interface and configured a static IP in that range on the Pi itself.
Originally I wanted lte1 to not to have its own ip subnet but to be part of a simple bridge I have under the name “home-bridge”. It’s a simple bridge containing all the ether2-5 ports and the two wlan interfaces. I did it so I can assign the same dhcp server to all interfaces. I also have an interface list called LAN which contains all these interfaces. There I could add lte1. But I only use the interface list for firewall rules, not for bridging. The logical step would have been if I could add lte1 as an interface also to the bridge. Seemingly no lte1 ifaces can be simply added to bridges. I have tried to use my phone in usb tethering mode to see if the one lte1 iface my phone has can be assigned, but it was also not possible. I also have an actual 4G dongle, that didn’t work either. And in those cases I understand because mostly you use lte1 as a “WAN” interface rather than a client. But I wish there was a way …
Your network bridge is an L2 network router, LTE is L3 network switch probably being controlled by some router further in LTE protocol stack layers of your LTE provider, this is the reason why you don’t bridge any port your internet is coming from if the source port is relaying L3 connections.
You can control what bridge or whatever interface uses whatever LTE connection via the Route List and Firewall.
You are missing the point - the OP is not using an LTE device, the Raspberry Pi Zero can present itself as an RNDIS interface which the Mikrotik is assuming to be an LTE modem instead of an ethernet adapter.
Unfortunately there is no documentation as to how Mikrotik enumerate USB devices, certainly they support some USB - Ethernet dongles. It may be a case of just having to change the vendor & device ID presented, or the type of device.
Found this in another topic here that this one works with mikrotik. It’s some apple device. I could try some other device ids, but I am unsure which are supported by mikrotik. Is there a list of vendor ids/product ids that are recognized by mikrotik as rndis compatible devices? Or even usb-ethernet ones. But I am unsure whether the latter would even work.
The documentation in the old wiki is very dated, the current peripherals page only covers cellular modems and SFP/SFP+ modules with no mention of any ethernet or serial USB adapters.
As @mkx suggested you could try using USB-ECM instead of RNDIS by configuring the Pi USB ethernet gadget, although that may not be supported either.
There are forum posts indicating that various D-Link and Apple ethernet USB adapters enumerate as ethernet interfaces, but it isn’t obvious if these use USB-ECM or some other CDC sub-protocol. You could try mikrotik support to see if they can provide information on what is supported.
Definitely not. I have the W variant so it has wifi, however the performance over usb is far better, especially if the wifi is under heavy load. And the ethernet variant would require more power (external charger), another cable and taking away one extra port on the router. Why would I do that if I can replace all that with a single USB cable?
Did anyone find a idVendor , idProduct for g_ether, which allows the Pi to be recognized as an ether device instead of an lte one? Hoping to bridge/dhcp my Pi, which is connected via the USB port, if possible. This lte workaround can work, but is not ideal… I’m thinking of creating a GRE/EOIP tunnel over this virtual lte, and then bridging that as a workaround, but it seems very convoluted for something that could work much more simply
Thx
I’m using hEX, and I’ve tried 0x05ac 0x1402 (Apple USB Ethernet) and 0x0bda 0x8153 (RTL8153). The former shows up as a lte1 interface, and the latter doesn’t show up as an interface.
Have you found the appropriate Vendor ID and Product ID?