- 博客(14)
- 收藏
- 关注
原创 Linux下的packet socket使用总结
上节讲到的RAW socket虽然已经能处理IP层的数据了,但是在实际的应用中可能需要获取更加底层的报文信息。这就需要用到另一种更加强大的socket创建方式——packet socket,创建之后直接可以操作包括以太层在内的报文数据。packet socket的创建方式如下:socket(AF_PACKET, int socket_type, int protocol);其中socket_type
2015-03-11 21:03:45 3873
原创 汇编指令对照表
指令后缀 后缀 大小(字节) C语言对应 b 1 char w 2 short l 4 (unsigned) int / long / char* s 4 float寻址指令 名称 汇编样例 含义 立即数寻址 $ 1 1 寄存器寻址 %eax eax 绝对寻址 0x104 *0x104 间接
2015-03-11 20:52:53 2238
原创 Linux netlink socket使用总结
一、netlink机制的引入Linux提供了多种机制来完成内核空间与用户空间之间的数据交换,分别有内核启动参数、模块参数、sysfs、sysctl、系统调用、procfs、seq_file、debugfs、relayfs。其中,模块参数、sysfs、sysctl、procfs、seq_file、debugfs、relayfs是基于文件系统的通信机制,用于内核空间向用户空间输出信息;sysctl、系统
2015-03-11 20:47:31 13018 3
原创 Linux获取所有网口及其详细信息
获取方法:调用getifaddrs接口来获取,调用freeifaddrs接口来释放内存需包含:#include #include 参考代码:#include #include #include #include #include #include int main(int argc, char* argv[]){ struct ifaddr
2014-12-18 20:35:16 2303
原创 Linux 获取所有网口及其索引
获取方法:调用if_nameindex()接口,调用if_freenameindex接口来释放已内存代码:#include #include #include int main(){ struct if_nameindex *if_lst = if_nameindex(); struct if_nameindex *if_node = if_lst
2014-12-18 20:32:38 1173
原创 常用正则表达式收集
1. 检查IP地址合法性((?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d))))
2014-11-17 10:17:14 357
原创 Linux修改用户默认目录的方法
修改/etc/passwd 文件,将对应用户的路径改为你想要的。如,要修改root用户的默认目录为/opt,etc/passwd目录下文件内容如下:root:x:0:0:root:/root:/bin/bashnobody:x:65534:65533:nobody:/var/lib/nobody:/bin/falseman:x:13:62:Manual pages viewer:/
2014-11-03 15:14:33 1480
原创 Linux通过socket获取网口相关信息
一、通过网口名称获取网口索引主要用于调用sendmsg等接口发送报文时填充网口索引#include #include #include #include #include #include int get_dev_index_by_dev_name(int sock_fd, char *dev){ int ret = -1; struct
2014-10-21 20:46:35 1175
原创 Linux下Eclipse使用NDK开发Android应用
Google提供的Android SDK 已经能够满足绝大多数场景下的Android
2014-10-12 11:38:46 1327
原创 Linux Raw Socket使用总结
学过socket基础编程的同学都知道,应用层socket(如使用SOCK_STREAM创建的TCP socket,SOCK_DGRAM创建的UDP socket)都只能收发应用层的数据,出于业务应用的需要,可能需要获取IP层甚至是以太层的数据,这就需要用到socket接口中另一种更加强大的类型RAW socket。使用SOCK_RAW创建的RAW socket,可以收发包含IP层的报文
2014-10-10 18:58:24 3096
原创 Linux常见协议类型结构体定义
IP头:struct iphdr {#if defined(__LITTLE_ENDIAN_BITFIELD) __u8 ihl:4, version:4;#elif defined (__BIG_ENDIAN_BITFIELD) __u8 version:4, ihl:4;#else#error "Please fix "#endif __u8 tos; __b
2014-10-08 10:28:11 3095 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人