赞助连接

赞助连接

阅 读 文 章

ARP地址解析协议详解及其漏洞分析

[来源:网上转载 (http://www.chinaunix.net) | 作者:网友(xie_minix) | 时间:2007-05-27 | 浏览:人次 ]


(void)memcpy(&isaddr, ea->;arp_spa, sizeof (isaddr));/**/
(void)memcpy(&itaddr, ea->;arp_tpa, sizeof (itaddr));/*这两句是把发送和接受端的IP协议地址考到临时变量中*/
/*hack------------------------*/
printf(" %x <- %x oldip=%x on %s%d\n",itaddr.s_addr,isaddr.s_addr,oldip.s_addr,ac->;ac_if.if_name, ac->;ac_if.if_unit);
/*end------------------------*/

for (ia = in_ifaddrhead.tqh_first; ia; ia = ia->;ia_link.tqe_next) {/*ia到底是个什么东西呢*/
/*ia是一个in_ifaddr数据结构,在网卡接口的每一个Internet地址(一个网卡可以有多个Internet地址)都分配了
这样一个结构
struct in_ifaddr {
struct ifaddr ia_ifa; /* 分配给每一个接口的地址,通常是每个协议都有一个.详细说明如下:
----------------------------------------------------------------------------------------------
struct ifaddr {
struct sockaddr *ifa_addr; /* 接口的地址,sockaddr结构我就不讲了,太简单了 *
struct sockaddr *ifa_dstaddr; /* 点对点使用,对方的地址,如果是PPP,我们可查出局方的IP *
#define ifa_broadaddr ifa_dstaddr /* 广播地址 *
struct sockaddr *ifa_netmask; /* 用于子网,和上面的点对点互斥 *
struct if_data if_data; /* not all members are meaningful *
struct ifnet *ifa_ifp; /* 指向本块网卡的ifnet结构的回指针 *
TAILQ_ENTRY(ifaddr) ifa_link;/* 这是一个队列宏,意思是把该卡的所有ifaddr用next指针的方法链接起来 *
void (*ifa_rtrequest) /* 以下三个是路由相关的,我可不是路由专家,所以没有去分析
__P((int, struct rtentry *, struct sockaddr *));
u_short ifa_flags;
u_int ifa_refcnt; /* 统计被引用的次数 *
int ifa_metric; /* 一般都是1,具体干吗的,STEVEN也没说清楚(估计他觉得好烦,不想说:),我觉得好象是跳数)
#ifdef notdef
struct rtentry *ifa_rt; /* XXXX for ROUTETOIF ????? *你看原文,他都不知道,我可能吗.
#endif
int (*ifa_claim_addr) /* 是路由方面的,我也学STEVEN,其实我不知道*
__P((struct ifaddr *, struct sockaddr *));

};
----------------------------------------------------------------------------------------------
#define ia_ifp ia_ifa.ifa_ifp
#define ia_flags ia_ifa.ifa_flags /* 为了方便了 *
下面以:192.168.1.3为例子
u_long ia_net; /* 网络号:该例子是192.168.0.0 *
u_long ia_netmask; /* 网络掩码为:255.255.0.0*
u_long ia_subnet; /* 子网号是192.168.1.0 *
u_long ia_subnetmask; /* 子网掩码是255.255.255.0 *
struct in_addr ia_netbroadcast; /* 网络广播地址 in_addr结构只有一个成员u_long s_addr *
TAILQ_ENTRY(in_ifaddr) ia_link; /* 该卡的下一Internet的in_ifaddr结构指针 *
论坛热门帖子: [lch203] 写得蛮好的linux学习笔记(10-21)
[黑马制造] 学习java的30个目标(10-19)
[笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19)
[udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18)
[沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18)
TAG标签: 及其 漏洞 分析 详解 协议 地址 解析 ARP IP if ea- 路由

最新评论 共有0位网友发表了评论

发表评论

评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名:(注册)
密码:
验证码:
匿名发表

网站地图友情连接交流论坛网站投稿广告服务联系我们留言本站长统计
Some rights reserved: www.chmhome.com, 鄂ICP备07010232号 E-mail:chinakafei@live.com,QQ:552766
中国咖啡技术网(Chmhome):国外编程技术书籍,中文编程手册,经典编程文章,交流技术,技术软件下载,计算机论文,毕业论文.