{"id":818,"date":"2021-03-01T12:00:00","date_gmt":"2021-03-01T20:00:00","guid":{"rendered":"http:\/\/letsbuildroboticswithshadow8472.com\/?p=818"},"modified":"2021-03-01T03:07:33","modified_gmt":"2021-03-01T11:07:33","slug":"beowulf-cluster-part-6-openwrt-installed","status":"publish","type":"post","link":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/2021\/03\/01\/beowulf-cluster-part-6-openwrt-installed\/","title":{"rendered":"\u201cBeowulf Cluster:\u201d Part 6: OpenWRT Installed"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Good Morning from my Robotics Lab! This is Shadow_8472, and today, I\u2019m installing OpenWRT Linux router distribution on a card for a Raspberry Pi 4. Let\u2019s get started!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Background<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A while ago, at the beginning of lockdown, I was gifted a few microcomputers I wanted to arrange into a cluster, maybe even turn them into a model supercomputer. I was planning on using OpenWRT, but it wasn\u2019t \u2013and technically still isn\u2019t\u2013 available for the Pi 4 outside the use of snapshots. I compromised by configuring a minimal Raspian installation, but I\u2019ve yet to figure out how to program the firewall to disallow computers on its Local Area Network (LAN) from going anywhere online without my say so in addition to keeping them hidden from the Wide Area Network (WAN).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">My efforts back then were still possibly the most useful project I\u2019ve done to date: I\u2019ve been using that card as my main Wi-Fi receiver for my workstation. I conjecture it should be just fine with a Pi 4 (1 GB RAM), but since all my more qualified Pi 4\u2019s are busy, my fancy Pi 400 has been serving in that capacity.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Installation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">As noted above, OpenWRT for the Pi 4 is only officially available as a snapshot. These builds often lack recommended packages, including any GUI I might want to explore. This is where community builds come in. My research converged on one by wulfy23.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The GitHub\u2019s readme\u2019s took me a while to understand, in part because of all the options. I gathered that there were \u201cfactory\u201d builds and \u201csystem\u201d builds. Factory builds are for fresh installs, and system builds are for upgrading existing systems. At that time, there were as many as three builds for download, and choosing the right one seemed almost arbitrary.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">My first time installing, I totally forgot to check the provided SHA256SUM before unzipping it and dd\u2019ing it to SD card and booting. I landed in a terminal that kept mixing the prompt with other messages. Reaching out to a support thread on the OpenWRT forum, I learned about the web interface, and how to connect to it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The URL I was given failed every time, even my workstation alone with the router on my switch. I ended up going directly for the IP: 192.168.1.1. I was met with an inadequate dark mode I couldn\u2019t find the settings for. I expect they\u2019re probably there, and I spent a small amount of time looking for them by tossing reasonable sounding URL\u2019s around and hoping for the best, but comparing notes among other tabs in the interface, I think the chances of happening across the specific one I need are slim.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Installation Take Two<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">I went through the same process another day, and found only a single version for download from the same place. The SHA256SUM checked out, and instead of unzipping it first, I learned about zcat, a little command line utility that can unzip a file to be piped into another command. I piped it directly into dd per an example installation I spotted my first go around installing OpenWRT.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I provided a root password and found a different theme that didn\u2019t force a partial dark mode on me in short order. I found built in tools for ad blocking network wide, settings for managing network interfaces, and most importantly to this project: a fire wall. Alas, the fire wall remains something I have little practical understanding of. I\u2019d like to believe I have a mid-range understanding of what it can do, but my only real hope is copying lines and hoping they do what I want \u2013 the last thing one wants in a firewall intended for actual security. No. A custom firewall is at least a week in and of itself.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Takeaway<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">I really like trying to do two weeks worth of topics in a single week. It usually doesn\u2019t work. Granted: I did have a rusty introduction to both parts of the topic I wished to fuse into one this week. I\u2019m looking forward to remembering zcat in the future.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Final Question<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">What neat, little tips and tricks have you picked up during a larger project?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Good Morning from my Robotics Lab! This is Shadow_8472, and today, I\u2019m installing OpenWRT Linux router distribution on a card for a Raspberry Pi 4. Let\u2019s get started! Background A while ago, at the beginning of lockdown, I was gifted a few microcomputers I wanted to arrange into a cluster, maybe even turn them into &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/2021\/03\/01\/beowulf-cluster-part-6-openwrt-installed\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;\u201cBeowulf Cluster:\u201d Part 6: OpenWRT Installed&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_forum_subforum_count":0,"footnotes":""},"categories":[26],"tags":[59,49,58],"class_list":["post-818","post","type-post","status-publish","format-standard","hentry","category-raspberry-pi","tag-openwrt","tag-raspberry-pi","tag-router"],"_links":{"self":[{"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/posts\/818","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/comments?post=818"}],"version-history":[{"count":1,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/posts\/818\/revisions"}],"predecessor-version":[{"id":819,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/posts\/818\/revisions\/819"}],"wp:attachment":[{"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/media?parent=818"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/categories?post=818"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/tags?post=818"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}