Firewall

B

Bohus

would like to make firewall that checks all outgoing
traffic from my computer. This firewall should ask me to
allow or deny all outgoing traffic. Is it possible to make
such firewall using C# ?
If yes, can you give me some starting point where should I
go in .NET Framework (namespaces, or MSDN resources, ...)
to get started.
Thank you.
 
C

Chris Hornberger

Yes, that is possible. You'll have to get very comfortable with async
sockets.

This is no small undertaking you're talking about, but it's certainly
doable in any language. It would be a good academic excercise to do in
C# or Java.

Both have strong sockets support.
 
K

Kieran Benton

Is this really possible to be done on one machine without using an NDIS
driver? Sorry to ask but I was interested in writing something liek this a
while ago and it seemed to be impossible to me. Eventually i ended up using
a whole pc as a firewall with two network cards that I bridged using my own
NAT which checked traffic as it did it.

Am i missing something really stupid lol? :)

Kieran
 
D

Dmitri Shvetsov

Just for fun?-)

Maybe it's easier to go to www.kerio.com and get one ready firewall for free
for private use.

http://www.kerio.com/kpf_home.html
http://www.kerio.com/kpf_download.html

It will take care of all your dreams that you described.

As for C# idea... All good firewalls should be loaded BEFORE all stuff from
your computer, eat as less memory as possible, catch everything at the
lowest level. Can you do that using C#? I'm not sure. You should load .NET
at least to start this elephant. And it will eat your pc's memory - full
ahead!

And the last - when I tried to download one well-known firewall, I don't
want to write from what company, 'cause everybody knows this company as well
as me - it was over 30 Mbytes (installation package), over 100 or maybe 200
COM+ objects inside, that have been included into system registry, etc. The
firewall from Kerio takes in 10 times less, and... no heavy metal. If you
want to use all your RAM for your firewall... you're welcome.

Dmitri.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top