UDP-Datagram abschicken

Von: , Frage gestellt am Sa, 7. Jan 2006

Hallo,

ich möchte mit ein UDP-Datagram abschicken.

Ich habe das Modul Net::UDP gefunden, aber ich kriegs nicht wirklich hin, will sagen, er schickt nix raus.

Hat das schonmal jemand gemacht, und könnte mir nen kurzen Codeschnipsel posten?

Danke

Klaus

2 Antworten zu dieser Frage

  1. Antwort von nach einem Tag 0 hilfreich
    Re: UDP-Datagram abschicken

    Hallo, ich möchte mit ein UDP-Datagram abschicken.
    Worum genau geht es dir denn? Ich habe das Modul Net::UDP gefunden, aber ich kriegs nicht
    wirklich hin, will sagen, er schickt nix raus.
    Was hast du denn genau getan? Hat das schonmal jemand gemacht, und könnte mir nen kurzen
    Codeschnipsel posten?
    Ich habs nie probiert, aber schau dir mal das Beispiel unter http://search.cpan.org/~gomor/Net-Packet-2.04/Packet... an. Unter Linux/Unix kann dir auch das Programm 'nc' (netcat) helfen. Zu codieren/decodieren kannst du
    http://search.cpan.org/~atrak/NetPacket-0.04/NetPack...
    verwenden.

    Grüße,
    Moritz

    • Antwort von nach 2 Tagen 0 hilfreich
      Re^2: UDP-Datagram abschicken

      Ich habs nie probiert, aber schau dir mal das Beispiel unter
      http://search.cpan.org/~gomor/Net-Packet-2.04/Packet...
      an. Unter Linux/Unix kann dir auch das Programm 'nc' (netcat)
      helfen. Zu codieren/decodieren kannst du
      http://search.cpan.org/~atrak/NetPacket-0.04/NetPack...
      verwenden.
      Danke,

      das habe ich ja probiert, aber es tat sich nix. Hab aber jetzt ne Lösung über Socket gefunden, damit gehts.

      #!/usr/bin/perl -w
      use strict;
      use Socket;
      my ($host,$msg);
      $host=$ARGV[0];
      $msg=$ARGV[1];
      chomp($msg);
      &sendcmd($host ,$msg);
      ### Subs ###
      sub sendcmd()
      {
      my ($iaddr,$sin, $line);
      $iaddr = gethostbyname($_[0]);
      $line = $_[1];
      socket (SOCK, PF_INET,SOCK_DGRAM,17) || die "socket: $!\n";
      $sin = sockaddr_in(4711, $iaddr);
      send (SOCK, $line, 0, $sin );
      }
      


      Klaus

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!