Just had an issue where some new print servers were commissioned – Windows Server 2012, with local printers installed connected to IP addresses of network based printers, and then shared and listed in the directory:
Pretty common stuff. There’s even a Technet article on how to do this http://technet.microsoft.com/en-us/library/cc737008(v=ws.10).aspx
Our problem was that after a few days, every single printer from a server would drop off the directory. We could get them back by removing and adding the tick for ‘List in the directory’ and waiting 5 minutes, but that’s a rather painful and temporary fix. You can also restart the Print Spooler service and wait as it will republish the printers, but that’s non-permanent resolution.
Doing a bit of research (yes, googling) I found an old thread here http://www.techsupportforum.com/forums/f103/solved-network-printers-disappearing-from-directory-161202.html and a similar Microsoft support article here http://support.microsoft.com/kb/246906/en-us that both indicated the easist way is to disable Printer Pruner on each Print Server via Group Policy:
As per the screenshot, the three settings you want to disable are:
Directory pruning interval
Directory pruning priority
Directory pruning retry (ok this doesn’t really matter if the top two are disabled, but no harm)
This will stop the server doing any sort of pruning – and hey, if you want to remove a printer from the directory, you remove the tickbox.
As a side note, if you’re not already using Print Management – start using it. Step by Step guide from Technet here: http://technet.microsoft.com/en-us/library/cc753109(v=ws.10).aspx
Why use Print Management? It lets you centrally manage all Network Printers, their drivers, and has a bunch of handy options like deploying to Group Policy. Trust me, it’s worth having a look! You just need to add the “Print Services” role to a server, then add the feature “Print Services Tools”.