当前位置:  技术问答>docker中文入门学习手册 iis7站长之家

网络面试题,linux + c +socket,搞的头都大了,请高手帮忙!!

    来源: 互联网  发布时间:2016-08-11

    本文导语:   题目一    1.能够捕获网络上的数据包。   2.若捕获的数据包为IP包,打印其上层协议类型,若上层协议为TCP/UDP则再次打印其应用层协议类型(如http.smtp等).   3.若捕获的数据包非IP包,则打印其源MAC,目的MAX,以及...

 题目一 
  1.能够捕获网络上的数据包。
  2.若捕获的数据包为IP包,打印其上层协议类型,若上层协议为TCP/UDP则再次打印其应用层协议类型(如http.smtp等).
  3.若捕获的数据包非IP包,则打印其源MAC,目的MAX,以及协议类型。
  4.能够在端口9001上监听其他应用的UDP请求,并打印其请求的数据包内容(头部及数据体部分独立打印,内容见下面)
  5.回复其他应用的UDP请求。

 题目二
  1.与题目一通过9001端口通讯,给题目一发送数据桢(桢格式如下所示)
  2.支持使用IP地址作为参数连接题目二。
  3.数据包长度随机产生,范围:1~255
  4.打印题目一回复的内容并记录到文件。

请求桢格式至少包含:
版本号      3bit
请求类型    2bit   00->Request    01->Response   10/11->Reserved
数据长度    8bit
序列号      16bit,每发送一个数据包值曾一
数据体      0~255byte,起始位置包含32字节欢迎信息,其它内容随机生成。

环境为redhat 9.0,请高手看看用C代码如何实现上面2个功能,说说大致思路,需要用到那些知识,最好有代码参考。socket我刚入门,谢谢!!

|
抓包底层用libpcap来支持,否则没办法实现,然后分析包的格式就行了

发包如果需要高度定制,底层要用libnet,否则也没办法实现

PS:这个不是面试题吧?应该是你的一个什么项目或者作业才对...

|
题1:
如果只需要ip层或者ip层以上的包,RAW socket是可以实现全部监听的.
你把RAW socket的3种模式看下,再看看TCP/IP几种包头的结构,差不多就能做了.

|
LINUX下使用socket(PF_PACKET, SOCK_RAW, htons(ETH_P_IP))能够抓到到本机的所有包,如果要抓网络上的包,要把网卡设成混杂
模式,把包抓进来进行分析就行。。。
同时你要另外建一个SOCKET作为UDP服务器, 上面的只能抓包不能回复。。。
libpcap和libnet也可以,不过你要先花很多时间去了解它们的框架

    
 
 

您可能感兴趣的文章:

  • 趋势的一道面试题:网络编程中设计并发服务器,使用多进程 与 多线程 ,请问有什么区别?
  • linux的网络访问?请帮忙!
  • 用JAVA编一个程序,测试网络速度~~高手帮忙
  • unix网络编程资料帮忙 大哥大姐进来瞧瞧啊
  • 救命,系统无法连通网络,大家帮帮忙
  • 100分 , 请高手帮忙...,linux网络配制,得解立即结贴
  • 各位帮忙看看网络配置问题
  • 大家帮忙推荐几本学习linux网络工程的书,谢,,,,,
  • 在下想要学习LINUX下的网络程序设计,请帮忙推荐社区和教材,谢谢!
  • 帮忙介绍一linux网络编程的书?
  • 网络咖啡 希望你帮帮忙!
  • ++++请帮忙提供学习LINUX(red hat 8)的好书,网络管理方面的,谢谢!!++++
  • 网络程序开发高手请帮忙
  • 网络编程中的共享内存问题,哪位高手可以帮忙解决啊?
  • 在网络数据传输中,为了降低数据传输量,用哪种算法最好,有哪位大虾帮忙吗?最好有JAVA源代码
  • 问个网络配置问题,帮忙看一下撒~
  • 请各位帮忙分析,关于网络的问题
  • 我在RH7.1 linux下的网络不通,网卡是d_link DE528 PCI 的,请高手帮忙,82分!!!
  • 嵌入式 linux开发中,加入网络通信代码后,ARM9启动后在超级终端打印出错误信息,请帮忙解决!谢谢
  • 高分请人帮忙,对网络编程熟悉的高手请进
  • 网络编程(tcp),对服务器端口的转换htons(server_port); 到底对不对?请帮忙看看
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 无法激活网络(求教高手!!!!!!!!)
  • 搜集网络管理方面高手的QQ?来者有分!!
  • 请教网络通信高手~~~~
  • 向高手求助Linux下网络包转发的问题!!!!!!!
  • 请教高手linux和windows互联的网络设置!
  • Socket网络高手请进,关于socket通讯.
  • <UNIX网络编程>27章的问题,请高手来帮我!
  • 请教各位网络高手1个问题--关于Linux和NT互联
  • 请教各位网络高手-----关于DNS设置
  • 请问有哪位高手知道如何编程实现网络唤醒开机
  • 请高手指教 关于linux下网络配置的问题
  • red hat linux 9 无法激活网络设备,求高手指点!
  • 网络服务器架设高手必进。。。。。谢谢
  • 想通过自己动手学习Linux网络编程,做一个什么比较好呢?望有经验的高手指点~~
  • 有哪位高手知道如何通过DOS的命令行访问网络中其他机器的共享目录
  • 网络通讯和多线程问题 请高手相助!献上100分
  • 搞网络研究的用FreeBSD?高手请进!
  • 求linux网络编程高手
  • FC9 登陆之后网络图标一直是叉~~请高手来看看~~
  • 我是来学习linux的,网络编程高手请进
  • Docker、Kubernetes、Neutron中的网络简介
  • 怎么用dos命令配置登陆网络,随便什么网络,举例就行~
  • 基于python实现的网络爬虫功能:自动抓取网页介绍
  • 系统网络问题之网络配置
  • 分布式CAP理论介绍:一致性(Consistency),可用性(Availability),容忍网络分区(Partition tolerance)
  • 网络爬虫/网络蜘蛛 larbin
  • 应对 Docker 网络功能难题的挑战与思考
  • 如何将运行dos的机子联入网络,或在dos下使用网络硬盘
  • Android及andriod无线网络Wifi开发的几点注意事项
  • linux不用命令方式读文件获取网络流量,如何使用C函数调用获取网络流量信息?
  • centos6网络配置及网卡设置相关命令及配置文件


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3