Non avere completamente idea di cosa sia un firewall e volere iniziare a scriverne uno, non e' il miglior modo di affrontare i problemi ...
La cosa "fondamentale" in un firewall e' il "filter driver" di rete (ovviamente a livello kernel). E questo si fa esclusivamente in C/C++ (per ovvie questioni di interfacciamento al kernel di Windows e per altrettanto ovvie questioni di performance).
Fatto il driver (ovvero dopo aver imparato a programmare con il DDK e con tutte le problematiche di rete a quel livello ...), si puo' iniziare a scrivere una "interfaccia" che dialoghi con il driver.
Questa interfaccia la si puo' scrivere con qualsiasi linguaggio (ovviamente anche VB.NET o C#) e si deve occupare solamente dell'input delle opzioni desiderate e del dialogo con il driver ...
Qualcosa e' possibile fare anche "senza il driver", tramite le api iphlpapi ma non mi pare una buona scelta ...
Una soluzione alternativa e' quella di utilizzare un driver gia' pronto e utilizzabile (come Winpcap) ma questo significa NON scrivere un firewall ma solamente l'interfaccia di un firewall ...
Ultima modifica effettuata da gantonio il 09/03/2008 alle 9:34 |