- 博客(29)
- 资源 (1)
- 收藏
- 关注
原创 linux的网络设计与实现
linux的网络设计与实现(2241 个字於此篇帖子)(已阅读: 2514 次) Bricks :) http://bricks.yeah.net/=====================================linux的网络设计与实现=====================主要参考: UNIX高级教程 系统技术内幕
2005-04-30 19:35:00 3679
原创 如何从链路层收到的数据报中访问IP层和TCP层头信息?
收包时ip_rcp()中第一行skb->nh.iph以前在那里被赋值! 从网卡开始收数据包开始跟踪一个数据包的接受过程,到ip_rcp()这个函数的时候,他的第一句话是中第一行struct iphdr *iph=skb->nh.iph 可是我看的源码中并没有给skb->nh.iph赋值,有的只是赋了skb->dev之类的,所以这里这个skb->nh.iph是不能用的,我觉得。 不知道他是在那
2005-04-30 19:22:00 2306
原创 Linux下网卡配置方法大全(自己的总结)
设置网卡为混杂模式ifconfig promisc=======================================linux下修改网卡MAC地址 在linux下修改MAC地址方法如下: 1、/sbin/ifconfig eth0 down 2、/sbin/ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE 3 、/sbin/ifconfig eth0
2005-04-26 10:42:00 1871
原创 net/ipv4/route.c文件分析
net/ipv4/route.cauthor: elvis目錄 介紹 route.c 的背景 routing 流程 相關資料結構 route.c 相關函數詳解 介紹 route.c 的背景linux 在設定 route 有兩個機制,一個是 fib,一個是 dynamic 產生的 routingfib 是利用 route(man 8 route) 指定來靜態 route table而 net/ipv
2005-04-24 16:31:00 6760
原创 网络设备的IP地址结构
网络设备的IP地址结构 回复 网络设备的IP地址结构====================(1) 在TCPIP协议环境下,网络设备结构(net_device)具有一个ip_ptr指针指向IP协议的设备参数块(in_device),它包含设备IP地址结构(in_ifaddr)的链表指针(ifa_list).IP地址结构链可以为一个网络设备配置多个IP地址,使得局域网中的单台主机能模拟多台主机的作用
2005-04-24 16:24:00 3489
原创 内核能够动态确定ip包的发送接口,通过路由信息确定
lzgogogo(stranger)03-11-16 18:45 怎么样在内核中按照自己的需要的向外发送一个数据包? 回复 我在Netfilter框架下面写了一段包处理的函数,现在要实现一个功能,是按照自己的要求产生一个数据包并且发送出去.比如说我现在要发送一个数据包,该数据包从192.168.1.154:80发送到192.168.1.155, Seq为3187958690 ACK为 318795
2005-04-24 16:16:00 1817
原创 请问如何在内核中得到网卡的mac地址?根据网卡名子得到mac地址也可
ww7109(stranger)04-08-23 14:10 请问如何在内核中得到网卡的mac地址?根据网卡名子得到mac地址也可 回复 文章选项: dl_dht(addict)04-08-23 18:56 Re: 请问如何在内核中得到网卡的mac地址?根据网卡名子得到mac地址也可 [re: ww7109]回复 struct net_device *dev = dev_get
2005-04-24 15:48:00 4348
原创 Linux2.4.0IP层转发(ip_forward)流程
Linux2.4.0IP层转发流程 Email:getmoon@163.com QQ:505333 欲攬明月 下载地址:http://linuxsouce.home.sohu.com/download/ipforward.zip 其他文档下载:http://linuxsouce.home.sohu.com/download/index.html /*关于本地接收到一个数据包是本地发送还是转发的分流
2005-04-23 17:24:00 5614
原创 Linux网络代码导读v0.2
Linux网络代码导读v0.2 ◆ Linux网络代码导读v0.2 作者:yawl yawl@nsfocus.com > 主页:http://www.nsfocus.com/ 1 前言 许多人在分析linux代码时对网络部分(主要是src/linux/net,src/linux/include/net及src/linux/inc
2005-04-23 16:09:00 2215
原创 The journey of a packet through the linux 2.4 network stack
The journey of a packet through the linux 2.4 network stack --------------------------------------------------------------------------------This document describes the journey of a network packet insi
2005-04-23 16:08:00 3685
原创 linux网络简介(摘自linux kernel)
第十章 网络 网络和Linux是密切相关的。从某种意义来说Linux是一个针对Internet和WWW的产品。它的开发者和用户用Web来交换信息思想、程序代码,而Linux自身常常被用来支持各种组织机构的网络需求。这一章讲的是Linux如何支持如TCP/IP等网络协议的。 TCP/IP协议最初是为支持ARPANET(一个美国政府资助的研究性网络)上计算机通讯而设计的。ARPANET
2005-04-22 19:11:00 2676
原创 完整的网络协议层次图
值得注意的是ARP协议和IP协议是不发生联系的。封装MAC帧的时候,如果没有找到目的IP对应的MAC(即hh_cache为空),那么调用dst->neighbour->output(skb)(指向neigh->resolve->output),在neigh->resolve->output中调用neigh_event_send利用arp对ip地址进行硬件地址的解析工作。
2005-04-22 18:54:00 4030
原创 计算机网络自己的总结(谢希仁第四版)
计算机网络总结1. P110指明了V2格式的MAC帧格式,其中数据字段(即IP数据包)长度范围在46字节-1500字节,这个范围是针对以太网来定义的,“1500字节”也叫做以太网的MTU(最大传输单元,即以太网限定了IP数据报最大长度为1500字节)。P185指明了IP数据报的格式,“总长度字段”为首部和数据部分之和。其中“总长度字段”为16bit,因此IP数据报最大长度可以为65535字节(2
2005-04-19 18:29:00 4050 1
原创 ARP协议概述--入门很好的文章
ARP协议1 ARP协议概述IP数据包常通过以太网发送。以太网设备并不识别32位IP地址:它们是以48位以太网地址传输以太网数据包的。因此,IP驱动器必须把IP目的地址转换成以太网网目的地址。在这两种地址之间存在着某种静态的或算法的映射,常常需要查看一张表。地址解析协议(Address Resolution Protocol,ARP)就是用来确定这些映象的协议。ARP工作时,送出一个含有所希望的I
2005-04-19 18:25:00 1868
原创 在Red Hat Linux 7.3上配置NAT和封包过滤防火墙
原文地址:http://www.ta139.com:8080/~pangty/MyLinux/iptables.htm实际工作中我们会有这样的需求:让多台计算机/局域网共享一条线路访问Internet,要实现这项功能通常有两种方法: l 使用NAT(Network Address Translation)l 架设代理服务器(Proxy Server) 一个典型的应用
2005-04-18 17:46:00 3059
原创 IP函数分析_APUE
IP函数分析_APUE亦无 @ 2005-03-10 18:29$$$$$$$$$$$$$$$$$IP初始化函数分析$$$$$$$$$$$$$$$$$$$$ void __init ip_init(void) 当系统启动的时候,会调用inet_init(void)来初始化网络子系统,这个函数又调用ip_init来初始化IP协议处理模块(注册处理函数,分配路由处理表等等)。 实现过程: * 注
2005-04-18 17:43:00 3328
原创 Linux启动过程综述(转载)
Linux启动过程综述来源:IBM2002-11-28 0:18:00 作者:杨沙洲 文以Redhat 6.0 Linux 2.2.19 for Alpha/AXP为平台,描述了从开机到登录的 Linux 启动全过程。该文对i386平台同样适用。 一. Bootloader 在Alpha/AXP平台上引导Linux通常有两种方法,一种是由MILO及其他类似的引导程序引导,另一种是由F
2005-04-18 17:29:00 1616
原创 netfilter各个HOOK的关系简介(笔记中已经总结到函数调用流程中)
netfilter各个HOOK的关系最近哥们儿们对网络内核问的问题逐渐增多,本人 从前分析过2。2的网络源代码,并且对BSD也有所了解。但是我也注意到由于2。4对于SMP更好的支持以及改写了防火墙部分代码,因而网络源码IP层的变化较大。本人在北京理工大学xumei_bit网友邀请下帮助他(她)分析防火墙部分。因此正好也可以借此机会,将自己的拙作与大家共享。 首先说一说netfilter的几个HOO
2005-04-18 10:11:00 3064
原创 堆和栈的区别 (可能做为笔试题目)
堆和栈的区别 一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。3、全局区(静态区)(st
2005-04-16 13:30:00 1567
原创 socket编程实例
socket编程实例 /* client.c */ #include #include #include #include #include int main() { int sockfd; int len; struct sockaddr_un address; int result; char ch=A; sockfd=socket(AF_UNIX,SOCK_STREAM,0); /*以上建
2005-04-12 17:50:00 3660 2
原创 Linux的硬件地址解析过程
Linux的硬件地址解析过程 1) 在网络接口设备的硬件层之间能够直接进行包交换的设备构成了一个局域网,局域网中的每一设备具有唯一的硬件地址. 对TCPIP协议来说, 局域网中的每一设备又具有唯一的IP地址.当IP包要从某一设备发向局域网中具有另一IP地址的设备时, 信源设备必须获得信宿设备的硬件地址,这就需要硬件地址解析.arp协议是根据设备的IP地址获取其硬件地址的方法.信源设备向局域网广
2005-04-07 19:16:00 3462 1
原创 ARP协议实现原理(以单片机51为例)
ARP协议实现原理 作者 2002/11/01 ARP是Address Resolution Protocol的缩写。中文译做“地址解析协议”,本质是完成网络地址到物理地址的映射。从概念上讲就是找到一个映射方法f,使得“物理地址 = f(网络地址)”。物理地址有两种基本类型:以太网类型和proNET令牌环网类型,网络地址特指IP地址,对映射方法的要求就是高效。具体到以太网
2005-04-07 11:42:00 2533
原创 ARP协议分析
ARP协议分析(An Analysis Of ARP Protocol) ARP(Address Resolution Protocol)地址解析协议用于将计算机的网络地址(IP地址32位)转化为物理地址(MAC地址48位) [RFC 826]。ARP协议是属于链路层的协议,在以太网中的数据帧从一个主机到达网内的另一台主机是根据48位的以太网地址(硬件地址)来确定接口的,而不是根据32位的
2005-04-07 11:24:00 1231
原创 网络管理之ARP协议篇
我们知道,当我们在浏览器里面输入网址时,DNS服务器会自动把它解析为IP地址,浏览器实际上查找的是IP地址而不是网址。那么IP地址是如何转换为第二层物理地址(即MAC地址)的呢?在局域网中,这是通过ARP协议来完成的。ARP协议对网络安全具有重要的意义。通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞。所以网管们应深入理解ARP协议。一、什么是ARP协议
2005-04-06 19:13:00 2835
原创 vi命令一览表
Vi命令一览表 移动光标h将光标左移一格。l将光标右移一格。k或Ctrl+p光标上移一行 j或Ctrl+n 光标下移一行 w将光标移到下一个小字的前面。W将光标移到下一个大字的前面。b将光标移到前一个小字的前面。B将光标移到前一个大字的前面。e将光标移到下一个小字的后面。E将光标移到前一个大字的后面。fc把光标移到同一行的下一个c字符处。Fc把光标移到同一行的前一个c字符处。tc把光标移到
2005-04-04 14:25:00 1182
原创 Linux网路卡驱动程式分析(NE2000为例)
1Linux网路卡驱动程式 : 追踪与效能分析 投稿领域:网路软体 陈一玮 林盈达 国立交通大学资讯科学系 新竹市大学路1001号 TEL:(03)5712121 EXT. 56667 E-MAIL:iwchen@cis.nctu.edu.tw , ydlin@cis.nctu.edu.tw 主要联络人:陈一玮TEL:0927308032 摘要 一部电脑的网路元件可分成硬体和软体两部分,硬体方面有
2005-04-04 09:55:00 3246
原创 Linux I/O资源 (ZZ)
Linux I/O资源 (ZZ) 3.1 Linux对I/O资源的描述3.2 Linux对I/O资源的管理 3.2.1 I/O资源的申请 3.2.2 资源的释放 3.2.3 检查资源是否已被占用 3.2.4 寻找可用资源 3.2.5 分配接口allocate_resource() 3
2005-04-04 09:51:00 1638
原创 提取四位数的千位,百位,十位,个位
// bit.cpp : Defines the entry point for the console application.///*x-->千位y-->百位z-->十位w-->个位*/#include "stdafx.h"#include "stdio.h"int main(int argc, char* argv[]){ int i=5687; int x,y,z,w; x=i/1000;
2005-04-03 23:25:00 13013
原创 经典的“冒泡”排序法
// maopao.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include "stdio.h"int main(int argc, char* argv[]){ int a[]={5,6,8,3,1,4,7,9}; int i,j,t; for (i=0;i//7为需要排列的数的
2005-04-03 23:17:00 1030
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人