Не удается подключить один компьютер к другому с помощью приложения удаленной отладки Visual Studio (msvsmon.exe) - PullRequest
0 голосов
/ 07 июня 2019

У меня есть два компьютера, и мне нужно выполнить удаленную отладку с одного компьютера на другой. Основываясь на информации от ipconfig, ПК находятся в разных корпоративных сетях, и, как разработчик, я не имею доступа к коммутаторам или маршрутизаторам компании. Хотя другие коллеги имеют ту же настройку, что и я, они могут выполнять удаленную отладку на своем тестовом ПК, но я нет. Windows и антивирусные брандмауэры отключены на обоих моих компьютерах.

Сообщение об ошибке в Visual Studio:

"Невозможно начать отладку. Удаленный отладчик Visual Studio 2017 (MSVSMON.EXE) не работает на удаленном компьютере. Это может быть связано с тем, что брандмауэр предотвращает связь с удаленный компьютер. Пожалуйста, смотрите справку для помощи по настройке удаленного отладки. "

Unable to start debugging

Вещи, которые я пробовал:

Сводка того, как выполняется соединение с моего хост-компьютера на удаленный ПК, заключается в том, что Visual Studio 2017 отправляет запрос TCP на удаленный ПК с номером порта по умолчанию (4022).

Странно то, что если я изменю этот порт, скажем, на 50000, я смогу подключиться.

Я использовал анализатор пакетов Wireshark для чтения трафика с моего хост-компьютера и другой экземпляр Wireshark для чтения трафика на удаленном ПК.

Когда я запускаю Wireshark и удаленную отладку через порт 50000, я вижу исходящий запрос на установление соединения (SYN) с моего хост-компьютера. На удаленном ПК я вижу, что этот запрос приходит, и подтверждение установления соединения (SYN + ACK) выходит. Это хорошо.

Но когда я обновляю приложение удаленной отладки, чтобы использовать порт 4022 по умолчанию, и снова пробую анализатор пакетов, разница в том, что я больше не получаю никакого запроса на установление соединения (SYN) с хост-компьютера на удаленном ПК. То есть, если я использую порт 4022, хост-компьютер отправляет запрос, но удаленный ПК не получает его.

Я думаю, это означает, что исходящий tcp-трафик на порт 4022 блокируется брандмауэром или списком контроля доступа в сети.

Есть ли что-то, что я пропускаю, или мое предположение верно?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...