Skip to content
Getting Started Wit...
 
Notifications
Clear all

Getting Started With Networking

4 Posts
3 Users
4 Likes
542 Views
lzodd
(@lzodd)
Posts: 7
Active Member
Topic starter
 

Introduction

This topic should serve as an introduction to the world of networks (you know, "The Internet" and such).
I am by no means a professional, nor am I extremely knowledgeable -- all things I've listed below are from my own experience and asking around, googling things.

If you have something to share, please do comment below with your experiences and approaches, opinions, whatever.

I created this thread in hopes that it will be useful to those new, who are just getting starting messing around with their home WiFi, those who are experienced as a hobby, up to the full-blown professionals (my deepest respects to those dudes, they're awesome!)

 

Prerequisites

Now, before I start talking about my own experience and journey, I believe I should mention some requirements. Most of which aren't too daunting, but still.

You should not be afraid of using only text interfaces, i.e. terminals. If you find that "scary" and "only hackers use terminals", please stop reading right now.
Befriend yourself with a terminal and then come back at a later date. It serves you no good if you don't know your way around a command prompt, it's only a matter of time till you get stuck.

I can recommend installing an easy Linux distribution (a.k.a. Distro) like Ubuntu, Linux Mint, Pop!_OS, or even RaspberryPi OS in a virtual machine.
Opinions on especially these distros above may vary and some are more ideological than based on usability and other actually important factors, so pick any distro you like and don't tell anyone.

Trust me, do not use an actual machine until you are absolutely comfortable with your system. Install your Distro of choice a few times, and try a few others out as well. Get a feel for the ecosystem.
Get comfortable using your command line. When you find out this does not meet your taste, you can always delete the virtual machine. If you've installed it on actual hardware, you're either stuck with it or have to buy a Windows license to reinstall your system. You don't want that.

After you've got comfortable with any Linux distro, I recommend using some machine you have lying around to install your distro on. Make sure it's OK to leave it on 24/7, as it will serve as our own small-scale server within our home network.

 

Now, instead of writing this as a guide on what to do, I'll try and write down my own journey for you to read through and take notes from.
Please do yourself the favour and read other resources as well -- if you copy 1-by-1 what others do, you'll learn nothing, or not as efficient as you should be. Not everything will work instantly, not everything will continue to work 24/7. You need to learn to maintain a system (see above!) and use it to your advantage. Not everything I did was the smartest decision, nor was it working immediately.

 

My Personal Experience

I think it's fair to say almost everyone set their router at home up with a guided installation, or did some small configuration like changing the WiFi password when your kids or siblings misbehaved 😉 

My first "actual" experience with setting up and maintaining a small LAN started interestingly enough with me installing Pi-Hole, which serves as a network-wide adblocker.
I know, I know -- this is super cliché and hardcore networkers will argue that this isn't true networking. Well, they're correct. But we all got to start somewhere, and for me it was exactly this.

Their documentation is extremely well-written and almost carries you, the user, on hands through the installation and setup, up until you having a working, network-wide adblocker.
To me, it was a breeze setting things up, after I got my hardware up-and-running, more on that below.

As we go on about this journey, installing a Pi-Hole will be the opener to this intricate world.

Specifically for this small-scale project I bought myself a RaspberryPi, which is essentially an underpowered, single-board PC. Also their documentation is well-written and understandable, even to those who have only little experience with Linux.

If you opt to use a RasPi, I do not recommend setting it up headless, that is, without keyboard, mouse, and screen attached. If you use an old laptop, the better, everything is already attached. It'll help you when you need to fix something to be directly "on" the PC.

After I've got it all set up, I created a so-called SSH-server on my RasPi, so that I can login from my PC onto that small PCB. The raspberrpi documentation is extremely elaborate on that and explains everything you need to know. Please read their full guide on remote access.

Now you've got your own first small server in your network! Open a beer and celebrate a little. Afterwards, install Pi-Hole on it and set it up as per their documentation. Go check out their forum if you're stuck! When you're done, visit the Pi-Hole web panel and see those ad requests being blocked.

 

Summary

We've installed our own small server in a home environment and successfully accessed it remotely (via SSH). We've set up Pi-Hole to serve as an easy introduction to setting up a web-server.
Soon you'll learn about other things such as ports, IPs, reverse-proxies, nginx, and other things -- you start building your own small LAN with whatever services you need and find out how to properly route your traffic.

 

Last Words

I do apologise that this post is quite biased and not really detailed -- it serves as a starter to engage interested folks. I've deliberately left out my constant fails, because I think that's boring to hear. You cannot succeed if you don't fail.
To anyone who disagrees with my opinions, or wants to add important detail: Please do reply! This only helps those who come here at a later date. To anyone just wanting to ask a question: do it! Don't be afraid to ask.

And lastly, I want to repeatedly remind you that this thread should serve as a corner for discussion and questions 😀 😉 

This topic was modified 6 months ago by lzodd
 
Posted : 08/04/2022 5:47 pm
pimanema, Dan92, pimanema and 1 people reacted
pimanema
(@pimanema)
Posts: 5
Member
 

Hey! First of all, great post! Like you, I also started from nothing with networking and my first project was also a Pi-Hole.

You mentioned leaving out your constant fails, but I personally would love to hear a few of your biggest challenges. Out of curiosity, but I also think fledglings can learn from our mistakes 😋.

My most major oversights were privacy and actual practicality of network-wide adblocking in a household that's larger than just yourself. The privacy part is obvious for us, but it should not be. As the admin, you'll have access to the logs that contain very sensitive information should you be sharing your network with people. What if they don't feel comfortable sharing that information with you? And if they're not, how would you solve that?

The practicality issue was in the same category for me. My mom wanted the option to click on ads because they were ads on something she's interested in. Also, certain short links and websites (looking at you pinterest and amazon) were being blocked. In the end, it was far more practical to just use browser based ad blockers.

Fortunately both issues had technical solutions and those were also the most fun parts of my Pi-Hole journey. Finding solutions to issues I would never have expected (or encountered if I were on my own). I highly suggest for anyone interested in Networking to try out Pi-Hole, it's a fun and low cost entry-level challenge.

 
Posted : 08/04/2022 7:51 pm
milah
(@milah)
Posts: 2
New Member
 

Hi there!

I love all things computers and tech and so far I have mostly worked on the software side of things. My professor gave me a raspberry pi that so far I haven't used much. I was thinking of installing it in my attic so that it stays on all the time and I can connect to it from my other devices.

So far, I've thought of using the pi as a cloud storage server for the whole family or just as a web hosting server. My question is what are some good resources / documentation for me to use and which projects would be the best for someone who considers themselves an intermediate techie.

Thanks in advance for the replies!

 
Posted : 09/04/2022 6:30 am
lzodd
(@lzodd)
Posts: 7
Active Member
Topic starter
 
Posted by: @pimanema

Hey! First of all, great post! Like you, I also started from nothing with networking and my first project was also a Pi-Hole.

You mentioned leaving out your constant fails, but I personally would love to hear a few of your biggest challenges. Out of curiosity, but I also think fledglings can learn from our mistakes 😋.

Haha, thank you for your kind words!

Of course, I can share some big blunders with you. The first really big mess-up I had was back when I felt smart and uninstalled a few software packages from my Debian installation, which ended up removing also the network drivers.
Being unexperienced back then, I of course reinstalled the system, which took me a few hours to get back and running. Today, however, I know how to fix a broken system from essentially any state. More on that below.

Then there was another mistake I made during partitioning the disks when installing Arch Linux -- I forgot to generate the fs-tab, and thus was unable to boot; not that that really mattered, because I also forgot to install a boot-loader on top.
Yeah, I went ahead and did all of it again; I wasn't the smartest back then.

But, if it weren't for these mistakes, I'd not know today how to fix essentially any broken system. Other than that, I've messed up the configuration of my router a few times, which made me stress about it, even though it wasn't much that needed a reset. But knowing you're entirely without internet and cannot quickly search up a thing or two really gives you pressure.

Another big fail was me trying to install (wrongfully) NVIDIA drivers on my -- back then -- Linux Mint installation. This was less of a struggle than actually not thinking for even two seconds, because I have no NVIDIA graphics card in my laptop; so, the installation of these drivers was entirely pointless. Admittedly, I was sort-of driven by lack of research and the "I want to play games" moments. However, this process taught me an important lesson: know your system, and do your research properly. In general it is better to consult one or two known and trusted sources, such as the Arch Linux Wiki or the well-established forums of the numerous distros out there.

 

Posted by: @pimanema

My most major oversights were privacy and actual practicality of network-wide adblocking in a household that's larger than just yourself. The privacy part is obvious for us, but it should not be. As the admin, you'll have access to the logs that contain very sensitive information should you be sharing your network with people. What if they don't feel comfortable sharing that information with you? And if they're not, how would you solve that?

I did actually think about this for a while, and went to a discussion with my family about it, as we're the main users of the network (obviously). I explained everything and how it works; we all opted to show everything and record everything within the DNS resolver settings. We're pretty curious what requests are made. Interestingly, most, if not all clients do only announce their IPv6 to the Pi-Hole, which adds some layer of obscurity to it.
I think it is important to let your "users" know what is and what is not logged, and to explain the caveats. I rarely check the Pi-Hole logs anyway.

 

Posted by: @pimanema

The practicality issue was in the same category for me. My mom wanted the option to click on ads because they were ads on something she's interested in. Also, certain short links and websites (looking at you pinterest and amazon) were being blocked. In the end, it was far more practical to just use browser based ad blockers.

To me and my family it is super practical. We're always annoyed by ads and how they seem to track you (they really do, though!). I've had no issues with pinterest and amazon, but facebook actually; my mum uses facebook for her business, and having that being blocked is of course impractical. She always says to me to not worry, but me being me I went ahead and whitelisted it for the network. To me it is important to always communicate with each other when something isn't right, and to fix it quickly and smoothly.

I do actually use on-top of my Pi-Hole an in-browser ad-blocker, as well as NoJS, Privacy Badger, a Cookie auto deleter, and lastly rejecting third-party cookies along isolating first-party cookies. I take absolutely no chances.
However, we do often watch something via a FireTV-Stick, which of course do not have the ability to install such things, so a Pi-Hole really is the way to go. Also, even with this armada of add-ons to your browser, it is still possible something flies under the radar. And, if it's already blocked on the network level, your add-ons have less work to do, which overall creates a smoother browser experience.

But, in the end, use-cases and desires are different, so opt for the most practical way, always.


Posted by: @milah

So far, I've thought of using the pi as a cloud storage server for the whole family or just as a web hosting server. My question is what are some good resources / documentation for me to use and which projects would be the best for someone who considers themselves an intermediate techie.

A RasPi without attached external storage is not really a good idea, as the SD cards it uses quickly wear down with such regular writes, and their overall capacity is also heavily limited.

However, if you do have a drive you can also let run 24/7, do check out their documentation on setting up a NFS (Network File-System) either directly or with Samba (which also lets Windows users easily access their files.
You will also learn how to remotely access your RaspberryPi via SSH or some other protocol and how to keep it running.

In fact, most things you can do with a raspberrypi are either documented directly, or in some forum post of theirs, which you can view at forums.raspberrypi.com. Do not be afraid to ask in their general discussion if you cannot find relevant resources!

 
Posted : 09/04/2022 11:10 am