когда переадресация портов на моем маршрутизаторе с порта 139 на порт 139 моего NAS на базе linux-smb включена, запускается простой \ computername.DynamicipserviceX.com \ sharename на windows работает. Однако если установлен любой другой порт, например \ computername.mydynamicIpService.com: 999 \ sharename не работает, если маршрутизатор настроен на внутреннюю переадресацию этого порта на 139, у меня неправильный синтаксис или нужно что-то еще?
Не могу извиниться. Windows не поддерживает TCP-порты, кроме 445/139. (Вот одна ссылка.)
Вы можете попробовать порт 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 содержит дополнительную информацию и исправленный двоичный файл. Я сам не пробовал, но похоже, что попробовать стоит.