OpenWrt Forum Archive

Topic: Where can I get ebtables when it's not in the feed?

The content of this topic has been archived on 18 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

I can't seem to find ebtables. I find several tutorials showing how to just type 'ipkg update; ipkg install ebtables' but whenever I do opkg update then opkg list, ebtables is not listed among the 1439 available packages.

And of course "opkg install ebtables" just yeilds  the line " * Cannot find package ebtables."

Am I doing something wrong?

Thanks,

-Jesse

Building it by yourself.

More tries to no avail..

(Note that I should have included in first post - I'm using Kamakaze 8.09, kernel 2.4.35.4, Linksys wrt54GL series)

I was thinking of downgrading to Whiterussian if that's what it takes to get ebtables, when I found the list of Whiterussian's packages:


opkg install http://downloads.openwrt.org/whiterussi … mipsel.ipk
opkg install http://downloads.openwrt.org/whiterussi … mipsel.ipk


But of course that didn't work:
ebtables -h
ebtables: can't resolve symbol '__uClibc_start_main'

so I'm still stuck.

Dogge wrote:

Building it by yourself.

Thanks, Dogge, for the comment.

Are you trying to say that ebtable's isn't in the feed because it's not supposed to be, and that it's a problem for which there are no plans to fix?

I did try my utmost to get the buildroot going, but haven't yet been able to make it compile.
(https://forum.openwrt.org/viewtopic.php … 366#p94366)

I did install the SDK, but I'm just busy enough that I'm a little reluctant to create a whole new ebtables package when I know one already exists - or at least does for whiterussian.

(And as powerful as ebtables is, and consdering that openwrt does support ethernet bridging, I believe that either ebtables will soon be available or there is a drastic reason that it's not..)

Thanks very much,

-Jesse

jesseg wrote:

... or there is a drastic reason that it's not..)

Indeed. Enabling ebtables has a serious impact on ethernet performance across all platforms even if it's not used. This is due to the nature of the Kernel features it requires, it will force all packets to be routed through the Linux bridge layer which results in a higher overhead compared to installations without.

The ebtables package is disabled in the release builds and therefore it's missing in the SDK as well iirc. You can, however, build it by checking out the OpenWrt source and selecting it in menuconfig. You can put the appropriate configs from the 8.09.1 download folders as .config into your checkout to build your custom image with the same featureset as the official versions.

Regards,
JoW

jow wrote:
jesseg wrote:

... or there is a drastic reason that it's not..)

Indeed. Enabling ebtables has a serious impact on ethernet performance across all platforms even if it's not used. This is due to the nature of the Kernel features it requires, it will force all packets to be routed through the Linux bridge layer which results in a higher overhead compared to installations without.

Interesting. Pardon the engineer in me for a second (the one who always wants things to make sense :-)). A couple of years ago or so, I set up an old motorola router (WR850Gv3, 200Mhz) with whiterussian (0.9) and ran ebtables on it and it really worked great. I could get like 17mbit/sec through it - which is ample for what I needed.

I also run ebtables on a ~400Mhz x86 which handles all of our customer  traffic, which often hovers around 30 mbit/second at peak usage, and it has no trouble that I've noticed...

Also, couldn't the ebtables code for the kernel be a module so that it could be loaded if it was needed, but not loaded if it wasn't needed, thus not slowing things down?

ebtables is just such an amazingly powerful tool for those times when you need it - and whatever slowness it adds sure isn't so bad it makes it useless. Maybe you'd need a bit faster hardware - but that's not hard to do!

If you happen to know of a technical discussion of the problem, I would be most grateful if you could direct me to it. Thanks!

jow wrote:

The ebtables package is disabled in the release builds and therefore it's missing in the SDK as well iirc. You can, however, build it by checking out the OpenWrt source and selecting it in menuconfig. You can put the appropriate configs from the 8.09.1 download folders as .config into your checkout to build your custom image with the same featureset as the official versions.

Regards,
JoW

How do I check ebtables out ? I think I have the SDK installed, but I don't know how to check out ebtables from the OpenWrt source...

(I've been compiling stuff for slackware for many years but have only been tinkering with OpenWrt lightly for a couple years. I'm used to grabbing a tarball and compiling that - but "Checking something out" is sort of a new concept to me.)

Thank you so much,

-Jesse

The discussion might have continued from here.