Я новичок в сетевом программировании на С#, и я хочу создать прокси-сервер, который может использоваться для ограничения доступа пользователей к Интернету, если они превысили ограничение на скачивание.
Моя текущая конфигурация: ---- User → proxy server → wifi router → internet.
Я искал везде, и я обнаружил, что HTTP-прокси можно создать, но очень сложно создать прокси-сервер HTTPS в С#
Даже библиотека С#, такая как Trotinet и mentalis, не поддерживает прокси HTTPS.
Но я обнаружил, что в JAVA много библиотеки, как небольшой прокси-сервер, поддерживающий HTTPS-соединение.
Итак, возможно ли создать полностью функциональный прокси-сервер в С#? или я должен попробовать переключиться на JAVA?
Еще один вопрос. Могу ли я создать простой TCP-клиент, который будет читать его сетевой интерфейс и перенаправить этот поток, как на wifi-маршрутизатор, без необходимости читать его заголовок или что-нибудь еще, будет ли этот метод работать? Просто догадаться, извините за вопрос о нобе.
благодаря
Ответ на ваш первый вопрос: ДА, вы можете создать полный функциональный прокси HTTPS с С# (аналогично Fiddler). Не нужно переходить на Java. Только для целей тестирования вы можете использовать Fiddler Core. Ядро Fiddler - это полный HTTPS-прокси, написанный на С#. Если у вас есть время и знания, сделайте обратную разработку, используя рефлектор на ядре fiddler и получите представление о реализации.
Последняя фиксация на Trotinet имеет застенчивую реализацию протокола HTTPS. Поэтому, если вы не хотите расшифровывать данные https, Trotinet будет хорошим выбором.
-Kumar