
Надеюсь, этот вопрос относится к serverfault. В противном случае, пожалуйста, дайте мне знать, где еще лучше.
Ситуация: Сервер A используется для некоторой автоматизации, которая обращается к веб-серверу на сервере B. Домен веб-сервера — B.int.ca, а веб-сайт доступен через порт 5000. Сервер A и сервер B находятся в разных зонах, что означает, что для того, чтобы сервер A мог получить доступ к веб-сайту на сервере B, он должен пройти через NAT, который находится на AtoB.int.ca на порту 7000.
Пока все хорошо, все работает хорошо.
Проблема:Независимо от того, как был построен веб-сайт, когда мы хотим загрузить файл при доступе из AtoB NAT на сервере A, ссылка на файл будет отображаться как B.int.ca:5000/somefile.txt вместо AtoB.int.ca:7000/somefile.txt. Поэтому его нельзя загрузить.
Можно ли как-то создать переадресацию портов на сервере A, которая перенаправляла бы все запросы, сделанные локально, на B.int.ca:5000, а затем на AtoB.int.ca:7000?
Ограничения:Я определенно не могу ничего изменить ни на NAT, ни на веб-сайте, ни на сервере B. У меня есть свобода изменений только на сервере A. Я не могу изменить свой код автоматизации, я могу только нажать на ссылку, чтобы загрузить файл.
Что я пробовал:Я понимаю, что файл hosts не работает с портами, а только с именем хоста, так что это не сработало для меня. Затем у меня сложилось впечатление, что netsh portproxy может работать, но, полагаю, не будет, так как он только перенаправит соединение с сервером A в другое место.
Есть ли выход из этой ситуации?