Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a network printer (HL-2250DN) that I want to also reach from outside the home network. In the network it is reachable by

Now I used a DNS service to map my external IP to a domain name. How can I now access my printer? is mapping to my external ip. But how can I forward this to my printer?$

On my router I'm forwarding port 80, 631 and 646 for the IP But still it is not working. What am I doing wrong?

share|improve this question
up vote 3 down vote accepted

Port 80 is for web servers, port 631 is CUPS' web server, and port 646 has nothing to do with Printing that i'm aware of. i.e., none of these are going to allow you to forward a printer through a firewall.

Try forwarding Port 9100 and mapping the printer as a JetDirect device. Brother's have supported JetDirect for quite some time (I map mine that way).

In Windows, adding is different:

Add Printer -> Local Printer Attached...(Uncheck auto detect) -> Select Create New Port, choose Standard TCP/IP Port -> Enter hostname, Port Name is abstract and can be anything (within reason) -> Select proper printer driver -> Done, Profit. Everything else should be standard options.

As long as you're forwarding 9100, in theory that should work...

If you're trying to get Windows printer sharing to work through NAT and a typical ISP, you're just opening yourself up to leagues of problems.

Just tested this with my Brother 2070 and a friend a couple of hundred miles away, worked great for us with just Port 9100 going through the firewall to the printer. YMMV.

share|improve this answer

Can you ping said ports from the outside? Perhaps it is blocked on the ISP level, or blocked on the level which you connect through (i.e. your remote office's router).

Update: One way you might circumvent ISP or router blocking is to proxy the requests both in your print requestor (i.e. laptop at work that you're trying to print at home from) and in your home, either in your router at home or via a proxy server set up at home. Essentially you would proxy accesses to a given printer name/port to something like Your server on handles all of the requests on the "print" subdomain and proxies them to the correct printer IP address and port #.

Or you could get a PDF converter and save everything you want to print at home that way, and use a USB key to do the transfer. Any chance your printer has a USB port? :)

share|improve this answer
Im currently at home while trying it. I just do not use the local IP but the dynamic DNS entry. – RoflcoptrException Sep 6 '11 at 19:07
Are you still appending the port to the request, i.e. ? – Joshua Sep 6 '11 at 19:37
Due to abuses when Windows 98 was out most ISPs block file and printer sharing, but you can still try, you may get lucky. – Scott Chamberlain Sep 6 '11 at 20:43
@Josh yes I do @ Scott Chamberlain Ah I see, but isn't there a way to cirumstance it? – RoflcoptrException Sep 7 '11 at 18:33
1) you don't ping ports. you can ping addresses, and you can test ports using telnet, you can use nmap to scan for them, etc., but you don't ping them. 2) ISPs don't routinely filter traffic. It is prohibitive for them to enact firewalls on anything other than their private, internal systems. Even if they did, none of the ports the OP mentioned were file and printer sharing ports. – peelman Sep 7 '11 at 20:08

Is is possible for you just to use Google Chrome Print?

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .