저는 C# 네트워크 프로그래밍에 초보자이며 다운로드 제한을 초과 한 경우 사용자가 인터넷에 연결하지 못하도록 제한하는 데 사용할 수있는 프록시 서버를 만들고 싶습니다.C#의 프록시 서버
내 현재 구성은 ---- 사용자 -> 프록시 서버 -> wifi 라우터 -> 인터넷입니다.
나는 모든 곳에서 검색하고 그 HTTP 프록시가 생성 될 수 있지만이 HTTPS 프록시를 지원하지 않는 C#으로 Trotinet 및 mentalis 같은심지어 C#을 라이브러리를 HTTPS를 프록시를 생성하는 것은 매우 어렵다 발견했다.
하지만 HTTPS 연결을 지원하는 거의 프록시 같은 JAVA에는 많은 라이브러리가 있다는 것을 알게되었습니다.
그래서 C#에서 완전한 기능의 프록시를 만들 수 있습니까? 또는 Java로 전환을 시도해야합니까?
하나 더 질문드립니다. 내가 간단한 TCP 클라이언트를 만들 수 있습니다 networkstearm 읽기 및 그 헤더 또는 아무것도 읽을 필요없이 와이파이 라우터로 그 스트림을 전달,이 방법은 작동합니까? 그냥 추측, 멍청한 질문에 대한 미안.
감사
, 그래 당신은하여 TcpClient라는 클래스를 사용하여이 작업을 수행 할 수 있으며 GetStream() 메소드를 연관된. 리스너 인 AcceptClient()를 작성하여 별도의 클라이언트를 대상에 연결하고 수신 스트림에서 수신 한 모든 것을 대상 스트림으로 전달하십시오. 적어도 하나의 헤더 패킷을 처리해야하므로 목적지를 알아야합니다. 여기에 TcpListener 및 TcpClient에 대한 자습서가 있습니다. http://tech.pro/tutorial/704/csharp-tutorial-simple-threaded-tcp-server –
제가 한 일이지만, 직면 한 문제는 TCPClient가 포트 번호가 필요하다는 것입니다. 와이파이 라우터에 포트 번호가 있습니까? Google에서 검색 중이며 아직 내 라우터의 포트 번호를 찾을 수 없습니다. – Sam
네트워크와 TCP가 어떻게 작동하는지 오해 할 수도 있습니다. 네트워크가 사용자를 대신하여 라우팅을 처리합니다. 다이어그램에서 '인터넷'으로 설명 된 지점에서 대상에 연결하기 만하면됩니다. –