Networking with C++

Hello All,

I'm dying to embark on an adventure to create an internet control gateway of sorts; both as a learning platform and also potentially as an income source.

I have extensive programming knowledge of various other languages JavaScript, JScript, VB.NET, SQL and such but very limited knowledge of C++. Through my research I have discovered that C++ appears to be the only programming language which I will be able to achieve my goals.

Ideally I want to write a program which will perform the following:

Act as internet gateway for private lan clients on a public wan
Control the clients upload and download bandwidth (with burstablility)
Control the clients upload and download volume
Control the clients connectivity based on time
Authenticate clients by MAC address, IP address or by a 'built-in' web redirection authentication
And last but not least implement some sort of QoS.

I know that these features are available in many products but I truely, madly, deeply want to learn how to do it myself.

I initially wanted to write the program to operate on a windows XP machine as a windows service (and this would still be nice to achieve) but I now would like to write it either as a windows or linux app to run on a dedicated PicoITX machine.


That being the introduction to my goals, I had better say that I have no idea where to start. I'm not much into reading pages and pages of books to find the info, rather I prefer to start from a seed of functionality and grow from there...

So, that being said, how in C++ can I access the network interfaces of a PC?
Does accessing the NICs differ between Win and Linux?

I understand this project is quite involved and I would greatly appreciate anyone's input. I'd like to see this project through to an initial release and hope that others too like me are interested in this sort of project.

Thanks in advance.
Anubis.
Topic archived. No new replies allowed.