когда на моем маршрутизаторе включена переадресация порта 139 на порт 139 моего NAS на базе Linux-SMB, запускается простая команда \computername.dynamicipserviceX.com\sharename в windows работает. Однако если установить любой другой порт, например \computername.mydynamicIpService.com:999\sharename не работает, когда маршрутизатор также настроен на внутреннюю переадресацию этого порта на 139. Может, я неправильно использую синтаксис или нужно что-то еще?
решение1
Извините, это невозможно. Windows не поддерживает порты TCP, отличные от 445/139. (Вот одна из ссылок.)
решение2
Вы можете попробовать порт Windows rinetd
на клиентской машине, что позволит вам сделать что-то вроде этого на клиентской машине:
#bindaddress bindport connectaddress connectport
192.168.1.1 139 4.2.2.2 999
Если это сработает, вы можете использовать свой обычный \servername.server.com\sharename с вашего клиентского компьютера и rinetd
изменить порт подключения для этого адреса.
Эта статья:http://codewut.de/content/port-redirection-windowsесть больше информации и пропатченный бинарник. Я сам не пробовал, но похоже, что стоит попробовать.