Is there an award for this?

This commit is contained in:
2024-12-19 19:44:38 +02:00
parent b79aa39f6d
commit fa8890cf3a
4 changed files with 87 additions and 89 deletions

View File

@@ -148,7 +148,7 @@ callFrame.src=user_string;
<p>I accept donations for any reason</p> <p>I accept donations for any reason</p>
<p><a href="donate.html">Donate</a><br /></p> <p><a href="donate.html">Donate</a><br /></p>
<h2>Daily Unique Visitors</h2><p> <h2>Daily Unique Visitors</h2><p>
Thursday 19/12/24 19:13:11 Thursday 19/12/24 19:44:15
11 11
</p> </p>
<h2 id="also-on-the-web">Also on the web 🕸️</h2> <h2 id="also-on-the-web">Also on the web 🕸️</h2>

View File

@@ -2,13 +2,19 @@
# The magic of Wake-On-LAN # The magic of Wake-On-LAN
Years ago, some good friends of mine gifted me for my birthday, a Raspberry Pi 4 with 2GB of ram. It was and still is the most thoughful gift anyone has ever gotten for me. It aligns perfectly with my hobbies and I used it for a long time as a VPN server using WireGuard and I also played around with Pi-hole for a while as a network-wide ad blocker. Years ago, some good friends of mine gifted me a Raspberry Pi 4 with 2GB of RAM for my birthday. Its hands down the most thoughtful gift Ive ever received, perfectly matching my hobbies. They were lucky to even find one during the chip shortage! I initially used it as a VPN server with WireGuard and played around with Pi-hole for network-wide ad blocking.
Eventually I became more interested in cloud computing and started self hosting many services on a VPS that I rent through MVPS. It has 4GB of ram and has currently many of the services I use in a day-to-day basis like my Gitea server, Searx, NTFY and many others. While it was definetely doable for the Raspberry Pi to host these, the 2GB of ram would not allow for every service to be run at the same time. You see, my friends were lucky to even find one because it was in the middle of the chip shortage problems. Eventually, I got into cloud computing and started hosting multiple services on a VPS I rent from MVPS. This VPS, with its 4GB of RAM, currently runs several of my daily-use services like Gitea, Searx, NTFY, and more. Although the Raspberry Pi could theoretically handle these services, its 2GB of RAM limited simultaneous operations.
One day as I was thinking about what kind of projects could I utilize a single Raspberry Pi for, it hit me. A simple Wake-On-LAN server. It requires almost no resources as it just needs to stay on and send out wol packages when I need it to. The Raspberry Pi is connected using Wi-Fi to the same network as my laptop. Usually if I wanted to wake my laptop up using Wake-On-LAN I would need to have it plugged with an ethernet cable with the router. However, the Raspberry Pi has an ethernet port and a cable has two ends. Which lead me to try to connect one end to the Pi and another one to the laptop. At first I begun with a simple shell script that used etherwake. A simple command-line tool that sends Wake-On-LAN Magic Packets. It worked like a charm. I had enabled Wake-On-LAN in my laptop's BIOS, it was enabled on the operating system, which I checked using ethtool and it was super easy to remotely wake my laptop up using a Termux shortcut on my phone which used ssh to connect to the Raspberry Pi and from there execute the etherwake command. One day, it hit me: why not use the Raspberry Pi for a simpler project like a Wake-On-LAN (WOL) server? It requires minimal resources and just needs to stay on and send WOL packets. The Raspberry Pi is connected via Wi-Fi to the same network as my laptop. Normally, waking up my laptop with WOL would require an Ethernet cable connection to the router, but I connected one end to the Pi and the other to the laptop.
That setup was wonderful but I wanted to make it even better. It wasn't actually a Wake-On-LAN server at this point. The only service that was running on the Pi was SSH and I just used a command to wake just my laptop up. So after some research I came across Flask. With Flask I managed to make an actual server that used routes, authentication, logging rate limits and everything needed to make it robust, secure and functional. The main reason I currently prefer my project over etherwake, even though etherwake is still a great tool that follows the Unix philosophy "Do one thing and do it well", is because of it's dynamic nature. I can configure a .env file with many device's MAC addresses and have as many possible routes as the number of the devices. So for a laptop and a desktop I have LAPTOP_MAC="itsmac" and DESKTOP_MAC="itsmac" and can wake them up using http requests in the route /wol/laptop and /wol/desktop respectively. I started with a simple shell script using etherwake, a command-line tool to send WOL packets. After enabling WOL in my laptops BIOS and confirming it on the OS using ethtool, I could easily wake my laptop remotely using a Termux shortcut on my phone, which SSHed into the Raspberry Pi to execute the etherwake command.
Though this setup worked perfectly fine, I wanted to make it even better. Initially, the Raspberry Pi only ran SSH and executed a command to wake my laptop. So it wasn't really a WOL server. After some research, I found Flask and created an actual WOL server. This server had routes, authentication, logging, rate limits, and more to ensure robustness and security.
What makes my Flask-based server so cool is its dynamic nature. I can configure a .env file with multiple device MAC addresses, allowing numerous routes for different devices. For instance, I have LAPTOP_MAC="itsmac" and DESKTOP_MAC="itsmac", enabling me to wake them via HTTP requests at /wol/laptop and /wol/desktop, respectively.
One open-source application that fits my use case is HTTP Shortcuts from F-Droid. After configuring a specific route, I can turn it into a widget on my home screen. This way, I can wake my laptop up with just a tap! Plus, I use dynamic DNS, so my Pi is accessible from anywhere.
=> /images/pic-selected-19-12-24_19-10-42.png Mascot => /images/pic-selected-19-12-24_19-10-42.png Mascot

View File

@@ -34,48 +34,44 @@
<p>DATE: Thu 19 Dec 2024 18:35 By: konsthol@pm.me</p> <p>DATE: Thu 19 Dec 2024 18:35 By: konsthol@pm.me</p>
</blockquote> </blockquote>
<h1 id="the-magic-of-wake-on-lan">The magic of Wake-On-LAN</h1> <h1 id="the-magic-of-wake-on-lan">The magic of Wake-On-LAN</h1>
<p>Years ago, some good friends of mine gifted me for my birthday, a <p>Years ago, some good friends of mine gifted me a Raspberry Pi 4 with
Raspberry Pi 4 with 2GB of ram. It was and still is the most thoughful 2GB of RAM for my birthday. Its hands down the most thoughtful gift
gift anyone has ever gotten for me. It aligns perfectly with my hobbies Ive ever received, perfectly matching my hobbies. They were lucky to
and I used it for a long time as a VPN server using WireGuard and I also even find one during the chip shortage! I initially used it as a VPN
played around with Pi-hole for a while as a network-wide ad blocker.</p> server with WireGuard and played around with Pi-hole for network-wide ad
<p>Eventually I became more interested in cloud computing and started blocking.</p>
self hosting many services on a VPS that I rent through MVPS. It has 4GB <p>Eventually, I got into cloud computing and started hosting multiple
of ram and has currently many of the services I use in a day-to-day services on a VPS I rent from MVPS. This VPS, with its 4GB of RAM,
basis like my Gitea server, Searx, NTFY and many others. While it was currently runs several of my daily-use services like Gitea, Searx, NTFY,
definetely doable for the Raspberry Pi to host these, the 2GB of ram and more. Although the Raspberry Pi could theoretically handle these
would not allow for every service to be run at the same time. You see, services, its 2GB of RAM limited simultaneous operations.</p>
my friends were lucky to even find one because it was in the middle of <p>One day, it hit me: why not use the Raspberry Pi for a simpler
the chip shortage problems.</p> project like a Wake-On-LAN (WOL) server? It requires minimal resources
<p>One day as I was thinking about what kind of projects could I utilize and just needs to stay on and send WOL packets. The Raspberry Pi is
a single Raspberry Pi for, it hit me. A simple Wake-On-LAN server. It connected via Wi-Fi to the same network as my laptop. Normally, waking
requires almost no resources as it just needs to stay on and send out up my laptop with WOL would require an Ethernet cable connection to the
wol packages when I need it to. The Raspberry Pi is connected using router, but I connected one end to the Pi and the other to the
Wi-Fi to the same network as my laptop. Usually if I wanted to wake my laptop.</p>
laptop up using Wake-On-LAN I would need to have it plugged with an <p>I started with a simple shell script using etherwake, a command-line
ethernet cable with the router. However, the Raspberry Pi has an tool to send WOL packets. After enabling WOL in my laptops BIOS and
ethernet port and a cable has two ends. Which lead me to try to connect confirming it on the OS using ethtool, I could easily wake my laptop
one end to the Pi and another one to the laptop. At first I begun with a remotely using a Termux shortcut on my phone, which SSHed into the
simple shell script that used etherwake. A simple command-line tool that Raspberry Pi to execute the etherwake command.</p>
sends Wake-On-LAN Magic Packets. It worked like a charm. I had enabled <p>Though this setup worked perfectly fine, I wanted to make it even
Wake-On-LAN in my laptops BIOS, it was enabled on the operating system, better. Initially, the Raspberry Pi only ran SSH and executed a command
which I checked using ethtool and it was super easy to remotely wake my to wake my laptop. So it wasnt really a WOL server. After some
laptop up using a Termux shortcut on my phone which used ssh to connect research, I found Flask and created an actual WOL server. This server
to the Raspberry Pi and from there execute the etherwake command.</p> had routes, authentication, logging, rate limits, and more to ensure
<p>That setup was wonderful but I wanted to make it even better. It robustness and security.</p>
wasnt actually a Wake-On-LAN server at this point. The only service <p>What makes my Flask-based server so cool is its dynamic nature. I can
that was running on the Pi was SSH and I just used a command to wake configure a .env file with multiple device MAC addresses, allowing
just my laptop up. So after some research I came across Flask. With numerous routes for different devices. For instance, I have
Flask I managed to make an actual server that used routes, LAPTOP_MAC=“itsmac” and DESKTOP_MAC=“itsmac”, enabling me to wake them
authentication, logging rate limits and everything needed to make it via HTTP requests at /wol/laptop and /wol/desktop, respectively.</p>
robust, secure and functional. The main reason I currently prefer my <p>One open-source application that fits my use case is HTTP Shortcuts
project over etherwake, even though etherwake is still a great tool that from F-Droid. After configuring a specific route, I can turn it into a
follows the Unix philosophy “Do one thing and do it well”, is because of widget on my home screen. This way, I can wake my laptop up with just a
its dynamic nature. I can configure a .env file with many devices MAC tap! Plus, I use dynamic DNS, so my Pi is accessible from anywhere.</p>
addresses and have as many possible routes as the number of the devices.
So for a laptop and a desktop I have LAPTOP_MAC=“itsmac” and
DESKTOP_MAC=“itsmac” and can wake them up using http requests in the
route /wol/laptop and /wol/desktop respectively.</p>
<p><img <p><img
src="/images/pic-selected-19-12-24_19-10-42.png">Mascot</a><br /></p> src="/images/pic-selected-19-12-24_19-10-42.png">Mascot</a><br /></p>
<p>I would suggest anyone to take a look at my projects repo and if <p>I would suggest anyone to take a look at my projects repo and if

80
rss.xml
View File

@@ -14,48 +14,44 @@
<p>DATE: Thu 19 Dec 2024 18:35 By: konsthol@pm.me</p> <p>DATE: Thu 19 Dec 2024 18:35 By: konsthol@pm.me</p>
</blockquote> </blockquote>
<h1 id="the-magic-of-wake-on-lan">The magic of Wake-On-LAN</h1> <h1 id="the-magic-of-wake-on-lan">The magic of Wake-On-LAN</h1>
<p>Years ago, some good friends of mine gifted me for my birthday, a <p>Years ago, some good friends of mine gifted me a Raspberry Pi 4 with
Raspberry Pi 4 with 2GB of ram. It was and still is the most thoughful 2GB of RAM for my birthday. Its hands down the most thoughtful gift
gift anyone has ever gotten for me. It aligns perfectly with my hobbies Ive ever received, perfectly matching my hobbies. They were lucky to
and I used it for a long time as a VPN server using WireGuard and I also even find one during the chip shortage! I initially used it as a VPN
played around with Pi-hole for a while as a network-wide ad blocker.</p> server with WireGuard and played around with Pi-hole for network-wide ad
<p>Eventually I became more interested in cloud computing and started blocking.</p>
self hosting many services on a VPS that I rent through MVPS. It has 4GB <p>Eventually, I got into cloud computing and started hosting multiple
of ram and has currently many of the services I use in a day-to-day services on a VPS I rent from MVPS. This VPS, with its 4GB of RAM,
basis like my Gitea server, Searx, NTFY and many others. While it was currently runs several of my daily-use services like Gitea, Searx, NTFY,
definetely doable for the Raspberry Pi to host these, the 2GB of ram and more. Although the Raspberry Pi could theoretically handle these
would not allow for every service to be run at the same time. You see, services, its 2GB of RAM limited simultaneous operations.</p>
my friends were lucky to even find one because it was in the middle of <p>One day, it hit me: why not use the Raspberry Pi for a simpler
the chip shortage problems.</p> project like a Wake-On-LAN (WOL) server? It requires minimal resources
<p>One day as I was thinking about what kind of projects could I utilize and just needs to stay on and send WOL packets. The Raspberry Pi is
a single Raspberry Pi for, it hit me. A simple Wake-On-LAN server. It connected via Wi-Fi to the same network as my laptop. Normally, waking
requires almost no resources as it just needs to stay on and send out up my laptop with WOL would require an Ethernet cable connection to the
wol packages when I need it to. The Raspberry Pi is connected using router, but I connected one end to the Pi and the other to the
Wi-Fi to the same network as my laptop. Usually if I wanted to wake my laptop.</p>
laptop up using Wake-On-LAN I would need to have it plugged with an <p>I started with a simple shell script using etherwake, a command-line
ethernet cable with the router. However, the Raspberry Pi has an tool to send WOL packets. After enabling WOL in my laptops BIOS and
ethernet port and a cable has two ends. Which lead me to try to connect confirming it on the OS using ethtool, I could easily wake my laptop
one end to the Pi and another one to the laptop. At first I begun with a remotely using a Termux shortcut on my phone, which SSHed into the
simple shell script that used etherwake. A simple command-line tool that Raspberry Pi to execute the etherwake command.</p>
sends Wake-On-LAN Magic Packets. It worked like a charm. I had enabled <p>Though this setup worked perfectly fine, I wanted to make it even
Wake-On-LAN in my laptops BIOS, it was enabled on the operating system, better. Initially, the Raspberry Pi only ran SSH and executed a command
which I checked using ethtool and it was super easy to remotely wake my to wake my laptop. So it wasnt really a WOL server. After some
laptop up using a Termux shortcut on my phone which used ssh to connect research, I found Flask and created an actual WOL server. This server
to the Raspberry Pi and from there execute the etherwake command.</p> had routes, authentication, logging, rate limits, and more to ensure
<p>That setup was wonderful but I wanted to make it even better. It robustness and security.</p>
wasnt actually a Wake-On-LAN server at this point. The only service <p>What makes my Flask-based server so cool is its dynamic nature. I can
that was running on the Pi was SSH and I just used a command to wake configure a .env file with multiple device MAC addresses, allowing
just my laptop up. So after some research I came across Flask. With numerous routes for different devices. For instance, I have
Flask I managed to make an actual server that used routes, LAPTOP_MAC=“itsmac” and DESKTOP_MAC=“itsmac”, enabling me to wake them
authentication, logging rate limits and everything needed to make it via HTTP requests at /wol/laptop and /wol/desktop, respectively.</p>
robust, secure and functional. The main reason I currently prefer my <p>One open-source application that fits my use case is HTTP Shortcuts
project over etherwake, even though etherwake is still a great tool that from F-Droid. After configuring a specific route, I can turn it into a
follows the Unix philosophy “Do one thing and do it well”, is because of widget on my home screen. This way, I can wake my laptop up with just a
its dynamic nature. I can configure a .env file with many devices MAC tap! Plus, I use dynamic DNS, so my Pi is accessible from anywhere.</p>
addresses and have as many possible routes as the number of the devices.
So for a laptop and a desktop I have LAPTOP_MAC=“itsmac” and
DESKTOP_MAC=“itsmac” and can wake them up using http requests in the
route /wol/laptop and /wol/desktop respectively.</p>
<p><a <p><a
href="/images/pic-selected-19-12-24_19-10-42.png">Mascot</a><br /></p> href="/images/pic-selected-19-12-24_19-10-42.png">Mascot</a><br /></p>
<p>I would suggest anyone to take a look at my projects repo and if <p>I would suggest anyone to take a look at my projects repo and if