用 c 写网络编程本身就是一件非常蛋疼的事了。实现中文域名系统,要研究 udp, tcp, dns协议,实现中文的编码和解码,将各个字段按照各个协议的规定进行相应的层层封装并解析,最后把写好的程序在网络上跑一遍,程序的结果不仅仅要正确无误,还要用wireshark抓包,如果抓包结果能完美的识别出任何两台通信机器之间的协议并且抓包数据的解析完全正确,工作就算是完成了。