Server Fault is a question and answer site for system and network administrators. 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

when port forwarding on my router for port 139 to port 139 of my linux-smb based NAS is enabled running a simple \\sharename on windows works. However when set to any other port for example \\sharename fails to function when the router is set to also forward that port to 139 internally, do I have the syntax wrong or is something else needed?

share|improve this question
up vote 4 down vote accepted

Can't be done sorry. Windows does not support TCP ports other than 445/139. (Here is one reference.)

share|improve this answer

You could try a Windows port of rinetd on the client machine, which would let you do something like this on the client machine:

#bindaddress  bindport connectaddress connectport   139        999

Assuming that worked, you could use your normal \\sharename from your client machine, and rinetd would change the connection port for that address.

This article: has more information and a patched binary. I haven't tried this myself, but it looks like it is worth attempting.

share|improve this answer
looks like this would work on the server for incoming requests, not the sender for outgoing, right? – Maslow Jul 12 '09 at 10:49
You would set this up on the client, not the server. The server would still be set at 139 of course. You would keep the port mapping you had on the router. – Adam Brand Jul 12 '09 at 15:36
rinetd manpage – sinelaw Jun 27 '14 at 16:54

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.