You’ve heard me moan and complain about printing before, and I’m sure you have your own horror stories, so let’s face it, printers are jerks.
When last we left our hero, she was complaining that she still couldn’t wirelessly scan and believed that her friend Pat had been dipping into the cooking sherry a little too often when she claimed it was even possible to scan over WiFi.
In order for you to fully enjoy today’s printing nightmare story, we need a brief review of my network setup. We have fiOS coming into an Actiontec router. We have two routers hanging off of the Actiontec: a Netgear Nighthawk X8 which serves our Macs and anything else secure we care about and an Airport Extreme which hosts the one PC and the non-HomeKit-compatible devices. Since the Macs are on the Netgear, the printers have to be on the Netgear too. That’s enough detail for you to follow along with the home game.
Recently I heard Dave Hamilton on the Mac Geek Gab suggest that instead of fighting to fix printing problems, consider resetting your printer to factory settings. I hadn’t ever done that in the five or so years I’d owned this printer, so back to factory settings it went.
After the factory reset, I went into the wireless setup wizard and had the great joy of entering a Bart-worthy password into the super user friendly interface. I wonder, do all of you silently swear at Bart under your breath when this happens to you? Not that I do, of course… My favorite part was trying to distinguish the tilde from the dash (I guessed wrong the first time) so I had to do it twice. Finally I got the printer to accept the password to the Netgear. It helpfully printed out a network page, so I could verify it was connected to the Netgear.
And…I couldn’t print to it. I connected via a USB cable and it printed just fine. Wirelessly though, it wasn’t having any of it.
I happened to be chatting with Bart on Telegram while I was fighting with it, and mentioned my problem. He became like a dog with a bone trying to figure out what was wrong.
One handicap we had in communication was I couldn’t share my screen to him, since much of this was on the tiny screen of the printer, or a page printed out (which of course I could NOT scan), and he had me changing networks right and left so we weren’t even connected some of the time. I used my iPhone to take pictures and sent them via Telegram. That actually worked pretty well. One of my favorite things about Telegram is that it stays in sync perfectly across all of your devices, so I could send from my iPhone and when I flipped back to my Mac, the picture was there too. Can’t do that with iMessage, that’s for sure.
Anyway, we looked at the network printout and it showed that the printer was indeed connected to the Netgear router, but the IP address looked funny. The paper said the printer was on IP 10.0.1.251. But the Netgear doesn’t even dish out addresses in the 10.0.1.X subnet. But guess what does? The Airport Extreme that’s parallel to the Netgear. But hang on a minute, how could the Airport Extreme have given the printer an IP? Since the factory reset I never told the printer the password to the Airport Extreme. I also know that the DHCP range of the Airport Extreme does not include anything above 200, so it couldn’t be 251.
I checked both the Netgear and the Airport where they list connected devices, and neither router showed the printer. What the heck is going on here? Bart’s exact words were, “Something Is not as it seems.” We eventually figured out that the fact that the Airport Extreme was serving IPs in the 10.0.1.X range was a complete red herring that had nothing to do with the problem.
Bart looked back at the printer’s network printout, and noticed something odd. Next to Configuration Source, it said “Manual”. Well it shouldn’t say Manual, it should say something like Automatic, or Dynamic, as in Dynamic Host Configuration Protocol (DHCP). That got him thinking that the printer somehow had a static IP hard wired into it. Two questions: how did that happen, and how do we fix it?
He did a bit of the Googles and found people in the same boat, where their HP D110 printer just like had a static IP set in the wrong subnet. They didn’t find the solution, but someone from HP trying to help just happened to mention that this printer has a web interface. The funny thing is that neither Bart nor I realized that both of our printers even had this feature! I’ve only had mine for 5 years. The HP person explained that they could simply navigate to the IP address and view the web interface and they should be able to fix that pesky static IP.
But you can’t do that if the printer isn’t on the network with you in the first place! This is where Bart’s knowledge really came into play. He reminded me that we did learn the basics underlying this problem in Taming the Terminal. In part 25 of n – IP Subnets, he said:
A subnet is a collection of similar IP addresses that share a single ethernet network. In other words, every device on a subnet must be able to send ethernet packets to every other device on the same subnet. There is not a one-to-one mapping between ethernet networks and IP subnets though, so while a subnet can’t be spread over multiple ethernet networks, one ethernet network can host multiple IP subnets.
What he’s explaining here is that the printer, which has decided to be on 10.0.1.X is sitting in a subnet all by itself. It’s chattering away, broadcasting it’s services, but it’s alone on that subnet. All the cool kids are over on subnet 10.0.0.X and they’re rejecting that traffic from the router because surely it’s not meant for them. In fact, this is one of the reasons you put things on separate subnets; you do it to decrease chatter.
I sorta knew this part, but I always thought the router had to actively create the subnet. I didn’t understand how if I never created a subnet it still existed. Bart explained it to me this way. He said to think of it like tuning a two-way radio. If you and your buddy tune to the same frequency, you can talk to each other, but only as far as your radio can reach. If you’re not tuned to the same frequency, you’re chatting into the ether. Or in this case, etherNET. Yes, he made that pun.
Now that we understand the problem, how do we solve it?
Bart had me grab a second Mac (just so we could stay in communication on the first Mac). He asked me to open Network Settings in System Preferences, and to connect to the same network as the printer (e.g. the Netgear). Then he had me create a new Network Location, and name it DeleteMe.
He had me change the IPv4 Configuration from automatically obtaining an IP to setting it manually. Then he had me put in any old IP address that was on the same subnet (10.0.1.X) as the printer. We also set the Subnet mask to 255.255.255.0. That was an important step to ensure that all IPs will start with the same three quad numbers (again 10.0.0.X).
As soon as I made that change (or should I say when I remembered to hit Apply after making the change), I was able to navigate to http://10.0.1.251 and see the HP printer setup page! A quick trip to Wireless, IPv4, and I was able to see that sure enough, the IP address configuration was set to Manual and hard coded to 10.0.1.251.
I changed it to Automatic IP, forgot to hit Apply, then went back and did hit Apply. I went into the Netgear router again and looked for it in the connected devices section, and there was the mysterious name it broadcasts – new-host-5. Luckily I recognized that name, since it was the name shown on that network printout we looked at way back in the beginning. Ok, time for the moment of truth…I tried to add it as a printer, and it actually printed! Woohoo!
I was ready to celebrate, but Bart wasn’t happy with this as the final state. He suggested that we should assign a static iP to the printer. It’s so darn easy on the Netgear’s interface that I agreed without hesitation. On the Netgear, I can go to Advanced, Setup, LAN Setup and it shows the DHCP range I’ve applied (2-200) and below that are the address reservations I’ve already made for my Drobo and my Mac mini Flex server.
There’s an Add button and not only can I select the errant printer from the list of connected devices and give it an iP, I can also change the darn name to something I’ll recognize! Then I forgot to hit apply so it didn’t work, and I went back and hit apply. Anyone noticing a pattern here?
And guess what? I was still able to print.
Finally before I let Bart go to bed, I got a wild, crazy idea. I said, “let’s try scanning!” Bart was fearful, but he stayed by my side. I put something on the scanner, hit scan from my Mac…and it worked.
The bad news is that 3 hours earlier the thing I was trying to print was my tax forms…which means I can now get to work on them. Or maybe I’ll go hit that cooking sherry…