精华内容
下载资源
问答
  • 枫癫:您好!我用的是5.7版本,按照您的配置,错误...|@|[root@controller wy]# snmpwalk -v 1 -c public 192.168.1.100 .1.3.6.1.4.1.2021.5000|@|UCD-SNMP-MIB::ucdavis.5000.1.0 = INTEGER: 1|@|UCD-SNMP-MIB::...

    枫癫:您好!我用的是5.7版本,按照您的配置,错误如下 麻烦看到了,还请回复,比较着急,谢谢您了!|@|[root@controller wy]# snmpwalk -v 1 -c public 192.168.1.100 .1.3.6.1.4.1.2021.5000|@|UCD-SNMP-MIB::ucdavis.5000.1.0 = INTEGER: 1|@|UCD-SNMP-MIB::ucdavis.5000.2.1.2.5.99.104.101.99.107 = STRING: "/home/wy/check.sh"|@|UCD-SNMP-MIB::ucdavis.5000.2.1.3.5.99.104.101.99.107 = ""|@|UCD-SNMP-MIB::ucdavis.5000.2.1.4.5.99.104.101.99.107 = ""|@|UCD-SNMP-MIB::ucdavis.5000.2.1.5.5.99.104.101.99.107 = INTEGER: 5|@|UCD-SNMP-MIB::ucdavis.5000.2.1.6.5.99.104.101.99.107 = INTEGER: 1|@|UCD-SNMP-MIB::ucdavis.5000.2.1.7.5.99.104.101.99.107 = INTEGER: 1|@|UCD-SNMP-MIB::ucdavis.5000.2.1.20.5.99.104.101.99.107 = INTEGER: 4|@|UCD-SNMP-MIB::ucdavis.5000.2.1.21.5.99.104.101.99.107 = INTEGER: 1|@|UCD-SNMP-MIB::ucdavis.5000.3.1.1.5.99.104.101.99.107 = STRING: "/home/wy/check.sh: Exec format error"|@|UCD-SNMP-MIB::ucdavis.5000.3.1.2.5.99.104.101.99.107 = STRING: "/home/wy/check.sh: Exec format error"|@|UCD-SNMP-MIB::ucdavis.5000.3.1.3.5.99.104.101.99.107 = INTEGER: 1|@|UCD-SNMP-MIB::ucdavis.5000.3.1.4.5.99.104.101.99.107 = INTEGER: 1|@|UCD-SNMP-MIB::ucdavis.5000.4.1.2.5.99.104.101.99.107.1 = STRING: "/home/wy/check.sh: Exec format error"|@|

    展开全文
  • linux下的UDP发包

    热门讨论 2011-01-07 16:46:40
    可以利用原始套接字来完成发送自己填写的UDP数据包。整个程序由初始化原始套接口和发送UDP数据包两部分组成。UDP传输实体将用户数据加上UDP报头,形成UDP数据包,在UDP数据包上增加IP头部,形成IP数据包。 为了能够...
  • #ifndef XGT_DEBUG #define XGT_DEBUG #include class XgtDebug { public: XgtDebug(const char *); ~XgtDebug(); private: int m_clientSock; struct sockaddr_in m_server; public: void
    #ifndef XGT_DEBUG
    #define XGT_DEBUG
    
    #include  <netinet/in.h>
    
    class XgtDebug
    {
    public:
        XgtDebug(const char *);
    	~XgtDebug();
    
    private:
         int m_clientSock;
         struct sockaddr_in m_server;
    
    public:
        void sendMessage(char* str);
    };
    
    #endif
    
    
    #include "xgt_debug.h"
    #include <string.h>
    #include <arpa/inet.h>
    #include <unistd.h>
    
    
    XgtDebug::XgtDebug(const char *ip)
    {
       m_clientSock= socket(AF_INET, SOCK_DGRAM, 0);
    
      memset(&m_server,'\0',sizeof(m_server));
      m_server.sin_family = AF_INET;
      m_server.sin_port = htons(10000);
      m_server.sin_addr.s_addr = inet_addr(ip);
    }
    
    XgtDebug::~XgtDebug()
    {
        close(m_clientSock);
    }
    
    void XgtDebug::sendMessage(char* str)
    {
      int len;
      socklen_t server_len;
      len = strlen(str); 
      server_len = sizeof(m_server);
      sendto(m_clientSock, str, len, 0, (struct sockaddr *)&m_server, server_len);	
    }
    


    展开全文
  • linux下的tcp和udp发包简单发包程序

    热门讨论 2014-05-07 11:06:43
    以前发过,不过搞忘发头文件了,所以重新发下,把udp的也发上来了。
  • java中模拟UDP发包

    2021-05-06 16:18:06
    原始数据是从Linux服务器上特定端口抓取的采集卡发送给服务器的UDP包,在Linux上以pcap文件进行存储,我们使用java模拟采集卡发包的方式把这些文件里的数据等于是再发送一遍。 看代码: 先导包: <dependency>...

    原始数据是从Linux服务器上特定端口抓取的采集卡发送给服务器的UDP包,在Linux上以pcap文件进行存储,我们使用java模拟采集卡发包的方式把这些文件里的数据等于是再发送一遍。
    看代码:
    先导包:

    <dependency>
      <groupId>io.pkts</groupId>
      <artifactId>pkts-core</artifactId>
      <version>3.0.7</version>
    </dependency>
    
    public static void main(String[] args) throws IOException, InterruptedException {
        	String path = "D:\\360MoveData\\Users\\Administrator\\Desktop\\abis";
        	String hostName = "127.0.0.1";
        	int port = 40000;
            File files = new File(path);
            File[] fs = files.listFiles();
                for (File f : fs) {
                    System.out.println("pcap文件" + f + "发往" + hostName + ":" + port);
                    Thread.sleep(1000);
                    System.out.println("开始发送UDP");
                    PcapParser.parser(f, hostName, port);
                }
                System.out.println("----------------------发送完毕-----------------------");
        }
    
    public class PcapParser {
        private static Logger logger = LoggerFactory.getLogger(PcapParser.class);
    
        public static void parser(File file, final String hostName, final int port) throws IOException {
            final Pcap pcap = Pcap.openStream(file);
    
            pcap.loop(new PacketHandler() {
                @Override
                public boolean nextPacket(final Packet packet) throws IOException {
                    if (packet.hasProtocol(Protocol.IPv4)) {
                        IPPacket ipv4 = (IPPacket) packet.getPacket(Protocol.IPv4);
                        if (ipv4.hasProtocol(Protocol.UDP)) {
                            TransportPacket udpPacket = (TransportPacket) ipv4.getPacket((Protocol.UDP));
                                if (udpPacket.getPayload() != null) {
                                    try {
                                        Thread.sleep(10);
                                    } catch (InterruptedException e) {
                                        e.printStackTrace();
                                    }
                                    UdpSend.send(hostName, port, udpPacket.getPayload().getArray());
                                }
                        }
                    }
    
                    return true;
                }
            });
        }
    
        public static String bytesToHexString(byte[] src) {
            StringBuilder stringBuilder = new StringBuilder("");
            if (src == null || src.length <= 0) {
                return null;
            }
            for (int i = 0; i < src.length; i++) {
                int v = src[i] & 0xFF;
                String hv = Integer.toHexString(v);
                if (hv.length() < 2) {
                    stringBuilder.append(0);
                }
                stringBuilder.append(hv);
                stringBuilder.append(" ");
            }
            return stringBuilder.toString();
        }
    }
    
    public class UdpSend {
        private static Logger logger = LoggerFactory.getLogger(UdpSend.class);
    
        public static void send(String hostName, int port, byte[] data) throws IOException {
            UdpSend.logger.info(Arrays.toString(data));
            /*
             * 实现UDP协议的发送端:
             *     实现封装数据的类 java.net.DatagramPacket 将你的数据包装
             *     实现数据传输类    java.net.DatagramSocket 将数据包发出去
             *
             *    实现步骤:
             *        1.创建DatagramPacket对象,封装数据,接收的地址和端口
             *        2.创建DatagramSocket对象,
             *        3.调用DatagramSocket类的方法send,发送数据包
             *        4.关闭资源
             *
             *    DatagramPacket构造方法:
             *        DatagramPacket(byte[] buf,int length,InetAddress address,int port)
             *
             *    DatagramSocket构造方法:
             *        DatagramSocket()空参数
             *        方法:send(DatagramPacket d)
             *
             *
             */
    
            //创建数据包对象,封装要发送的数据,接受端IP,端口
            //创建InetAddress对象,封装自己的IP地址
            InetSocketAddress net = new InetSocketAddress(hostName, port);
            DatagramPacket packet = new DatagramPacket(data, data.length, net);
            //创建DatagramSocket对象,数据包的发送和接受对象
            DatagramSocket socket = new DatagramSocket();
            //调用ds对象的方法send,发送数据包
            socket.send(packet);
            socket.close();
        }
    }
    
    展开全文
  • Sendip是一个linux平台的命令行发数据包工具,目前(2018年2月)支持的协议有ipv4、ipv6、icmp、tcp、udp、bgp、rip、ntp,作者表示其他协议将会后面支持,当他有空写的时候。Sendip很强大,它支持自定义头部和数据(也...

    Sendip是一个linux平台的命令行发数据包工具,目前(2018年2月)支持的协议有ipv4、ipv6、icmp、tcp、udp、bgp、rip、ntp,作者表示其他协议将会后面支持,当他有空写的时候。Sendip很强大,它支持自定义头部和数据(也就是IP层以上的整个包),没有过多的限制,所以连源IP都可以随意写,而且里面也提供了一些默认的选项,可以择需而发,非常方便。又因为它是命令行的,还支持从文件中直接读取整个packet发送,所以适合用脚本批量测试。它只是个发包工具,对于发出去的包,收到了什么样的回复,Sendip是不知道的,所以要得到回复的包就只能用抓包工具了。它的源码也很简单,没有过多平台相关的代码,如果不理解也可以看源码。

    其实这个工具已经满足了我的要求,之前下载的PackETH是GUI版的,连数据链路层(link layer)都支持,也要求必须提供这一层的相关信息才能发包,这一层一般不太关心,它又不提供自动封装,总的来说不太适合用。

    Sendip简单使用

    通用选项:

    -d 要携带的数据。rN随机产生N个字节,0x之后带十六进制,0之后带8进制。

    -f 从文件中读取要携带的数据。

    -p 加载协议模块,只有加载了才能使用。

    -v 打印整个发出的包。

    ipv4模块:

    -iv x 版本 Default: 4

    -ih x 首部长度 Default: Correct

    -iy x 区分服务 Default: 0

    -il x 总长度 Default: Correct

    ----------------------------------------------32bit

    -ii x 标识 Default: Random

    -ifr x 标志 Default: 0 (options are 0,1,r)

    -if x 片偏移 Default: 0

    ----------------------------------------------32bit

    -it x 生存时间 Default: 255

    -ip x 协议 Default: 0, or set by underlying protocol

    -ic x 首部检验和 Default: Correct

    ----------------------------------------------32bit

    -is x 源地址 Default: 127.0.0.1

    ----------------------------------------------32bit

    -id x 目的地址 Default: Correct

    ----------------------------------------------32bit

    下面全是可选字段(比较少用,不译):

    -ifd x IP don't fragment flag (see README)

    Default: 0 (options are 0,1,r)

    -ifm x IP more fragments flag (see README)

    Default: 0 (options are 0,1,r)

    -ionum x

    IP option as string of hex bytes (length is always correct)

    Default: (no options)

    -ioeol IP option: end of list

    -ionop IP option: no-op

    -iorr x

    IP option: record route. Format: pointer:addr1:addr2:...

    -iots x

    IP option: timestamp. Format: pointer:overflow:flag:(ip1:)ts1:(ip2:)ts2:...

    -iolsr x

    IP option: loose source route. Format: pointer:addr1:addr2:...

    -iosid x

    IP option: stream identifier

    -iossr x

    IP option: strict source route. Format: pointer:addr1:addr2:...

    tcp模块:

    -ts x 源端口 Default: 0

    -td x 目的端口 Default: 0

    ----------------------------------------------32bit

    -tn x 序号 Default: Random

    ----------------------------------------------32bit

    -ta x 确认号 Default: 0

    ----------------------------------------------32bit

    -tt x 数据偏移 Default: Correct

    -tr x 保留(ECN、CWR看rfc2481) Default: 0

    -tfu x URG Default: 0, or 1 if -tu specified (options are 0,1,r)

    -tfa x ACK Default: 0, or 1 if -ta specified (options are 0,1,r)

    -tfp x PSH Default: 0 (options are 0,1,r)

    -tfr x RST Default: 0 (options are 0,1,r)

    -tfs x SYN Default: 1 (options are 0,1,r)

    -tff x FIN Default: 0 (options are 0,1,r)

    -tw x 窗口 Default: 65535

    ----------------------------------------------32bit

    -tc x 检验和 Default: Correct

    -tu x 紧急指针 Default: 0

    ----------------------------------------------32bit

    下面全是可选字段(比较少用,不译):

    -tonum x TCP option as string of hex bytes (length is always correct)

    Default: (no options)

    -toeol TCP option: end of list

    -tonop TCP option: no op

    -tomss x

    TCP option: maximum segment size

    -towscale x

    TCP option: window scale (rfc1323)

    -tosackok

    TCP option: allow selective ack (rfc2018)

    -tosack x

    TCP option: selective ack (rfc2018), format is l_edge1:r_edge1,l_edge2:r_edge2...

    -tots x

    TCP option: timestamp (rfc1323), format is tsval:tsecr

    udp模块:

    -us x 源端口 Default: 0

    -ud x 目的端口 Default: 0

    -ul x 长度 Default: Correct

    -uc x 检验和 Default: Correct

    要注意,按照从左到右的顺序依次封装报文,所以ip报文必须写在其他报文之前。如果协议中需要检验和之类的就按默认的就行了,省去计算的痛苦。下面有几个例子:

    sendip -v -p ipv4 -id 14.215.177.39 -p udp -f test www.baidu.com

    sendip -p ipv4 -is 192.168.1.2 -id 192.168.1.1 -p icmp -d 0x89ABCDEF www.google.com

    其中主要的结构是sendip 网络层 上一层 数据 domain,domain是目的主机,可以是www.baidu.com或192.168.1.1之类的。如果出现什么错误就会打印出帮助信息,里面有一行是提示错误原因,别漏看了。至于能不能发不规则的包(如数据与报文长度不符合、校验和乱写之类的),实际会不会发出去就没进行测试了。

    展开全文
  • 现在肉鸡上面linux越来越多,都默认安装了python,有时候没有工具的时候可以自己写一个:下面是支持 tcp和udp的python的发包代码:import socket,sys,threadingif len(sys.argv)!=4:print('使用方法:\n'+sys.argv[0],...
  • 现在肉鸡上面linux越来越多,都默认安装了python,有时候没有工具的时候可以自己写一个:下面是支持 tcp和udp的python的发包代码:import socket,sys,threadingif len(sys.argv)!=4:print('使用方法:\n'+sys.argv[0],...
  • [使用 异步多线程TCP Socket 实现进程间通信(VC 6.0 , BCB6.0调试通过)进程间通信有很多种方式,比如说 Pipe,共享内存,DDE,Socket等,关于进程通信方面的知识我现在肉鸡上面linux越来越多,都默认安装了python,有时候...
  • python 多线程tcp udp发包 Dos工具。

    千次阅读 2012-04-17 16:31:00
    现在肉鸡上面linux越来越多,都默认安装...下面是支持 tcp和udp的python的发包代码: import socket,sys,threading if len(sys.argv)!=4: print('使用方法:\n'+sys.argv[0],'目标ip','协议[tcp | udp]','线程数')
  • Linux发包工具sendip的使用

    千次阅读 2018-11-14 23:18:35
    在这里介绍一款Linux下的发包工具:sendip,详细使用参见下面两篇博文: Sendip 命令行发包工具,支持IP、TCP、UDP等 sendip 快速入门
  • PacketSenderUDP/TCP网络测试工具是一个开源实用程序,允许发送和接收TCP、UDP和SSL(加密的TCP)数据包,主线分支正式支持Windows、Mac和桌面Linux,其他地方可以重新编译和重新分发分组发送器。相关软件软件大小版本...
  • Linux发包工具pktgen

    千次阅读 2019-04-11 16:58:20
    1.pktgen简介: pktgen是Linux内核里包含的一个高性能发包工具,主要用来测试网络性能。一般情况下,使用pktgen就... pktgen只支持UDP发包(端口9)。因为pktgen是一个非常底层测试工具,而且一般是测试网络设备的...
  • linuxudp 发送数据包程序

    热门讨论 2010-06-25 20:46:02
    linux下的udp 发包函数源码,可以指定发送的IP与端口号,适合socket 编程初学者学习
  • #include struct socket *sock;unsigned char buffer[10]={ 1,2,3,4,5,6,7,8,9,0,};static int ker_send_udp(char* ip_addr, unsigned char * data, size_t len ){int ret;u32 remote_ip = ntohl(in_aton(ip_...
  • linux发包-浅出版

    2019-05-17 09:37:34
    linux发包 linux 简易的发包过程 socket初始化(ip或udp的socket) 应用调用socket函数进行处理,主要是包装数据,绑定源端口,根据socket类型调用对应的ip或udp方法 如果是udp,获网卡信息,构造skb,根据路由表和...
  • 之前有介绍Linux下通过iptables限制UDP发包,这次记录下Windows 2003的实现方法。 新建bat脚本,添加以下内容,然后点击运行。 代码如下::Created by //www.jb51.net:DROP UDP Flood@echo offcls:获取DNS地址for /f...
  • linux网络调试发包抓包工具

    千次阅读 2019-05-06 19:27:00
    目录 1、发包工具 1.1 sendip 1.2 tcpreply 2、抓包工具 2.1、tcpdump ...5.linux网络编程 ...5.2、udp 1、发包工具 1.1 sendip Sendip是一个linux平台的命令行发数据包工具,目前(2018年2月)支持的...
  • linux发包工具SENDIP2.5

    2011-05-19 19:04:00
    SENDIP 是一个LINUX 下的命令行工具,可以通过命令行参数的方式发送各种格式的IP 包,它有大量的命令行参数来规定各种协议的头格式,目前可支持NTP, BGP, RIP, RIPng, TCP, UDP, ICMP 或 raw IPv4 和 IPv6 包格式,...
  • Linuxudp的丢包分析

    2020-06-18 17:17:43
    wireshark分析tcp的丢包比较简单,因为可以分析重发次数,和响应; 分析udp的丢包,需要分析带序号的报文,RTP报文,...发包速度太快,3.udp包流量太大,发送缓冲区又太小。 接收端:接收缓冲区太小 使用 sysctl -a
  • linux 编程 统计UDP报文

    2015-07-04 04:11:48
    监听目的端口为9090的 udp报文,要求如下: 1. 提取出报文源ip信息,并统计出各自的报文数 2. 针对每个源ip,统计各自的大报文数(大小超过1024B) 3. 这些信息条目按ip由小到大进行排列,可通过命令将信息显示出来...
  • 项目采用的是3.10.108的kernel,在测试时使用发包功率高速发送DHCP Request报文,发现busybox中的udhcpd 进程状态为D,抓包看,没有offer包,而且样机ping不通。 分析发现是在kernel中的函数udp_queue_rcv_skb中: ...
  • UDP socket在传输层调用的发送...https://blog.packagecloud.io/eng/2017/02/06/monitoring-tuning-linux-networking-stack-sending-data/#udp_sendmsg http://arthurchiao.art/blog/tuning-stack-tx-zh/#chap_5.1 ...
  • Linux4.1.12源码分析】UDP层csum计算

    千次阅读 2016-11-15 23:09:24
    我们以发包和收包两个方向,分析UDP层的csum计算,发包方向,以vxlan封包流程中的UDP头封装作为例子来进行分析。 udp_set_csum函数(封装UDP头时调用) void udp_set_csum(bool nocheck, struct sk_buff *skb, _...
  • 发端程序:主函数开启4个发包线程,每个线程发送一定量的数据,通过限制发包速率限制发包流量。 收端程序:主函数对应开启4个收包线程,每个线程收取对应端口的数据,收到数据包即时封装处理。 其他说明: 本地...
  • 使用说明本程序具有UDP抓包、分析丢包、发包、组播转发等功能.UDP抓包、发包利用libcap实现(编译libpcap源码,生成静态库,然后链接静态库的方式)支持linux平台##编译>cd ur_dir>make##支持功能从指定的地址...
  • Sendip是一个linux平台的命令行发数据包工具,目前(2018年2月)支持的协议有ipv4、ipv6、icmp、tcp、udp、bgp、rip、ntp,作者表示其他协议将会后面支持,当他有空写的时候。Sendip很强大,它支持自定义头部和数据(也...
  • pktgen是一个位于linux内核层的高性能网络测试工具。主要用来测试网络驱动与网卡设备,支持多线程,能够产生随机mac地址、IP地址、UDP端口号的数据包。pktgen的配置与统计信息查看都使用/proc文件系统完成,/proc...

空空如也

空空如也

1 2 3 4
收藏数 70
精华内容 28
关键字:

linuxudp发包

linux 订阅