[root@TD18 tmp]#gcc -o  .c -lnet
[root@TD18 tmp]#./
please enter Host address
11.11.11.11
please enter local address:
22.22.22.22
wrote byte TCP packet
[root@TD18 tmp]#cat .c
#include<stdio.h>
#include<string.h>
#include<pcap.h>
#include<libnet.h> main(void)
{ int c ;
u_char *cp;
libnet_t *l;
libnet_ptag_t t;
char *payload;
u_char HostAddr[],MyAddr[];
u_short payload_s;
u_long src_ip,dst_ip;
u_short src_prt,dst_prt; char errbuf[LIBNET_ERRBUF_SIZE];
printf("please enter Host address\n");
scanf("%s",HostAddr);
printf("please enter local address:\n");
scanf("%s",MyAddr);
l=libnet_init( LIBNET_LINK,NULL,errbuf);
if(l==NULL)
{
printf("libnet failed: %s",errbuf);
exit(EXIT_FAILURE);
}
dst_ip=inet_addr(HostAddr);
src_ip=inet_addr(MyAddr);
dst_prt=;
src_prt=; payload="adafhafhasfjashfasjfasjkfhsadjkfajskfjasdhfjaksfjkaf";
payload_s=strlen(payload);
t=libnet_build_tcp_options("\003\003\012\001\002\004\001\011\010\012\077\077\077\077\000\000\000\000\000\000",,l,);
if(t==-)
{printf("cant build TCP options: %s\n",libnet_geterror(l));
goto bad;} t=libnet_build_tcp(src_prt,dst_prt,0x01010101,0x02020202,TH_SYN,,,,
LIBNET_TCP_H++payload_s,payload,payload_s,l, );
if(t==-)
{
printf("cant build TCP header:%s\n",libnet_geterror(l));
goto bad;
} t=libnet_build_ipv4(LIBNET_IPV4_H+LIBNET_TCP_H++payload_s,,,,,IPPROTO_TCP,,src_ip,dst_ip,NULL,,l,); if(t==-)
{
printf("cant build IP header:%s\n",libnet_geterror(l));
goto bad;
}
t=libnet_build_ethernet("00:0B:6A:63:5E:11","00:0B:6A:63:5E:22",ETHERTYPE_IP,NULL,,l,); if(t==-)
{printf("cant buid ethernet header:%s\n",libnet_geterror(l));
goto bad;
}
c=libnet_write(l);
if(c==-)
{printf("write error:%s\n",libnet_geterror(l));
goto bad;
}
else { printf("wrote %d byte TCP packet\n",c);
}
libnet_destroy(l);
return(EXIT_SUCCESS);
bad:
libnet_destroy(l);
return(EXIT_FAILURE); }

libnet TCP示例的更多相关文章

  1. GO语言练习:网络编程 TCP 示例

    1.代码 2.编译及运行 1.网络编程 TCP 示例 simplehttp.go 代码 package main import ( "net" "os" &qu ...

  2. python中的tcp示例详解

    python中的tcp示例详解  目录 TCP简介 TCP介绍 TCP特点 TCP与UDP的不同点 udp通信模型 tcp客户端 tcp服务器 tcp注意点   TCP简介   TCP介绍 TCP协议 ...

  3. java Socket Tcp示例三则(服务端处理数据、上传文件)

    示例一: package cn.itcast.net.p5.tcptest; import java.io.BufferedReader;import java.io.IOException;impo ...

  4. Modbus TCP 示例报文

    调试modbus  tcp 整理百度文库文档如下 <modbus-tcp-报文举例分析> <MODBUSTCP通讯报文> Client request: 19 B2 00 00 ...

  5. 压力测试工具 Apache_jmeter软件配置+TCP示例说明

    该软件jmeter是Apache官方开源压力测试软件.  jmeter官网:http://jmeter.apache.org/  . 本文使用的版本是 3.0版本, 它需要jdk7及以上版本支持. 网 ...

  6. boost asio 学习(七) 网络基础 连接器和接收器(TCP示例)

    http://www.gamedev.net/blog/950/entry-2249317-a-guide-to-getting- started-with-boostasio?pg=8 7. Net ...

  7. Linux socket编程示例(最简单的TCP和UDP两个例子)

    一.socket编程 网络功能是Uinux/Linux的一个重要特点,有着悠久的历史,因此有一个非常固定的编程套路. 基于TCP的网络编程: 基于连接, 在交互过程中, 服务器和客户端要保持连接, 不 ...

  8. python前后台tcp/udp通讯示例

    以下代码兼容python2.7+.python3 TCP示例 服务器 -- sever_tcp.py #!/usr/bin/env python #coding=utf-8 import time i ...

  9. Linux网络编程:基于TCP的程序开发回顾篇《转》

    面向连接的TCP程序设计 基于TCP的程序开发分为服务器端和客户端两部分,常见的核心步骤和流程: 其实按照上面这个流程调用系统API确实可以完全实现应用层程序的开发,一点问题没有.可随着时间的推移,你 ...

随机推荐

  1. Manacher(hdu3068最长回文)

    浅谈manacher算法 manacher算法是我在网上无意中找到的,主要是用来求某个字符串的最长回文子串. 不过网上的版本还不太成熟,我就修改了下. 不要被manacher这个名字吓倒了,其实man ...

  2. Java无模板导出Excel,Apache-POI插件实现

    开发环境 jdk 1.8 Maven 3.6 Tomcat 8.5 SpringBoot 2.1.4.RELEASE Apache-POI 3.6 Idea 注意: 我是在现有的基于SpringBoo ...

  3. 一个小时学会 MySQL 数据库

    随着移动互联网的结束与人工智能的到来大数据变成越来越重要,下一个成功者应该是拥有海量数据的,数据与数据库你应该知道. 一.数据库概要 数据库(Database)是存储与管理数据的软件系统,就像一个存入 ...

  4. 详解环境搭建SSM

    1.概述: SSM即为spring 4 +spring mvc +mybatis 3.4.6 推荐使用maven或者gradle 来配置 下面给出maven配置方式 2.项目结构: 新建web项目 这 ...

  5. window.addeventlistener使用方法

    http://www.jb51.net/article/49858.htm .................................................... (要注意的是div ...

  6. ABP框架和NET CORE实战

    http://www.fishpro.com.cn/2017/09/ ABP实战系列 ABP实战 ABP-第一个Asp.net core 示例(7)AutoMapper的使用 我们为什么需要使用DDD ...

  7. java lombok包在maven已经配置,但是注解没用

    如果你是用eclipse作为开发环境,配置了maven依赖以后,还需要在eclipse/myeclipse中手动安装lombok. 其实就是加一个jar包,添加2行代码 1. 将 lombok.jar ...

  8. springcloud-Netflix创建服务消费者

    目录 springcloud-Netflix创建服务消费者 Ribbon 创建服务消费者-Ribbon方式 ribbon的架构 Feign 创建包和基本项目结构 创建Feign访问服务的接口和访问co ...

  9. Java连接数据库,增删改查

    底层代码: package com.zdsoft; import java.sql.*; /** * Created by lx on 2017/6/22. */ public class JDBCU ...

  10. ArcSDE 10.1 For Windows 创建空间数据库与常见错误_SQL Server

    本文是2013年时候参加ESRI竞赛,创建ArcSDE 10.1 for SQL Server时候出问题了,因此写了该文档. 由于一直忙于学习,忘了发布.今天一师弟也遇到同样问题,为此我觉得可能有不少 ...