Ограничение tcp-связи с конкретными ip с использованием C#
Я хочу сделать простую программу, которая может ограничить любое общение через Интернет, за исключением некоторых конкретных IP-адресов. Так что пользователь может устранить любой нежелательный трафик. Это должно быть просто, и пользователь должен иметь возможность включать и выключать его на лету.
Моей первой мыслью было использовать брандмауэр Windows и настроить его с помощью C#/WPF. И это может быть возможно. Но есть ли более простой способ?
Платформа: Windows 7, .NET 3.5
ура
2 ответа
Я бы просто использовал брандмауэр Windows, как вы упомянули. Гораздо проще Вот хорошее руководство по изменению брандмауэра Windows в C#.
По сути, вы создаете брандмауэр. Один из ваших лучших вариантов - использовать существующий брандмауэр и управлять им из вашей программы. Так как есть одно встроенное в окна, которое будет моим первым выбором.
Тем не менее, другой вариант - создать прокси-слой в стеке IP. Наконец, если ваши пользователи ограничены одной программой связи (скажем, IE или что-то еще), вы можете просто создать / использовать программу типа прокси-сервера.