linux 高级网络编程进阶之rawsocket

本文介绍了Linux中rawsocket的用途和重要性,包括如何使用rawsocket抓取和分析IP包,以及需要管理员权限才能使用。通过示例代码展示了如何分析以太网帧结构和IP报文头,为自定义IP包和网络编程打下基础。后续将探讨如何利用rawsocket伪造IP和编写DoS攻击程序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在linux套接字编程中,常见的套接字类型有SOCK_STREAM, SOCK_DGRAM  . 

int socket(int domain, int type, int protocal), 其中 type 字段的 选项可以是:

    SOCK_STREAM

    SOCK_DGRAM

    SOCK_SEQPACKET

    SOCK_RAW

          Provides raw network protocal access.

    SOCK_RDM

    SOCK_PACKET

原始套接字rawsocket 因其能获得最底层的IP包,因而有其特殊的作用。其用处,例如:

1. 怎样发送一个自定义的IP包 ?

2. 怎样发送一个ICMP协议包 ?

3. 怎样分析所有经过网络的包 ,而不管这包是否是发给自己的?

4. 怎样伪装本地IP地址 ?

以上所有这些,原始套接字(SOCK_RAW), 都可以帮你实现! !

(tips: 原始套接字广泛应用于高级网络编程,也是一种广泛的黑客手段,著

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值