网络安全参考 | UNIX参考 | GPS参考 | 无线参考 | 在线手册 | OSBUG.ORG | SUNNY-NETWORK.COM
网站地图 RSS订阅
高级搜索 收藏本站
Home | 业界动态 | 防火墙 | IDS/IPS | VPN | PKI | Honeypot | Hacker/Intruder | 黑客技术 | 破解技术 | 加密技术 | 病毒防护 | 木马 | 反垃圾邮件 | 反流氓软件 | 漏洞 | 无线安全 | UNIX | Windows | 安全编程 | 安全软件 | TPM/TCG | 数据恢复 | 企业信息安全 | 个人信息安全
 当前位置: Home > 安全编程 > 网络编程 > 文章  
原始套接字透析之Raw Socket基础
文章来源: 天极开发 文章作者: 宋宝华 发布时间: 2006-11-12   字体: [ ]
 

   创建Socket也可以使用socket()函数:

SOCKET WSAAPI socket( int af, int type, int protocol);

  参数的定义与WSASocket()函数相同。

  为了使用socket()函数创建的Socket,还需要将这个Socket与sockaddr绑定:

SOCKADDR_IN addr_in;

addr_in.sin_family = AF_INET;
addr_in.sin_port = INADDR_ANY;
addr_in.sin_addr.S_un.S_addr = GetLocalIP();

nRetCode = bind(sd, (struct sockaddr*) &addr_in, sizeof(addr_in));
if (SOCKET_ERROR == nRetCode)
{
 printf("BIND Error!%d\n", WSAGetLastError());
}

  其中使用的struct sockaddr_in(即SOCKADDR_IN)为:

struct sockaddr_in
{
 unsigned short sin_family;
 unsigned short int sin_port;
 struct in_addr sin_addr;
 unsigned char sin_zero[8];
}

  而bind()函数第二个参数的struct sockaddr类型定义为:

struct sockaddr
{
 unisgned short as_family;
 char sa_data[14];
};

  实际上,bind()函数采用struct sockaddr是为了考虑兼容性,最终struct sockaddr和struct sockaddr_in的内存占用是等同的。struct sockaddr_in中的struct in_addr成员占用4个字节,为32位的IP地址,定义为:

typedef struct in_addr
{
 union
 {
  struct
  {
   u_char s_b1, s_b2, s_b3, s_b4;
  } S_un_b;
  struct
  {
   u_short s_w1, s_w2;
  } S_un_w;
  u_long S_addr;
 }
 S_un;
} IN_ADDR, *PIN_ADDR, FAR *LPIN_ADDR;

 
推荐文章
·洪水攻击原理及代码实现全攻略(
·原始套接字透析之综合实例:网络
·原始套接字透析之实现IP地址欺骗
·原始套接字透析之ARP欺骗
·原始套接字透析之实现包分析
·原始套接字透析之实现sniffer
·原始套接字透析之实现路由欺骗
·原始套接字透析之ICMP拒绝服务攻
·原始套接字透析之实现Ping
·黑客之旅 -- 原始套接字透析之前
 

 
共6页: 上一页 [1] 2 [3] [4] [5] [6] 下一页
↑返回顶部   打印本页   关闭窗口↓  

Google
 
Web oldhand.org unixreference.net meshmea.org
热点文章
·原始套接字透析之ARP欺
·洪水攻击原理及代码实现
·原始套接字透析之综合实
·原始套接字透析之实现Pi
·黑客之旅 -- 原始套接字
·原始套接字透析之实现路
·原始套接字透析之实现包
·原始套接字透析之ICMP拒
相关分类
相关文章
·原始套接字透析之实现Pi
·黑客之旅 -- 原始套接字
·原始套接字透析之ICMP拒
·原始套接字透析之实现路
·原始套接字透析之实现sn
·原始套接字透析之实现包
·原始套接字透析之ARP欺
·原始套接字透析之实现IP
更多...
 
 

Copyright(c) 2001-2008 OLDHAND ORGANIZATION, All Rights reserved.
Power by DedeCms 织梦内容管理系统
$Id: article_article.html,v 1.3 2007/02/10 12:00:37 yjs Exp $