Когда я устанавливаю tcp-соединение с сервером, используя класс TcpClient, есть ли способ узнать исходный порт этого соединения? Я пытаюсь реализовать протокол exec, и порт stderr всегда выглядит как порт источника + 1.
Используйте ((IPEndPoint) tcpClient.Client.LocalEndPoint).Port после установления соединения.
((IPEndPoint) tcpClient.Client.LocalEndPoint).Port
Решено:)
Клиент отправляет номер порта TCP (десятичный ascii, завершается нулем) из stderr порт. Если первый байт равен NULL, тогда сервер не сделает ни одного stderr подключение.