You can use the eEx Network Library to write small applications (I did the same during my CCNA).
This is an easy-to-use and object-oriented .Net programming library that allows you to go to layer 2 and send custom frames through WinPcap.
Frame types such as Ethernet, ARP, IP, UDP, TCP and RIP are implemented, and as far as I know, these are the protocols that occur during CCNA.
C # tutorials are available here , and if you want to look at something in depth, such as address resolution, you can always look at the source code, since the library is open source.
source share