Espresso-hole – EspressoBin-based personal router with ad blocking
github.com
github.com
With a stock u-boot, from the time the bootloader brings up the ethernet switch until Linux takes over it with dsa and bridge-utils, your LAN ports are directly bridged with your WAN port.
I tried to rebuild u-boot from source w/o the network boot code since the latest Linux Kernel has drivers for the Topaz switch now, but no matter what I tried I couldn't get it to boot.
The documentation leaves a lot to be desired....
This is problematic if you have home network devices with vulnerabilities or services running on hosts with the assumption that the host will only ever be on a private network (unauthenticated file servers, etc)
There is also an issue with the number of devices exposed to the ISP -- many will issue an address to the first device they see on a link, then ignore all other devices until the lease expires or is released. That means your PS4 may get a lease before the espressobin's Linux takes over, and the ISP will ignore the subsequent dhcp request from the espressobin.
lan = inside firewall
You don't want to bridge them because then it just bypasses the firewall.
LAN traffic is still going through the router, where the firewall supposedly runs.
Regardless of other devices having a public IP, if the router blocks forwarding packets (which is one of the main functionalities of a firewall), then the device(s) behind it are just as protected as if they had private IPs.
It's just a bit easier to setup forwarding as it doesn't require NAT, and it's also easier to open up by accident but having a public IP does not bypass the firewall.
At the moment I've got an unbootable Rockchip RK3399 board on my desk because at some point the bootloader image format has changed and rkdeveloptool refuses to let me boot from or flash the image to the device.
That's the init code for the network chip. I tried removing it, the code compiles, but the board won't boot w/ it(I imagine due to something unrelated).
Lesson learned (probably sounds obvious, but hey): SBCs are nothing without software. The quality and commitment of the developer to kernel support is everything. All boards have issues, and they can be worked around in software.
The espressobin got a lot of community support, but even with that it still isn't quite enough.
We need more boards like this that aren't just a copy of the raspberry pi. For personal use I would buy one of these tomorrow.
With hard core documentation and support this thing could have been the start of something great. Lets hope that can still happen.
Not to take anything away from the hard working folk who are currently supporting this. And from Marvell. Your efforts are greatly appreciated. I just hope there is a way to get you more resources
However, after enough configuration ( vlans, etc ), you'll find that it is not capable of routing gigabit traffic.
Mine is currently CPU bound ( ksoftirq ) at approximately 300 mb/s.
Additionally, the Espressobin has a Topaz ethernet switch onboard with 4 ports (1 to the SoC, 3 as gigabit ethernet rj45). This is both really spiffy and scary (see my other post). The spiffiness is that the switch can be controlled by Linux and is integrated with bridge-utils. It looks and mostly behaves like a software bridge, but the packets never hit the CPU, only the topaz chip.
while the rpi3 spanks the espressobin on CPU, the espressobin destroys pretty much every other dev board (including rpi4) in the price range with regard to network functionality.
Flashing new uboot image is a mess too. Sometimes it works. Sometimes it doesn't. Why? Who knows. Since boards are often mislabeled, flashing most of the time does brick the board making it useless paperweight that eats 12V5A power supply.
All in all, stay away from it if you can. There are much better SBCs on the market.
- popular in Europe, particularly Germany or the Netherlands?
- some kind of mesh routing, but connected to the Internet
- reports of people using it having better connectivity to the Internet at large than just by connecting to their ISP unaugmented. If I recall correctly, this was because the "magic" mesh detected routing problems (such as censor blocks) and routed traffic through other nodes
Did I dream this up or does this ring a bell with anyone?
Think Freifunk[1] is what you're looking for, it's rather cool in anycase!
Does anyone know if pi-hole supports TLS SNI?
I tried to use mine as a firewall for my Google Fiber but w/ just basic rules enabled it would max out around 500mbps, I imagine I could probably get 50-100mbps out of it running a decent IPS ruleset, but I haven't tried.
The Topaz switch chip uses the RGMII 1gbps uplink to the CPU so even though there's 3 1gbps ethernet ports you'll only ever get 1gbps through the device if you have to do any software level processing.
Edit: Is this contraversial? It is literally the same hardware with pfsense installed and a case. $155 for an ARM A53 is a crazy markup.