My light bulb moment for networking was reading the O’Reilly book on TCP/IP. Mind you, this was the mid-1990’s, so some of that information is dated - but it was a solid grounding in what IP was, addressing schemes, local hosts and network masks, DHCP, DNS, routing protocols (totally irrelevant in a small home network) NAT and port forwarding.
Basically, there are plenty of resources online - too many. Just build your way.
Do you understand ethernet - MAC addresses - vs IP addresses? All local ethernet traffic is MAC address to MAC address, or broadcast.
Do you understand IP addressing - local network and subnet mask, and default gateway?
(Simple point - on the local network, the computer uses “ARP” to say “Hello -who is address x.x.x.x?” gets a MAC address back, and sends to that MAC address.
If subnet mask on IP indicates the IP address is not local, send to the default gateway (usually the router) and let it handle things from there).
A machine either has a hard-coded IP address when it is first set up or uses DHCP.
If set to use DHCP, it broadcasts “Can I get an IP address?” (broadcast because no address) and gets a broadcast back “use this one”. If it accepts, it leases the address for a fixed time. Renew as needed.
Typical diagnosis - a DOS box is your friend.
IPCONFIG tells you if you have a valid IP address (169.x.x.x is an address Windows assigns if it can’t get one externally)
PING <gateway IP> - can you even talk to the router.
PING 8.8.8.8 This is Google’s DNS - if you are on the internet, it will respond. So packets will reach the internet.
PING YAHOO.COM - (or any valid web name) does the name translate to an IP address? If so, then DNS is working, you should be able to reach anywhere on the internet.
If your printer is defined by its IP address and you reset the entire network, including router, the printer may get a different IP address.
You can set reservations in DHCP to fix a MAC to a specific address. Some newer print drivers will find the printer even at a new address, but don’t count on it.
Assorted applications use defined “port numbers” on TCP/IP. (On TCP actually, sometime on UDP)
UDP is connectionless - send and forget, TCP typically sets up connections for extended conversations.
The other end of an application may respond typically n a port number over 1024. So you ask a web server on 80 (http) or 443(https) and it responds on a random higher port number.
NAT is typically implemented on home routers.
You do whatever you do with your internal IP. The router NAT’s the external communications from all the network’s devices to the one external IP address it has from the internet provider(ISP).
So computer A and Computer B open web browsers. As far as the outside world is concerned, one device - your router - opened two different browser windows.
(It’s more complex than that - obviously your computer tells the web server some details like browser version, cookies, so a web server can notice same IP is a different machine than other time…)
Note the router knows when you stated a conversation and allows replies to that conversation to come in and sends them to the device that started the conversation.
If everything is NAT’ed and looks like it comes from outside - what does the router do with unsolicited incoming traffic?
Logically you would want it to ignore most traffic, which might be malicious.
If you want to run a web server, say, then you might want port 80 traffic to forward to one of your computers where a web server is running. “Port forwarding”
Opening such a hole can be risky if you don’t know how to secure that web server, but it can be done.
Speaking of security - you can also block ports going out - for example, viruses love to use your PC to send SPAM, pretend to be an email server - so block port 25 outbound.
(Of course if they’ve hacked your PC, they probably also can hack your router - did you at least change the default password?)
Some routers by default block some ports outbound, which may explain VPN problems.
Some devices - my Nest thermostat for example - I can control from outside the home. This is because the Nest contacts a central server, and my phone app also contacts that server and the server relays info back and forth.
So there’s some typical hints for home networking.
If you don’t understand these concepts, look them up - there is infinite detail available on each topic.
Another handy hint - your user manual is called “Google”. Even as an IT professional, I find a lot of my work involves googling error message exact text to determine what is going on - there’s a billion people on the internet, someone else has had this problem before and blogged about it, or the user manual is online.