Last March, my wife’s laptop connected to Wi-Fi just fine, showed full bars, and still couldn’t load a single web page. Her phone worked. My desktop, plugged into the router, worked. Her laptop sat in the living room acting like the internet had quietly left the building. It took me about forty minutes to find the problem, and the fix ended up being one dropdown. The rest of this guide is the process I wish I’d had that night, roughly in the order I run it now.
Most home network problems fall into a handful of categories. The trick is figuring out which layer is failing before you start changing settings at random, because random changes are how a 10-minute problem turns into a Saturday.
How a home network actually fits together
Your home network is a chain of boxes, and each one has a different job. The modem converts the signal from your ISP’s line into something your equipment can read. The router sits behind it, hands out addresses, and decides where traffic goes. A switch adds more wired ports, and access points broadcast Wi-Fi. Plenty of consumer setups fold the router and access point into one box, which is why people get confused about where one device ends and the next begins.
The short version of the path looks like this:
Internet → Modem → Router → Switch → Access points → Your devices
DHCP is how devices get an address on your network. When your laptop joins, it asks for one, and the router hands it an IP address for a set period called a lease. Think of it as the front desk handing out visitor badges.
DNS is the phone book. You type a name like google.com, and something has to turn that name into a numeric address before your browser can connect. When DNS breaks, the connection itself is often fine, which is exactly why it’s so easy to misdiagnose.
NAT is why your whole house can share one public IP address. The router rewrites each outgoing connection so replies come back to the right device. Most people never think about NAT until it breaks, and then it’s the only thing they can think about.
Quick diagnosis: five checks before you touch anything
Run these in order. Each one rules out a layer, and the first failure usually tells you where to look. It takes about ten minutes, and I’d rather you spend those ten minutes than factory reset a router for no reason. If typing commands by hand isn’t your thing, my network command generator will spit out the right version for Windows, macOS, or Linux.
Check 1: Ping your gateway
Your gateway is your router’s address, usually 192.168.1.1 or 192.168.0.1. On Windows, run ipconfig and look for Default Gateway. On a Mac, it’s under Network settings, then Details, then TCP/IP. Once you have it, run ping -n 4 followed by that address on Windows, or ping -c 4 on a Mac or Linux machine.
Replies in a few milliseconds mean your device talks to the router just fine. “Request timed out” means the problem sits between your device and the router, which is usually a bad Wi-Fi connection, a loose cable, or a broken IP address. I’ve taken a lot of “the internet is down” calls that turned out to be a laptop talking to nothing at all.
Check 2: Ping a public IP address
Next, ping 8.8.8.8, which is Google’s public DNS server and about as reliable as anything on the internet gets. Skipping names entirely tells you whether packets can leave your house at all.
If the gateway answers and 8.8.8.8 times out, the router is up but nothing gets past it. Check the modem lights, then look at your ISP’s outage page on your phone over cellular data. Don’t reboot the router five times first. That’s just busywork.
Check 3: Ping a domain name
Now ping google.com or any domain you like. This is the one that trips people up. If 8.8.8.8 replies but the domain fails, your internet works and name lookup is what’s broken. Your browser says something vague like “no internet connection” either way, so the error message alone won’t tell you which one you’re dealing with.
Check 4: Check your IP address
Run ipconfig again, or ip addr on Linux, and look at the IPv4 address. If you see 169.254 followed by something, that’s an APIPA address. It means your device asked for DHCP and nothing answered. An address that doesn’t match your router’s subnet, like a 10.0.0.x address on a router handing out 192.168.1.x, points to a static setting someone typed in by hand, or a second router handing out addresses on its own.
Check 5: Check DNS directly
Run nslookup google.com. The output shows which DNS server answered. If it times out, your configured DNS server is the problem. Then run nslookup google.com 8.8.8.8 to bypass your configured server. If the second one works and the first doesn’t, you’ve found your answer.
Here’s how I read the results. Gateway fails: it’s local, so look at Wi-Fi, cables, or the IP address. Gateway works but 8.8.8.8 fails: the router or ISP is the issue. 8.8.8.8 works but the domain doesn’t: DNS. A 169.254 address at any point: DHCP. That’s the whole decision tree, and it covers most of what I’ve ever fixed.
Wi-Fi problems: roaming, coverage, and congestion
Wi-Fi gets blamed for everything, and sometimes that’s fair. Most complaints come down to three things: devices holding onto a weak signal, not enough signal in the first place, and too many networks fighting over the same channels.
Roaming problems
My phone in the kitchen was connected to the mesh node in the basement. It showed two bars and tested around 8 Mbps, while the node on the kitchen counter was about four feet away. The phone just wouldn’t let go. Some phones are stubborn about this. My old Android would hang onto a weak signal like it owed the router money.
Roaming works better when your access points share the same network name and password, and when they support 802.11k, v, and r. Those standards help clients find and switch to a better access point. Most modern mesh systems handle this for you, though mine didn’t on the first try. Turning off band steering on one of the bands is what finally got the phone to move. For the full setup, read my mesh roaming post.
Weak coverage
Before you buy anything, move the router. Routers hidden in a cabinet, behind a TV, or on the floor of a closet lose a lot of signal. Get it up high, somewhere central, and away from thick walls and the microwave. I know that’s not the answer people want to hear, but it’s the one that works most often.
Check actual signal strength instead of guessing. Around -67 dBm or stronger is solid for video calls. Somewhere near -70 is getting marginal. Below -75 you’ll see stuttering, slow loads, and dropped connections. A free Wi-Fi analyzer app on your phone will show you the numbers room by room.
Channel congestion
If you live in an apartment building, your 2.4 GHz band is probably a mess. Plenty of routers default to channel 6 or auto, and all of them step on each other. Only channels 1, 6, and 11 really avoid overlapping on 2.4 GHz, so pick one and stick with it.
Auto channel selection is fine most of the time. I’ve also seen it pick channel 5 and sit right on top of three neighbors. Could be coincidence, but my speeds went up after I hard-set the channel to 11 and watched the analyzer for a day. Use 5 GHz and 6 GHz when your devices support them. They have more room and less neighbor noise. I wish manufacturers would stop making 2.4 GHz the default for everything, because it’s the band where all the trouble lives.
Wired and backhaul problems
This is the section where I get a little preachy. If a device can be wired, wire it. Ethernet is more stable, has lower latency, and doesn’t share airtime with your neighbors.
Mesh nodes and extenders have to get their traffic back to the main router somehow. That’s called backhaul. When the backhaul is wireless, every hop cuts usable throughput. My garage node tested at 180 Mbps on a 500 Mbps plan. I ran a $12 Cat6 cable from the main router, and the same node tested at 470. Same hardware, same house, one cable.
If a cable run isn’t practical, check whether your node has a dedicated wireless backhaul band, and place it closer to the router. Decent placement beats the fanciest mesh system sitting in a bad spot. For the details on wiring access points and using Ethernet as backhaul, see my Ethernet backhaul post.
Switches are simple, but people overcomplicate them. Daisy-chaining three cheap switches can work fine, right up until one starts dropping packets and you lose an afternoon chasing ghosts. Test your cables too. I’ve thrown out more bargain patch cables than I’d like to admit, and a bad crimp can look exactly like a flaky router.
IP address problems: DHCP, conflicts, and static addresses
Most IP problems come down to one of three things. DHCP didn’t hand out a proper address, two devices ended up fighting over the same address, or somebody set an address by hand and forgot about it.
DHCP basics
When a device joins a network, it goes through a short handshake: discover, offer, request, and acknowledge. Packet captures often shorten that to DORA. The router offers an address with a lease time, usually a day or so, and the device renews it before the lease expires. If the offer never arrives, the device gives itself a 169.254 address and sits there looking confused.
Lease time matters more than people think. A short lease is useful when lots of guests and phones come and go. A long lease is fine for a house full of stationary gear that never leaves.
Address conflicts
A conflict happens when two devices end up with the same IP. The symptoms are weird. One device works fine until the other wakes up, then both drop off. You’ll usually see this when someone typed a static address that overlaps the DHCP pool. Fix it by moving the static device outside the pool, or by turning it into a reservation. Rebooting buys you an hour, and then it’s back.
Two DHCP servers
This one causes more chaos than it should. Plug in a second router without turning its DHCP off, and now two boxes in the house are both handing out addresses. Some clients land on 192.168.0.x and others on 192.168.1.x. Your printer vanishes from half your devices, and your laptop can’t find the NAS it saw yesterday.
If you’re running an ISP gateway and your own router, put the ISP gateway in bridge mode, or at least disable DHCP on whichever box isn’t the main router. Access point mode is the right setting for any second box that’s just adding Wi-Fi. On ISP gateways, bridge mode is often buried three menus deep under a label like “IP passthrough.” Those menus make me want to throw the gateway in a drawer.
Static vs. reservation
A static IP is configured on the device. A DHCP reservation is configured on the router, which tells it to always hand the same address to a specific device’s MAC address. Reservations are almost always the better choice. They’re easier to keep track of, you don’t have to touch each device’s network settings, and you sidestep the overlap problem entirely.
I learned this the annoying way. Last spring, my wife’s laptop still had a static IP I’d typed in months earlier while troubleshooting a printer. I’d forgotten about it. When I moved the router to a new subnet, the laptop kept trying to talk to the old range. It showed Wi-Fi connected and loaded nothing. Setting it back to automatic fixed it in about thirty seconds, which is the part that still bugs me.
NAT and port forwarding: double NAT and CGNAT
NAT is the most useful thing your router does, and it’s also the thing most likely to make a remote camera or game server stop working. Port forwarding punches a specific hole through NAT for a specific device. It only works when your router actually owns the public address.
Double NAT
Double NAT happens when two routers both do NAT, one behind the other. Your ISP gateway gives your router a private address like 192.168.0.23, and your router hands out 192.168.1.x to everything else inside. You can set up port forwarding on your router, but the traffic is still stuck behind the gateway. Gaming consoles report strict NAT, remote access gets flaky, and forwarded ports time out for no obvious reason.
The fix is usually bridge mode on the first device, so your router sees the public address directly. If bridge mode isn’t an option, you can set up port forwarding on both boxes. It’s messy and it works, but now you’re maintaining two sets of rules and hoping they never disagree.
CGNAT
CGNAT is worse, and you usually can’t fix it with settings alone. Some ISPs share a single public IPv4 address across many customers, which means there’s no public address for you to forward to. Your router’s WAN address will fall in the 100.64.0.0/10 range, which is reserved for exactly this situation. Port forwarding does nothing, no matter how carefully you set it up.
To check, compare the WAN address on your router’s status page with what a public IP lookup shows. If they don’t match, or your WAN address starts with 100.64 through 100.127, you’re almost certainly behind CGNAT. Your options are asking the ISP for a public IP (sometimes for a monthly fee), using a tunnel service for remote access, or switching to a provider that gives you a real address. Honestly, I’d pay a few extra dollars a month for a real public IP over spending a weekend fighting a camera that won’t connect from outside. Run the double NAT / CGNAT checker if you want to confirm which one you’ve got.
DNS and IPv6 problems
DNS and IPv6 cause the most confusing failures, because the connection is fine and the sites just won’t load or take forever. If you’ve ever had a page hang for 20 seconds and then open normally, you’ve probably met one of these.
DNS problems
Start with which DNS server your devices are using. Most people use whatever their ISP hands out, which is fine until it’s slow or flaky. Switching your router to 1.1.1.1 or 8.8.8.8 is an easy test. I’ve seen ISP resolvers stall for a few seconds on first lookups, and changing servers cleared it up. Don’t expect DNS changes to make your internet faster in general, though. They mostly help with lookup time.
Flush your cache after changing anything. On Windows, run ipconfig /flushdns. On a Mac, run sudo dscacheutil -flushcache, then sudo killall -HUP mDNSResponder. On Linux, it depends on your distro’s resolver, so check before you guess.
DNS filtering and ad blocking are useful, and I run them myself. But when they break a site, they break it silently. You get a blank page, not an error message. If one site stops working and nothing else does, check your filter before anything else.
IPv6 problems
IPv6 is supposed to just work, and usually it does. When it doesn’t, your device tries IPv6 first for a site, waits on a broken path, and then falls back to IPv4. That delay is the 20-second hang. The site isn’t down. Your path to it is broken on one protocol.
A test site like test-ipv6.com will tell you whether you have IPv6 and whether it’s working. My own case came from a VPN I’d uninstalled months earlier. It left a stale IPv6 route behind. One site took 20 seconds to load on my laptop and opened instantly on my phone. Turning IPv6 off on the laptop fixed it, but that’s a band-aid, so I deleted the leftover route afterward. For the full walkthrough, check my IPv6 DNS post.
Best-practice network layout: an IP plan that makes sense
Most routers hand out addresses from a chunk of their subnet without much thought, and nobody remembers which device lives where. A simple plan makes troubleshooting way easier, because you can look at an address and know roughly what kind of device it belongs to.
Here’s the layout I use on a standard 192.168.1.0/24 network. The router stays at .1. Addresses .2 through .19 go to infrastructure like switches, access points, and a NAS. Printers and other fixed devices get reservations between .20 and .49. Cameras and IoT gear live in .50 through .99. The DHCP pool runs from .100 to .254 for phones, laptops, and guests.
The payoff shows up the first time something breaks. If a camera at 192.168.1.61 starts misbehaving, you know it’s an IoT device without checking the label. I’d also put IoT gear on its own guest or VLAN network if your router supports it. Cheap cameras are not where I want to trust anything.
One warning: 192.168.1.0/24 and 192.168.0.0/24 are the two most common home subnets, which means work VPNs and hotel networks can collide with them. If you ever expect to VPN into another network, pick something less common like 10.20.30.0/24. It costs nothing and saves you from a nasty surprise. My DHCP planner will generate a layout like this using your own ranges.
When to replace hardware or call your ISP
Not every problem is a settings problem. Some hardware is just done. If your router hasn’t received a firmware update in two or three years, that’s the first warning sign, because unpatched routers are a real security risk. Anything that only supports older Wi-Fi standards or outdated encryption should be retired, even if it still technically connects.
Replacing a working router to fix what’s actually a DNS or DHCP problem is a waste of money. I’ve seen people buy a $300 mesh system for an apartment that a $90 router would have handled, because the first one kept dropping their streaming app. The real cause was an old IPv6 setting. Test before you spend.
Call your ISP when the modem itself is the problem. Plug a laptop directly into the modem, skipping your router entirely. If that laptop can’t get online, the problem is upstream, and no amount of router tweaking will help. Look for sync lights that aren’t solid, or a modem log showing signal levels out of range. Ask for a line test, and ask them to check the signal levels they’re seeing from their side.
ISP support scripts are a special kind of pain. They’ll have you reboot the modem four times before they listen. Tell them you’ve already done the power cycle and the direct-connection test, and ask for a line test or a technician. It works more often than it should.
FAQ
Should I restart the modem or the router first?
Modem first. Wait a full minute or two for it to sync, then power on the router. Yeah, the order matters a little.
My Wi-Fi shows connected but nothing loads. What now?
That’s almost always DNS, IPv6, or a bad IP address. Run the five checks in order. A 169.254 address or a failed nslookup will usually point you to the culprit.
Do I need a mesh system?
Only if one access point can’t cover your home well after you’ve moved it to a central, elevated spot. Mesh fixes coverage and roaming. It isn’t a magic speed upgrade. Most apartments don’t need it, and a good single router beats a bad mesh system every time.
Is it safe to turn on DMZ?
No. DMZ sends all inbound traffic to one device, so anything that device exposes is open to the internet. Forward the one port you actually need.
Will changing DNS make my internet faster?
Sometimes, mostly on first lookups of a site, and only by a little.
My ISP says everything’s fine. Now what?
Then the problem is probably your own gear or config. Go back to the five checks and focus on the IP address and DNS results. Also check whether the problem happens on every device or just one. If only one device is failing, start with that device.
Which IP range should I use at home?
The 192.168.1.0/24 plan from the layout section works for most homes. If you travel for work or plan to use a VPN into an office network, choose a 10.x range instead so the addresses don’t collide.