NAME

Net::Write::Layer3 - object for a network layer (layer 3) descriptor

SYNOPSIS

use Net::Write::Layer qw(:constants);
use Net::Write::Layer3;

my $desc = Net::Write::Layer3->new(
   dst      => '192.168.0.1',
   protocol => NW_IPPROTO_RAW,
   family   => NW_AF_INET,
);

$desc->open;
$desc->send('G'x666);
$desc->close;

DESCRIPTION

This is the class for creating a layer 3 descriptor.

ATTRIBUTES

dst

The target IPv4 or IPv6 address we will send frames to.

family

Address family, see Net::Write::Layer CONSTANTS section.

protocol

Transport layer protocol to use, see Net::Write::Layer CONSTANTS section.

METHODS

new

Object constructor. You MUST pass a valid dst attribute. Default values:

protocol: NW_IPPROTO_RAW

family: NW_AF_INET

Returns undef on error.

open

Open the interface. Returns undef on error.

send (scalar)

Send raw data to the network.

close

Close the descriptor.

CAVEATS

Sending IPv6 frames does not work under BSD systems. They can't do IP_HDRINCL for IPv6. For now, only Linux supports this (at least, with a 2.6.x kernel).

Does not work at all under Win32 systems. They can't send frames at layer 3 (or I don't know how to do that).

SEE ALSO

Net::Write::Layer

AUTHOR

Patrice <GomoR> Auffret

COPYRIGHT AND LICENSE

Copyright (c) 2006-2012, Patrice <GomoR> Auffret

You may distribute this module under the terms of the Artistic license. See LICENSE.Artistic file in the source distribution archive.