The inetutils package contains a lot of IP related tools, like telnet (client and server), ping, and a lot more. I will use it for ping and telnet only. I did not use them from busybox because i needed some scripting with it, and in that case i prefer the original.
You can find the inetutils at GNU, and is at version 1.4.2
For configuration i used ./configure -build=i586-pc-linux-gnu, and then make to start the building process.
After building you will have lots of executables. Just find the ping and telnet (not the telnetd). Strip them with strip -g, and total size will be about 100KB.
Checking with ldd shows many libraries. and most of them are available on our image. The new ones are libz.so.1 and libresolv.so.2.
I will copy telnet to /usr/bin and ping to /bin, and ofcourse the libraries to /lib.
If you just copy this, you will experience that it still doesn't work. Thats because we need some additional libs and configuration. Lets start with the libraries, we need: libnss_files.so.1 libnss_dns.so.1
Now we need some additional configuration, first, the services and protocols. Jou could make you own, but i just copy the /etc/services and /etc/protocols from my running distribution.
Now we need a nsswitch.conf. Because the one in my distro suits my nees, i also copy this one.
The last file is the /etc/resolv.conf, that the configuration for resolving hostnames. You can put in a file for every DNS your provider has, like:
Now everything should work.
Remember i told that i needed to do some scripting with telnet. That is to turn on and off the DHCP server in my ADSL modem when the router is down. Because this is too specific, i won't list them here, but i will add extra boot and shutdown scripts for that.