A common problem people have when installing software for a network printer is that the software tells them it can't find the printer on the network, even though the printer is really on the network. We call this the "printer not found" problem.
As mentioned in an earlier entry, the printer software talks to the printer using a network address called an “IP address”; the software must know the IP address of the printer in order to talk to it. When the software is first installed, it searches for the printer on the network by sending a message that many things on the network can “hear”; this message essentially says “I’m looking for all the printers on the network.” The software then just waits to see what messages it receives from printers; these messages tell the software about the printer and what the printer’s IP address is. This process is called discovery, and if it fails then the software can’t talk to the printer and then you can’t print.
Discovery isn’t just used when the software is first installed. In most cases, the printer’s IP address is assigned by your home network router, and if the router assigns the printer a different IP address today than what it did yesterday then the software has to discover the printer all over again to find its new IP address. This can happen at any time. If you could print yesterday but you can’t print today, then you might have a discovery problem.
Discovery uses a type of network communication that is very different from what is used for printing. Discovery is like sending an email and printing is like talking to someone on a telephone. When you talk to someone on the telephone you know when the other person is there and is listening, but with an email you don’t know if they’ve read the email unless they reply back to you. This difference helps explain why discovery is more prone to problems. (Discovery needs to use this type of communication for basically the same reason that you can send one email to many people at the same time but you can’t talk to many people on the phone all at the same time.)
The most common problem that prevents discovery from working on Windows computers is security software, such as a personal firewall. In the past several blog entries I talked about different ways to configure firewalls; one of those ways was “opening a port” in the firewall. This is what you want to do to fix discovery problems. In fact, I can tell you what port you need to open because all HP inkjet printers use the same one. It is UDP port 427. If you add UDP port 427 (incoming and outgoing) to your firewall settings then most of the time you shouldn’t have discovery problems. On Apple Mac computers, Apple Bonjour is used instead of port 427. We don’t see as many customer problems with discovery on Mac computers, but it is still important to know that Bonjour needs to be enabled and not blocked by a firewall or the same problem can happen on Mac computers too.
There are other problems that can happen with discovery that I’ll talk about in the next blog update. However, security software on Windows is the most frequent reason that discovery fails to work. It is the top reason that the “printer not found” problem happens when installing software for a network printer. So if you see this problem, first try opening UDP port 427 (incoming and outgoing) in your personal software firewall.