
网络编程
nemo2011
博客内容皆为个人学习笔记
展开
-
error: ‘IPPROTO_RAW’ undeclared (first use in this function)
出现此错误的原因是:我没有定义IPPROTO_RAW; 我查了下资料。 int rawsock = socket(AF_INET, SOCK_RAW, protocol); 注意:只有超级用户才有权利创建套接字,否则函数返回-1,并设置errno为EACCES。 protocol参数:是一个常量定义在里面 在看起定义: IPPROTO_RAW =原创 2012-03-14 11:29:27 · 2645 阅读 · 0 评论 -
关于远程唤醒技术的相关资料
首先当然是要设置BIOS啦。设置方法参见:http://service.oray.com/question/1106.html远程唤醒技术的相关资料:win平台:http://read.pudn.com/downloads55/sourcecode/windows/network/191223/sendmagic.cpp__.htmlinux平台:linux平台设置原创 2013-03-25 16:02:53 · 960 阅读 · 0 评论 -
solaris 编译socket程序
今天编译一个socket程序,报错:未定义的符号在文件中。 inet pton ....开始没有注意头文件后来到网上搜寻了一下, 在g++的编译的时候,要加:g++ *.cpp -lnsl -lsocket.执行成功。原创 2012-10-31 16:47:42 · 1107 阅读 · 0 评论 -
IPv6资料
兼容IPv4与IPv6的Winsock网络编程研究:http://www.cctime.com/html/2010-3-29/20103291433464145.htm 如何实现在一个 Socket 应用程序中同时支持 IPv4 和 IPv6:http://www.ibm.com/developerworks/cn/linux/l-cn-ipv4v6-sockapp原创 2012-05-23 19:30:14 · 863 阅读 · 0 评论 -
IP欺骗代码
转于:http://blog.youkuaiyun.com/nuptjinlu/article/details/7252344 第一步,编写IP欺骗代码 [cpp] view plaincopy#include #include #include #include #include #include转载 2012-05-17 15:01:52 · 1407 阅读 · 0 评论 -
套接字使用时候的一些注意
创建套接字int socket(int domain, int type, int protocol);返回sockfd(套接字地址描述符)domain为地址族,一般为:PF_INET internet协议(网络地址协议)PF_UNIX unix internet协议(本地地址协议)PF_NS Xerox NS协议PF_IMPLINK interface Mess转载 2012-03-17 16:52:03 · 885 阅读 · 0 评论 -
struct--iphdr sk_buff->tcphdr -- IP头部
sk_buff->iphdr/usr/src/linux-2.6.19/include/linux/ip.hstruct iphdr {#if defined(__LITTLE_ENDIAN_BITFIELD) __u8 ihl:4, version:4;#elif defined (__BIG_ENDIAN_BITFIELD)转载 2012-03-17 10:56:52 · 2264 阅读 · 0 评论 -
struct ethhdr、ether_header、iphdr、tcphdr、udphdr
************************eth的结构**************************************struct ethhdr {unsigned char h_dest[ETH_ALEN];unsigned char h_source[ETH_ALEN];__be16 h_proto;} __attribute__((packed));转载 2012-03-16 23:03:58 · 1706 阅读 · 0 评论 -
关于in_addr 和inet_ntoa的用法
struct in_addr { in_addr_t s_addr; }; 结构体in_addr 用来表示一个32位的IPv4地址. in_addr_t 一般为 32位的unsigned long. 其中每8位代表一个IP地址位中的一个数值. 例如192.168.3.144记为0xc0a80390,其中 c0 为1原创 2012-03-14 16:02:45 · 19380 阅读 · 0 评论 -
linux 内核进程与用户进程的通信 方法一 使用sockopt与内核交换数据
linux学习 内核提供 copy_from_user()/copy_to_user() 函数来实现内核态与用户态数据的拷贝,但这两个函数会引发阻塞,所以不能用在硬、软中断中。一般将这两个特殊拷贝函数用在类似于系统调用一类的函数中 在下面的代码中,内核模块注册了一组设置套接字选项的函数使得用户空间进程可以调用此组函数对内核态数据进行读写。 下面是有关操作步骤及源代码:转载 2012-03-14 22:47:11 · 1320 阅读 · 0 评论 -
使用sockopt实现内核与用户之间通信
1. Linux下的sockoptLinux提供了多种通信方式来实现内核和用户之间的数据通信,基于 socket的sockopt是最常用也比较简单易用的一种方式。它的本质和ioctl()很相似,只是ioctl()需要创建新的设备文件,而 sockopt只需要创建一个socket套接字便可以使用户与内核进行通信。这里分别从内核和用户两方面来介绍sockopt的使用。2. 内核中使用soc转载 2012-03-14 16:39:00 · 3780 阅读 · 0 评论 -
原始套接字
注:所以文章红色字体代表需要特别注意和有问题还未解决的地方,蓝色字体表示需要注意的地方 1. 本文所介绍的程序平台开发板:arm9-mini2440虚拟机为:Red Hat Enterprise Linux 5开发板上系统内核版本:linux-2.6.32.2 2. 原始套接字概述通常情况下程序设计人员接触的网络知识限于如下两类:(1)流式套接字转载 2012-03-14 11:25:10 · 15046 阅读 · 0 评论 -
centos 安装libpcap
centos 安装libpcap:其实这个很简单的事情,网上下载源码,自己编译也可以。root用户模式下:./configure./make./make install或者直接(如果连了网络的话):yum install libpcap就这样安装好了libpcap。但是我在编译一个测试程序的时候,发现找不到文件。用find到/usr/include 下也找了下,还原创 2013-05-02 20:12:15 · 13705 阅读 · 1 评论