网络与TCP/IP
文章平均质量分 63
jiatingqiang
用计算机的视角,观察、体验、追求世界! ---知其然更要知其所以然---
展开
-
Linux网络体系结构概要
一 内核结构 按功能,Linux内核可以划分为5个不同的部分,每一部分处理一项明确的功能,同时又向其他内核组件提供这项功能。这种结构也反映到内核的源代码上——这5部分都形成了自己的子树。http://blog.csdn.net/fover717/archive/2009/06/26/4301637.aspx转载 2011-06-05 08:30:00 · 900 阅读 · 0 评论 -
修改以及重构SKB
修改以及重构SKB 测试环境: Fedora13工具: sendip和wireshark sendip可以发送各种数据包,确实方便.wireshark图形化的显示对于分析整个数据包还是相当不错的... 一:内核态基于Netfilter构造数据包主要有两种方式:1. alloc_skb申请一个skb结构体,然后根据实际的应用填充不同的成员,或者基于原创 2011-06-05 13:27:00 · 910 阅读 · 0 评论 -
构造协议报文、自定制协议方法
<br />最近在做嵌入式产品开发,需要构造报文、定制协议,以满足通信的需求,下面转发来自互联网上的“构造ip和icmp报文”文章,<br /> <br />以使通过该文章,可以总结出构造协议的一般方法!<br /><br />出处:《Linux 编程技术详解》<br />//在<netinet/ip.h>中可以查看IP包头结构struct iphdr<br />//在<netinet/ip_icmp.h>中可以查看ICMP包头结构struct icmphdr<br />struct iphdr * ip_原创 2011-04-30 09:49:00 · 1402 阅读 · 0 评论 -
linux内核模块获取设备IP地址
<br />关于网络设备<br /><br />在基本完成了整个初始化过程以后,我们需要再回到网络设备上来,看看整个TCP/IP协议究竟是如果跟网络设备相关联,并最终一起完成各种复杂工作的。<br />在网卡驱动相关的分析中,我们提到,代表一个网络设备接口的是一个结构体struct net_device。而在my_inet模块的初始化过程中,mydevinet_init的工作是为MY_PF_INET域的工作找到可用的网络设备,并进行必要的初始化,在mydevinet_init中有这么一行代码:<br />r原创 2011-05-03 22:55:00 · 2762 阅读 · 0 评论 -
利用原始套接字抓取数据
<br />项目需求,需要从链路层抓包,分析实现网络登录认证功能,现在网上找到两个不错的抓包程序,参考此文章,顺利完成任务,现将此文章收藏与此,便参考,同时感谢文章版主,谢谢!<br /> <br />一:抓包分析:http://blog.csdn.net/aaa6695798/archive/2009/03/20/4008322.aspx<br /> <br />二:原始套接字抓包分析<br /> <br />原始套接字的创建<br />方法1: socket(PF_INET,SOCK_RAW,IPPRO原创 2011-05-10 08:29:00 · 5063 阅读 · 3 评论 -
浏览器访问一个地址的过程-转载
我来回答这个问题吧,整个过程比较复杂,也不知道哪些步骤对你有用,就说得详细一些吧,采用分条的形式,看哪里你能用到就参考哪里吧,呵呵! 1.若DNS缓存中没有相关数据,则IE浏览器先向DNS服务器发出DNS请求: 这一过程的目的是获取www.sina.com转载 2011-07-05 00:07:10 · 807 阅读 · 0 评论 -
基于 linux 平台的 libpcap 源代码分析
libpcap 是 unix/linux 平台下的网络数据包捕获函数包,大多数网络监控软件都以它为基础。Libpcap 可以在绝大多数类 unix 平台下工作,本文分析了 libpcap 在 linux 下的源代码实现,其中重点是 linux 的底层包捕获机制和过滤器设置方式,同时也简要的讨论了 libpcap 使用的包过滤机制 BPF。网络监控绝大多数的现代操作系统都提供了对转载 2011-12-28 15:22:47 · 1168 阅读 · 0 评论