Zerodevice: Привет, я пытался написать брандмауэр, как AVG Firewall, на C #, однако я не знаю как.
Интересно, если есть какой-либо учебник? руководство? или какие-нибудь примеры, которые помогли бы мне начать?
спасибо.
Citizen on the earth: Привет zerodevice,
В зависимости от того, что хочется получить:
1) Если вы пытаетесь сделать локальный брандмауэр, который защищает ПК, на котором он установлен, то вы должны написать драйвер сетевого фильтрп (network filter driver), который представляет собой модуль режима ядра, как и любой драйвер устройства, и делать это лучше на С++.
2) If you want to code for a machine which will stand between Internet and LAN and serve as a filtering router (which most hardware firewalls actually are) then you can do this but need access to promiscuous mode and be able to forge packets with raw socket access discarding the TCP/IP stack .
2) Если вы хотите, чтобы написать код для машины, которая будет стоять между Интернетом и локальной сети и служить в качестве фильтрующего маршрутизатора (которыми на самом деле являются большинство аппаратных брандмауэров), то вы можете сделать это, но вам придётся работать в promiscuous режиме и научиться формировать пакеты в режиме прямого доступа к сокетам в обход стека TCP/IP. Вы можете это сделать с помощью WinPcap и библиотек-обёрток для него на C#, но это совсем не простая задача. Вам потребуется отличное знание модели OSI, протокола и стека TCP / IP и маршрутизации в layer 3.
Надеюсь, что это поможет,
С уважением
Citizens on the earth