2010-01-26 5 views
4

나는 모든 인터넷 활동을 잠그는 기능이있는 부모 모니터링/추적 응용 프로그램을 개발 중입니다. 네트워크 어댑터를 사용하지 않도록 설정하는 것이 간단한 해결책 인 것처럼 보이지만 응용 프로그램은이 원격으로 인터넷을 다시 켜야하므로 네트워크를 사용할 수 있도록 일정한 제한을 유지해야합니다.C#/C++을 사용하면 네트워크 트래픽을 제한 할 수 있습니까?

불행히도 실제로이를 달성하기위한 적절한 방법을 찾지 못했습니다. 이 기능이 없으면 응용 프로그램은 꽤 많은 물 속에 죽었어. 그래서 거대한 도로 블록을 쳤고, 제안이 열려 있습니다.

  1. 드롭 모든 인터넷 활동 내 응용 프로그램과 함께

    , 나는 두 가지 요구 사항을 달성해야합니다. 다음으로

  2. 인터넷 활동 만 지정된 포트와 IP 주소로 설정하십시오. (내 서비스는 투표 할 것입니다.)

간단한 목표가 맞습니까? 요즘 많이 요.

C#에서이 문제를 해결하기 위해 노력하고 있지만 장시간 작업 일 수 있으며 응용 프로그램을 통해 리소스로 호출 할 수있는 C++ 솔루션에 대해 열려 있습니다.

또한이 솔루션은 모든 것을 포괄해야하므로 타사 소프트웨어를 사용자 시스템에 설치할 수 없습니다.

미리 감사드립니다.

답변

7

Windows Filtering Platform을 사용하여 IP 스택에 사용자 지정 레이어를 주입해야합니다. 이 SDK는 특히 자녀 보호 프로그램 등을 대상으로합니다. 말할 필요도없이, 어떤 커널 모듈로, 그것은 C에서 개발되어야하고 당신은 윈도우 내부의 전문 지식이 있어야합니다

Windows 필터링 플랫폼 API가 C를 사용하는 프로그래머에 의해 사용하도록 설계

/C++ 개발을 소프트웨어. 프로그래머는 사용자 모드와 커널 모드 구성 요소를 사용하는 시스템의 네트워킹 개념과 시스템에 익숙해야합니다.

+0

나는이 기회를 놓치지 않을 것이다. 감사!! –

0

이렇게하려면 WinINET API를 사용할 수 있어야합니다. WinINET은 대부분의/많은 Windows 응용 프로그램에 대한 기본 인터넷 설정을 정의하며 프록시 정보를 정의하는 데 사용할 수 있습니다. 이를 염두에두고 메시지를 제외한 모든 요청을 거부하는 프록시를 만들 수 있습니다.

0

직접적인 대답은 아니지만 일반적으로 serial connection 또는 "신뢰할 수있는"LAN에 연결된 두 번째 NIC로 대역 외에서 수행됩니다.

관련 문제