#openwrt

danie10@squeet.me

Turris Omnia is an open source network router that has plugins for NAS, Nextcloud server, SSH honeypot, Tor node, and more

Bild/Foto
This is a router from the Czech Republic using open source firmware built on top of OpenWrt. It has everything you’d expect from hardware running open source, and quite a lot more, including installable packages, so you can add exactly what your home or business network needs the most while ignoring the parts you won’t use.

It’ll change your perception of what a router is, what a router can do for your network, and even how you interact with your entire network.

In addition to the flexibility of its interface, the Turris Omnia also features a package manager. You can install plugins, including Network Attached Storage (NAS) configuration, a Nextcloud server, an SSH honeypot, speed test, OpenVPN, print server, a Tor node, LXC for running containers, and much more.

It is available on Amazon for $395, but consider it more than “just a router”. The CPU is a Marvell Armada 385, Dual Core 1.6 GHz with 2 GB RAM and 8 GB eMMC. It is possible to operate Wifi at 5 GHz (802.11 AC) and 2.4 GHz (802.11 b / g / n) at the same time.

Distributed adaptive firewall – The Turris headquarters compares data received from thousands of connected routers and if it identifies an attack, updates are sent right away to all Turris devices.

See https://opensource.com/article/22/1/turris-omnia-open-source-router

#technology #opensource #router #openwrt #hardware
#Blog, ##hardware, ##opensource, ##openwrt, ##router, ##technology

dredmorbius@diaspora.glasswings.com

My current jq project: create a Diaspora post-abstracter

Given the lack of a search utility on Diaspora*, my evolved strategy has been to create an index or curation of posts, generally with a short summary consisting of the title, a brief summary (usually the first paragraph), the date, and the URL.

I'd like to group these by time segment, say, by month, quarter, or year (probably quarter/year).

And as I'm writing this, I'm thinking that it might be handy to indicate some measure of interactions --- comments, reshares, likes, etc.

My tools for developing this would be my Diaspora* profile data extract, and jq, the JSON query tool.

It's possible to do some basic extraction and conversion pretty easily. Going from there to a more polished output is ... more complicated.


A typical original post might look like this, (excluding the subscribed_pods_uris array):

{
  "entity_type": "status_message",
  "entity_data": {
    "author": "dredmorbius@joindiaspora.com",
    "guid": "cc046b1e71fb043d",
    "created_at": "2012-05-17T19:33:50Z",
    "public": true,
    "text": "Hey everyone, I'm #NewHere. I'm interested in #debian and #linux, among other things. Thanks for the invite, Atanas Entchev!\r\n\r\nYet another G+ refuge.",
    "photos": []
  }
}

Key points here are:

  • entity_type: Values "status_message" or "reshare".
  • author: This is the user_id of the author, yours truly (in this case in my DiasporaCom incarnation).
  • guid: Can be used to construct a URL in the form of https://<hostname>/posts/<guid>
  • created_at: The original posting date, in UTC ("Zulu" time).
  • public: Status, values true, false. Also apparently missing in a significant number of posts.
  • text: The post text itself.

A reshare looks like:

{
  "entity_type": "reshare",
  "entity_data": {
    "author": "dredmorbius@joindiaspora.com",
    "guid": "5bfac2041ff20567",
    "created_at": "2013-12-15T12:45:08Z",
    "root_author": "willhill@joindiaspora.com",
    "root_guid": "53e457fd80e73bca"
  }
}

Again, excluding the .subscribed_pods_uris. In most cases, reshares are of less interest than direc posts.

Interestingly, I've a pretty even split between posts and reshares (52% status_message, that is, post).

My theory in creating an abstract is:

  • Automation is good.
  • It's easier to peel stuff off an automatically-created abstract than to add bits back in manually.
  • The compilation should contain only public posts and exclude reshares.

Issues:

  • It's relatively easy to create a basic extract:
jq '.user.posts[].entity_data | .author, .guid, .created_at, text

Adding in selection and formatting logic gets ... more complicated.

Among other factors, jq is a very quirky language.

Desired Output Format

I would like to produce output which renders something like this for any given posts:


Diaspora Tips: Pods, Hashtags & Following

For the many Google Plus refugees showing up on Diaspora and Pluspora, some pointers: ...

https://diaspora.glasswings.com/posts/a53ac360ae53013611b60218b786018b (2018-10-10 00:45)


What if any options are there for running Federated social networking tools on or through #OpenWRT or related router systems on a single-user or household basis?

I'm trying to coordinate and gather information for #googleplus (and other) users looking to migrate to Fediverse platforms, and I'm aware that OpenWRT, #Turris (I have a #TurrisOmnia), and several other router platforms can run services, mostly #NextCloud that I'm aware. ...

https://diaspora.glasswings.com/posts/91f54380af58013612800218b786018b (2018-10-11 07:52)


The original posts can of course be viewed at the URLs shown.

What this is doing is:

  • Extracting the first line of the post text itself.
  • Stripping all formatting from it.
  • Bolding the result by surrounding it in ** Markdown.
  • Including the second paragraph, terminating it in an elipsis ....
  • Including a generated URL, based on the GUID, and here parked on Glasswings. (I might also create links to Archive.Today and Archive.Org of the original content.)
  • Including the post date, with time in YYYY-MM-DD hh:mm resolution.

Including the month and year where those change might also be useful for creating archives.

Specific questions / challenges:

  • How to conditionally export only public posts.
  • How to conditionally export only status_message (that is, original) posts, rather than reshares.
  • How to create lagged "oldYear" and "oldMonth" variables.
  • How to conditionally output content when computed Month and Year values > oldMonth and oldYear respectively. Goal is to create ## .year and ### .month segments in output.
  • How to output up to two paragraphs, where posts may consist of fewer than two separate text lines, and lines may be separated by multiple or only single linefeeds \r\n.
  • Collect and output hashtags used in the post.
  • Include counts of comments, reshares, likes, etc. I'm not even sure this is included in the JSON output.

There might be more, but that's a good start.

And of course, if I have to invoke other tools for part of the formatting, that's an option, though an all-in-jq solution would be handy.

#jq #json #diaspora #scripting #linux

carstenraddatz@pluspora.com

When I upgraded my cable ISP tier to 1000/50 I quickly noticed the old 2011 OpenWrt router wasn't up to it, downstream consistently maxed out at around 260mbps. That said, its nearly always TCP offloading, and needs beefier hardware if you can't use that. I went to a downstream north of 420mbps and often go into the 600mbps region even with ac wifi. Upload otoh hasn't improved, meh.

Over at the OpenWrt forum there's a posting to answer all postings on how el cheapo CPUs fail:

Let's take a look at the math: At 1Gbps using 1500 byte packets, you need to send/receive 83333 packets per second. The packets need to be received by an interrupt, go through the firewall, be inspected, maybe have NAT applied, sent into a queue, the queue calculates rates to avoid over-sending on the link and causing buffers, and then hardware interrupts are serviced to actually send the packet along...
At 1 GHz processing rate, each packet gets 12000 clock cycles of calculation if the CPU is maxed out doing nothing but processing packets.
Evidently in an ideal world, we should have maybe 1.2GHz processors or better, and maybe have two cores at least one can handle interrupts on the receive interface, and one can handle interrupts on the send interface, and they can share the firewall and queueing duties.

(https://forum.openwrt.org/t/so-you-have-500mbps-1gbps-fiber-and-need-a-router-read-this-first/90305/45)

Still, because DOCSIS cable is a shared medium and oversubscribed ISP-wise, the throughput is wonky and inconsistent. But at least I know not my own CPU is to blame so I can point fingers at my provider vodafone. And I'd totally want to go 500/100 if only I could mix and match features. Sigh.

TL;DR Going cheap, stick with proprietary firmware to keep the TCP offloading feature, or gear up. A Turris Omnia should be fine, or any of the suggestions in the thread. I went with OPNsense on a small x86 box.

#openwrt #gigabit #throughput #docsis #docsis3.1 #docsis4 #wan #networking

schestowitz@joindiaspora.com

I might move to #openwrt soon because #bt keeps breaking my home network (for months, their remote updates contain severe bugs) and they remotely reboot the router, dropping all connections, without prior warning or consent. Just like that, unannounced completely. They could at least say WHEN in advance.

danie10@squeet.me

OpenWrt is often ideal for older or cheaper modems to provide lots of extra, and up to date, features and security patches - Check when you buy, that a modem is OpenWrt compatible

It's a fact of life that most proprietary vendors only support their hardware for a few years with updates. Another practice is selling their cheaper modems with a lot of functionality missing, to encourage buyers to pay up for a more expensive model to for example get mesh networking, load balancing, real-time network monitoring stats, etc.

So it's worth always checking, when buying a new modem, if it is OpenWrt compatible, as this will allow you to reflash the modem with OpenWrt. It could also mean buying a cheaper modem now, and gaining some extra functionality at no extra cost. But most important is that you can continue to get software updates and security patches.

See OpenWrt - Wikipedia

#technology #opensource #modems #OpenWrt #LEDE

Imagem/foto

OpenWrt (from open wireless router) is an open-source project for embedded operating systems based on Linux, primarily used on embedded devices to route network traffic. The main components are Linux, util-linux, musl,[4] and BusyBox. All components have been optimized to be small enough to fit into the limited storage and memory available in home...


https://gadgeteer.co.za/openwrt-often-ideal-older-or-cheaper-modems-provide-lots-extra-and-date-features-and-security

danie10@squeet.me

Linux Unplugged Podcast Discussing Starlink's Linux Secrets

An interesting listen about how widely Linux is used in the Starlink network including OpenWRT, how it has been modified, that power consumption can be as low as 35W, how the dish can be used directly without the router, and how the dish warms up to de-ice with no heaters actually installed.

You can listen to this podcast from the link below, or it will be available in most existing podcast players as well.

See Starlink's Linux Secrets

#technology #opensource #Linux #Starlink #OpenWRT

Imagem/foto

We attempt a live production over Starlink, and dig into the secrets of this giant Linux network in space.


https://gadgeteer.co.za/linux-unplugged-podcast-discussing-starlinks-linux-secrets

carstenraddatz@pluspora.com

Dear lazyweb,

I'm fiddling about with a TP-Link OpenWrt WDR4300 v1 device, which had been working just fine for a handful of years. Now that I did pass it on it cost me several hours of annoying debugging on site yesterday - friggin’ configuration would not stay live but will auto-revert to default.

The typical way when moving it to a new purpose or location is reset to default, then log in and configure things again (IP address, network details, wifi name and such). Then apply settings, done. Depending on the setup takes 10-15 minutes max. This specimen now accepts all the new configuration, puts them to use, but after about one minute without further interaction silently falls back to default values for all.

When that happens, everything is as it normally is after a reset to default. Wifi is off, ssh is on, and it lives on 192.168.1.1. Except for the new root password (if you set it) there is no trace you even tried.

I have tried:
* reset to failsafe by triggering the on-device button until the led flickers, logging into device again reset to default - then I can change the root password, which stays after power cycling, but the off behaviour stays as described
* disconnecting the service laptop after clicking "apply"
* not disconnecting the service laptop after clicking "apply"
* pinging while at work: two terminals, one pings the 192.168.1.1 the other 192.168.222.1 or whatever. First address pings until I hit "apply", then 2nd (actual target address) pings, and after one minute 1st one pings again, wtf
* if configured, the new wifi shows up within the timeframe, and is usable for a brief period, then is turned off

Not yet tried:
* in OpenWrt of old version 10. something, there used to be a 30/30/30 type reset. Does this even work now?

What gives?

#openwrt #tplink #hardware

etampl@diasp.org

Did I buy WRT1200AC some time ago hoping for a good router with #OpenWrt support? Yes.

Was I frustrated by problems caused by unstable wi-fi driver? Yes :(

Did I just buy the #Turris Omnia router (https://www.turris.cz/en/omnia/)? Yes.

Is it a bit expensive? Yes :/

Does it have Atheros wi-fi chips, that have the best Linux drivers? Yes!

Does it come with OpenWrt based firmware preinstalled? F*ck YES!!! :D